00001
00002
00003
00005 #define MDIM 4
00006
00008 #define MNAM 6
00009
00012 typedef enum {
00013 IM_ILLEGAL_MODE=-1, IM_RECT_GRID, IM_COSTAR_TEFF_MODID,
00014 IM_COSTAR_TEFF_LOGG, IM_COSTAR_MZAMS_AGE, IM_COSTAR_AGE_MZAMS
00015 } IntMode;
00016
00017 typedef enum {
00018 TL_BSTAR, TL_OSTAR
00019 } tl_grid;
00020
00022 void AtmospheresAvail( void );
00023
00025 int AtlasCompile(void);
00027 long AtlasInterpolate(double val[],
00028 long *nval,
00029 long *ndim,
00030 const char *chMetalicity,
00031 const char *chODFNew,
00032 bool lgList,
00033 double *Tlow,
00034 double *Thigh);
00035
00037 int CoStarCompile(void);
00039 long CoStarInterpolate(double val[],
00040 long *nval,
00041 long *ndim,
00042 IntMode imode,
00043 bool lgHalo,
00044 bool lgList,
00045 double *val0_lo,
00046 double *val0_hi);
00047
00049 bool GridCompile(const char *InName);
00051 long GridInterpolate(double val[],
00052 long *nval,
00053 long *ndim,
00054 const char *FileName,
00055 bool lgList,
00056 double *Tlow,
00057 double *Thigh);
00058
00060 int Kurucz79Compile(void);
00062 long Kurucz79Interpolate(double val[],
00063 long *nval,
00064 long *ndim,
00065 bool lgList,
00066 double *Tlow,
00067 double *Thigh);
00068
00070 int MihalasCompile(void);
00072 long MihalasInterpolate(double val[],
00073 long *nval,
00074 long *ndim,
00075 bool lgList,
00076 double *Tlow,
00077 double *Thigh);
00078
00081 int RauchCompile(void);
00083 long RauchInterpolateHydr(double val[],
00084 long *nval,
00085 long *ndim,
00086 bool lgList,
00087 double *Tlow,
00088 double *Thigh);
00090 long RauchInterpolateHelium(double val[],
00091 long *nval,
00092 long *ndim,
00093 bool lgList,
00094 double *Tlow,
00095 double *Thigh);
00097 long RauchInterpolateHpHe(double val[],
00098 long *nval,
00099 long *ndim,
00100 bool lgList,
00101 double *Tlow,
00102 double *Thigh);
00104 long RauchInterpolatePG1159(double val[],
00105 long *nval,
00106 long *ndim,
00107 bool lgList,
00108 double *Tlow,
00109 double *Thigh);
00111 long RauchInterpolateHCa(double val[],
00112 long *nval,
00113 long *ndim,
00114 bool lgHalo,
00115 bool lgList,
00116 double *Tlow,
00117 double *Thigh);
00119 long RauchInterpolateHNi(double val[],
00120 long *nval,
00121 long *ndim,
00122 bool lgHalo,
00123 bool lgList,
00124 double *Tlow,
00125 double *Thigh);
00126
00128 bool StarburstInitialize(const char chInName[],
00129 const char chOutName[]);
00131 bool StarburstCompile(void);
00132
00134 int TlustyCompile(void);
00136 long TlustyInterpolate(double val[],
00137 long *nval,
00138 long *ndim,
00139 tl_grid tlg,
00140 const char *chMetalicity,
00141 bool lgList,
00142 double *Tlow,
00143 double *Thigh);
00144
00146 int WernerCompile(void);
00148 long WernerInterpolate(double val[],
00149 long *nval,
00150 long *ndim,
00151 bool lgList,
00152 double *Tlow,
00153 double *Thigh);
00154
00156 int WMBASICCompile(void);
00158 long WMBASICInterpolate(double val[],
00159 long *nval,
00160 long *ndim,
00161 bool lgList,
00162 double *Tlow,
00163 double *Thigh);