-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathxray.h
40 lines (33 loc) · 1.38 KB
/
xray.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#ifndef _XRAY_
#define _XRAY_
/* Array lengths for lambda tables */
#define nemax 100
#define emin 0.5
#define emax 2.0
#define ntmax 300
#define tmin 0.01
#define tmax 30.0
#define nzmax 10
#define zlmin -6.00
#define zlmax 2.0
#define rmin 1.e-6
#define rmax 2.0
#define nrmax 50
// ICM metallicity in units of Solar
#define ABUNDANCE 0.3
extern double tarray[ntmax]; //keV
extern double zarray[nzmax]; //Solar unit
extern double rarray[nrmax]; //Solar unit
extern double lambda_table[ntmax][nrmax];
extern double tres, zres, rres, eres;
#ifdef __cplusplus
/*
extern "C" void set_lambda_table ( double zobs, double tarray[ntmax], double zarray[nzmax], double lambda_table[ntmax][nzmax] );
extern "C" void set_lambdaeff_table ( double zobs, char *filename, double tarray[ntmax], double zarray[nzmax], double lambdaeff_table[ntmax][nzmax] );
extern "C" int read_effarea ( char *filename, double **energy, double **effarea );
extern "C" double int_lambda_table (double temp, double metal, double tarray[ntmax], double zarray[nzmax], double lambda_table[ntmax][nzmax] );
I*/
extern "C" void set_lambda_table ( double tarray[ntmax], double rarray[nrmax], double lambda_table[ntmax][nrmax] );
extern "C" double int_lambda_table (double temp, double redshift, double tarray[ntmax], double rarray[nrmax], double lambda_table[ntmax][nrmax] );
#endif
#endif