Cloudy
Spectral Synthesis Code for Astrophysics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
stars.cpp File Reference
#include "cddefines.h"
#include "optimize.h"
#include "continuum.h"
#include "called.h"
#include "rfield.h"
#include "parser.h"
#include "container_classes.h"
#include "stars.h"
Include dependency graph for stars.cpp:

Classes

struct  mpp
 
struct  stellar_grid
 

Enumerations

enum  IntStageBits { ISB_COLLECT, ISB_EXECUTE, ISB_FIRST, ISB_SECOND }
 

Functions

STATIC bool CoStarInitialize (const char[], const char[])
 
STATIC void InterpolateGridCoStar (stellar_grid *, const double[], double *, double *)
 
STATIC void FindHCoStar (const stellar_grid *, long, double, long, vector< realnum > &, vector< long > &, vector< long > &)
 
STATIC void FindVCoStar (const stellar_grid *, double, vector< realnum > &, long[])
 
STATIC void CoStarListModels (const stellar_grid *)
 
STATIC bool RauchInitialize (const char[], const char[], const vector< mpp > &, long, long, long, const double[], int)
 
STATIC void RauchReadMPP (vector< mpp > &, vector< mpp > &, vector< mpp > &, vector< mpp > &, vector< mpp > &, vector< mpp > &)
 
void getdataline (fstream &, string &)
 
STATIC void WriteASCIIHead (FILE *, long, long, const vector< string > &, long, long, const string &, double, const string &, double, const vector< mpp > &, const char *, int)
 
STATIC void WriteASCIIData (FILE *, const vector< double > &, long, const char *, int)
 
STATIC bool lgReadAtmosphereHead (stellar_grid *)
 
STATIC bool lgReadAtmosphereTail (stellar_grid *, const realnum[], long, const vector< long > &, FILE *, bool)
 
STATIC bool lgCompileAtmosphere (const string &, process_counter &)
 
STATIC void InitGrid (stellar_grid *, bool)
 
STATIC bool lgValidIdxFile (const string &, process_counter &)
 
STATIC bool lgValidASCIIFile (const string &)
 
STATIC void InitGridCoStar (stellar_grid *)
 
STATIC void CheckVal (const stellar_grid *, double[], long *, long *)
 
STATIC void InterpolateRectGrid (stellar_grid *, const double[], double *, double *, const realnum[]=NULL, long=0L, bool=lgTAKELOG)
 
STATIC void InterpolateModel (stellar_grid *, const double[], vector< double > &, const vector< long > &, const vector< long > &, vector< long > &, long, vector< realnum > &, bool, const realnum[]=NULL, long=0L)
 
STATIC void InterpolateModel (stellar_grid *, const double[], vector< double > &, const vector< long > &, const vector< long > &, vector< long > &, long, vector< realnum > &, int)
 
STATIC void InterpolateModelCoStar (const stellar_grid *, const double[], vector< double > &, const long[], const long[], vector< long > &, long, long, vector< realnum > &)
 
template<class T >
void SortUnique (vector< T > &, vector< T > &)
 
STATIC void EchoModel (const stellar_grid *, long)
 
STATIC void SetLimits (const stellar_grid *, double, const vector< long > &, const vector< long > &, const long[], const vector< realnum > &, double *, double *)
 
STATIC void SetLimitsSub (const stellar_grid *, double, const vector< long > &, const vector< long > &, vector< long > &, long, double *, double *)
 
STATIC void InitIndexArrays (stellar_grid *, bool)
 
STATIC void FillJ (stellar_grid *, vector< long > &, vector< double > &, long, bool)
 
STATIC long JIndex (const stellar_grid *, const vector< long > &)
 
STATIC void SearchModel (const vector< mpp > &, bool, long, const vector< double > &, long, long *, long *)
 
STATIC void FindIndex (const multi_arr< double, 2 > &, long, long, double, long *, long *, bool *)
 
STATIC bool lgFileReadable (const string &, process_counter &)
 
STATIC bool lgValidModel (const vector< Energy > &, const vector< realnum > &, double, double)
 
STATIC void RebinAtmosphere (const vector< realnum > &, const vector< realnum > &, long, const realnum[], long, realnum[])
 
STATIC realnum RebinSingleCell (long, const realnum[], const realnum[], const vector< realnum > &, long)
 
long RebinFind (const realnum[], long, realnum)
 
template<class T >
void DumpAtmosphere (const string &, long, long, char[MDIM][MNAM+1], const vector< mpp > &, long, const T[], const realnum[])
 
void AtmospheresAvail ()
 
bool AtlasCompile (process_counter &pc)
 
long AtlasInterpolate (double val[], long *nval, long *ndim, const string &chMetalicity, const string &chODFNew, bool lgList, double *Tlow, double *Thigh)
 
bool CoStarCompile (process_counter &pc)
 
long CoStarInterpolate (double val[], long *nval, long *ndim, IntMode imode, bool lgHalo, bool lgList, double *val0_lo, double *val0_hi)
 
bool GridCompile (const string &InName)
 
long GridInterpolate (double val[], long *nval, long *ndim, const string &InName, bool lgList, double *Tlow, double *Thigh)
 
bool HaardtMadauCompile (process_counter &pc)
 
long HaardtMadauInterpolate (double val, int version, bool lgQuasar, double *zlow, double *zhigh)
 
bool KhaireSrianandCompile (process_counter &pc)
 
long KhaireSrianandInterpolate (double val, int Q, double *zlow, double *zhigh)
 
bool Kurucz79Compile (process_counter &pc)
 
long Kurucz79Interpolate (double val[], long *nval, long *ndim, bool lgList, double *Tlow, double *Thigh)
 
bool MihalasCompile (process_counter &pc)
 
long MihalasInterpolate (double val[], long *nval, long *ndim, bool lgList, double *Tlow, double *Thigh)
 
bool RauchCompile (process_counter &pc)
 
long RauchInterpolateHCa (double val[], long *nval, long *ndim, bool lgHalo, bool lgList, double *Tlow, double *Thigh)
 
long RauchInterpolateHNi (double val[], long *nval, long *ndim, bool lgHalo, bool lgList, double *Tlow, double *Thigh)
 
long RauchInterpolatePG1159 (double val[], long *nval, long *ndim, bool lgList, double *Tlow, double *Thigh)
 
long RauchInterpolateCOWD (double val[], long *nval, long *ndim, bool lgList, double *Tlow, double *Thigh)
 
long RauchInterpolateHydr (double val[], long *nval, long *ndim, bool lgList, double *Tlow, double *Thigh)
 
long RauchInterpolateHelium (double val[], long *nval, long *ndim, bool lgList, double *Tlow, double *Thigh)
 
long RauchInterpolateHpHe (double val[], long *nval, long *ndim, bool lgList, double *Tlow, double *Thigh)
 
bool StarburstInitialize (const string &chInName, const string &chOutName, sb_mode mode)
 
bool StarburstCompile (process_counter &pc)
 
bool TlustyCompile (process_counter &pc)
 
long TlustyInterpolate (double val[], long *nval, long *ndim, tl_grid tlg, const string &chMetalicity, bool lgList, double *Tlow, double *Thigh)
 
bool WernerCompile (process_counter &pc)
 
long WernerInterpolate (double val[], long *nval, long *ndim, bool lgList, double *Tlow, double *Thigh)
 
bool WMBASICCompile (process_counter &pc)
 
long WMBASICInterpolate (double val[], long *nval, long *ndim, bool lgList, double *Tlow, double *Thigh)
 

Variables

static const int NSB99 = 1250
 
static const int MNTS = 200
 
static const int NRAUCH = 19951
 
static const int NMODS_HCA = 66
 
static const int NMODS_HNI = 51
 
static const int NMODS_PG1159 = 71
 
static const int NMODS_HYDR = 100
 
static const int NMODS_HELIUM = 81
 
static const int NMODS_HpHE = 117
 
static const bool DEBUGPRT = false
 
static const bool lgLINEAR = false
 
static const bool lgTAKELOG = true
 
static const int IS_COLLECT = 2<<ISB_COLLECT
 
static const int IS_EXECUTE = 2<<ISB_EXECUTE
 
static const int IS_FIRST = 2<<ISB_FIRST
 
static const int IS_SECOND = 2<<ISB_SECOND
 
static const long int VERSION_ASCII = 20060612L
 
static const long int VERSION_COSTAR = 20160614L
 
static const long int VERSION_RAUCH_MPP = 20090324L
 
static const long int VERSION_INDEX = 20180201L
 

Enumeration Type Documentation

Enumerator
ISB_COLLECT 
ISB_EXECUTE 
ISB_FIRST 
ISB_SECOND 

Function Documentation

bool AtlasCompile ( process_counter pc)

AtlasCompile rebin Kurucz stellar models to match energy grid of code

References DEBUG_ENTRY, fprintf(), ioQQQ, lgCompileAtmosphere(), lgFileReadable(), and lgValidIdxFile().

Referenced by ParseCompile().

Here is the call graph for this function:

long AtlasInterpolate ( double  val[],
long *  nval,
long *  ndim,
const string &  chMetalicity,
const string &  chODFNew,
bool  lgList,
double *  Tlow,
double *  Thigh 
)

AtlasInterpolate interpolate on atlas model atmospheres, by K Volk

References CheckVal(), DEBUG_ENTRY, grid, stellar_grid::ident, InitGrid(), InterpolateRectGrid(), stellar_grid::name, t_rfield::nflux_with_check, and rfield.

Referenced by ParseTable().

Here is the call graph for this function:

void AtmospheresAvail ( )

List all the available TABLE STAR <grid> commands by checking installed *.ascii files

References DEBUG_ENTRY, fprintf(), ioQQQ, and lgValidASCIIFile().

Referenced by ParseTable().

Here is the call graph for this function:

bool CoStarCompile ( process_counter pc)

CoStarCompile rebin costar stellar models to match energy grid of code

References CoStarInitialize(), DEBUG_ENTRY, fprintf(), ioQQQ, lgCompileAtmosphere(), lgFileReadable(), lgValidASCIIFile(), and lgValidIdxFile().

Referenced by ParseCompile().

Here is the call graph for this function:

STATIC bool CoStarInitialize ( const char  chFNameIn[],
const char  chFNameOut[] 
)
long CoStarInterpolate ( double  val[],
long *  nval,
long *  ndim,
IntMode  imode,
bool  lgHalo,
bool  lgList,
double *  val0_lo,
double *  val0_hi 
)

CoStarInterpolate read in and interpolate on Werner grid of PN atmospheres, by K Volk

References cdEXIT, CheckVal(), CoStarListModels(), DEBUG_ENTRY, EXIT_SUCCESS, grid, stellar_grid::ident, stellar_grid::imode, InitGrid(), InitGridCoStar(), InterpolateGridCoStar(), stellar_grid::name, t_rfield::nflux_with_check, and rfield.

Referenced by ParseTable().

Here is the call graph for this function:

STATIC void CoStarListModels ( const stellar_grid grid)
template<class T >
void DumpAtmosphere ( const string &  fnam,
long  imod,
long  npar,
char  names[MDIM][MNAM+1],
const vector< mpp > &  telg,
long  nflux,
const T  anu[],
const realnum  flux[] 
)

References DEBUG_ENTRY, fprintf(), and open_data().

Referenced by lgReadAtmosphereTail().

Here is the call graph for this function:

STATIC void EchoModel ( const stellar_grid grid,
long  ind 
)
STATIC void FillJ ( stellar_grid grid,
vector< long > &  index,
vector< double > &  val,
long  nd,
bool  lgList 
)
STATIC void FindHCoStar ( const stellar_grid grid,
long  track,
double  par2,
long  off,
vector< realnum > &  ValTr,
vector< long > &  indloTr,
vector< long > &  indhiTr 
)

References DEBUG_ENTRY, frac(), JIndex(), stellar_grid::jval, stellar_grid::telg, and stellar_grid::trackLen.

Referenced by InterpolateGridCoStar().

Here is the call graph for this function:

STATIC void FindIndex ( const multi_arr< double, 2 > &  xval,
long  nd,
long  NVAL,
double  x,
long *  ind1,
long *  ind2,
bool *  lgInvalid 
)

References ASSERT, DEBUG_ENTRY, fp_equal(), and TotalInsanity().

Referenced by InitIndexArrays(), and InterpolateRectGrid().

Here is the call graph for this function:

STATIC void FindVCoStar ( const stellar_grid grid,
double  par1,
vector< realnum > &  ValTr,
long  useTr[] 
)
void getdataline ( fstream &  ioDATA,
string &  line 
)
inline

Referenced by RauchReadMPP().

bool GridCompile ( const string &  InName)

GridCompile rebin user supplied stellar models to match energy grid of code

References ASSERT, DEBUG_ENTRY, fprintf(), ioQQQ, and lgCompileAtmosphere().

Referenced by ParseCompile().

Here is the call graph for this function:

long GridInterpolate ( double  val[],
long *  nval,
long *  ndim,
const string &  InName,
bool  lgList,
double *  Tlow,
double *  Thigh 
)

GridInterpolate read in and interpolate on user supplied grid of atmospheres

References CheckVal(), DEBUG_ENTRY, grid, stellar_grid::ident, InitGrid(), InterpolateRectGrid(), stellar_grid::name, t_rfield::nflux_with_check, and rfield.

Referenced by ParseTable().

Here is the call graph for this function:

bool HaardtMadauCompile ( process_counter pc)

HaardtMadauCompile compile Haardt & Madau SEDs

References DEBUG_ENTRY, fprintf(), ioQQQ, lgCompileAtmosphere(), lgFileReadable(), and lgValidIdxFile().

Referenced by ParseCompile().

Here is the call graph for this function:

long HaardtMadauInterpolate ( double  val,
int  version,
bool  lgQuasar,
double *  zlow,
double *  zhigh 
)

HaardtMadauInterpolate read in and interpolate on Haardt & Madau SEDs

References AS_DEFAULT, CheckVal(), DEBUG_ENTRY, get_ptr(), grid, stellar_grid::ident, InitGrid(), InterpolateRectGrid(), lgLINEAR, stellar_grid::name, t_rfield::nflux_with_check, rfield, stellar_grid::scheme, and TotalInsanity().

Referenced by ParseTable().

Here is the call graph for this function:

STATIC void InterpolateModel ( stellar_grid grid,
const double  val[],
vector< double > &  aval,
const vector< long > &  indlo,
const vector< long > &  indhi,
vector< long > &  index,
long  nd,
vector< realnum > &  flux1,
bool  lgTakeLog,
const realnum  Edges[] = NULL,
long  nEdges = 0L 
)
STATIC void InterpolateModel ( stellar_grid grid,
const double  val[],
vector< double > &  aval,
const vector< long > &  indlo,
const vector< long > &  indhi,
vector< long > &  index,
long  nd,
vector< realnum > &  flux1,
int  stage 
)
STATIC void InterpolateModelCoStar ( const stellar_grid grid,
const double  val[],
vector< double > &  aval,
const long  indlo[],
const long  indhi[],
vector< long > &  index,
long  nd,
long  off,
vector< realnum > &  flux1 
)
bool KhaireSrianandCompile ( process_counter pc)

KhaireSrianandCompile compile Khaire & Srianand SEDs

References DEBUG_ENTRY, fprintf(), ioQQQ, lgCompileAtmosphere(), lgFileReadable(), and lgValidIdxFile().

Referenced by ParseCompile().

Here is the call graph for this function:

long KhaireSrianandInterpolate ( double  val,
int  Q,
double *  zlow,
double *  zhigh 
)

KhaireSrianandInterpolate read in and interpolate on Khaire & Srianand SEDs

References AS_DEFAULT, CheckVal(), DEBUG_ENTRY, grid, stellar_grid::ident, InitGrid(), InterpolateRectGrid(), lgLINEAR, stellar_grid::name, t_rfield::nflux_with_check, NULL, rfield, and stellar_grid::scheme.

Referenced by ParseTable().

Here is the call graph for this function:

bool Kurucz79Compile ( process_counter pc)

Kurucz79Compile rebin Kurucz79 stellar models to match energy grid of code

References DEBUG_ENTRY, fprintf(), ioQQQ, lgCompileAtmosphere(), lgFileReadable(), and lgValidIdxFile().

Referenced by ParseCompile().

Here is the call graph for this function:

long Kurucz79Interpolate ( double  val[],
long *  nval,
long *  ndim,
bool  lgList,
double *  Tlow,
double *  Thigh 
)

Kurucz79Interpolate read in and interpolate on Kurucz 1979 grid of atmospheres

References CheckVal(), DEBUG_ENTRY, grid, stellar_grid::ident, InitGrid(), InterpolateRectGrid(), stellar_grid::name, t_rfield::nflux_with_check, and rfield.

Referenced by ParseTable().

Here is the call graph for this function:

STATIC bool lgValidASCIIFile ( const string &  ascName)

References AS_TRY, DEBUG_ENTRY, mode_r, open_data(), VERSION_ASCII, and VERSION_COSTAR.

Referenced by AtmospheresAvail(), CoStarCompile(), RauchCompile(), and StarburstCompile().

Here is the call graph for this function:

STATIC bool lgValidModel ( const vector< Energy > &  anu,
const vector< realnum > &  flux,
double  Teff,
double  toler 
)

References ASSERT, DEBUG_ENTRY, fprintf(), ioQQQ, t_rfield::nflux_with_check, powpq(), and rfield.

Referenced by InterpolateGridCoStar(), InterpolateRectGrid(), and lgReadAtmosphereTail().

Here is the call graph for this function:

bool MihalasCompile ( process_counter pc)

MihalasCompile rebin Mihalas stellar models to match energy grid of code

References DEBUG_ENTRY, fprintf(), ioQQQ, lgCompileAtmosphere(), lgFileReadable(), and lgValidIdxFile().

Referenced by ParseCompile().

Here is the call graph for this function:

long MihalasInterpolate ( double  val[],
long *  nval,
long *  ndim,
bool  lgList,
double *  Tlow,
double *  Thigh 
)

MihalasInterpolate read in and interpolate on Mihalas grid of atmospheres

References CheckVal(), DEBUG_ENTRY, grid, stellar_grid::ident, InitGrid(), InterpolateRectGrid(), stellar_grid::name, t_rfield::nflux_with_check, and rfield.

Referenced by ParseTable().

Here is the call graph for this function:

bool RauchCompile ( process_counter pc)

RauchCompile create ascii and mod files for Rauch atmospheres return 0 if success, 1 if failure

References DEBUG_ENTRY, fprintf(), ioQQQ, lgCompileAtmosphere(), lgFileReadable(), lgValidASCIIFile(), lgValidIdxFile(), NMODS_HCA, NMODS_HELIUM, NMODS_HNI, NMODS_HpHE, NMODS_HYDR, NMODS_PG1159, RauchInitialize(), and RauchReadMPP().

Referenced by ParseCompile().

Here is the call graph for this function:

STATIC bool RauchInitialize ( const char  chFName[],
const char  chSuff[],
const vector< mpp > &  telg,
long  nmods,
long  n,
long  ngrids,
const double  par2[],
int  format 
)
long RauchInterpolateCOWD ( double  val[],
long *  nval,
long *  ndim,
bool  lgList,
double *  Tlow,
double *  Thigh 
)

RauchInterpolateCOWD get one of the Rauch C/O white dwarf model atmospheres

References CheckVal(), DEBUG_ENTRY, grid, stellar_grid::ident, InitGrid(), InterpolateRectGrid(), stellar_grid::name, t_rfield::nflux_with_check, and rfield.

Referenced by ParseTable().

Here is the call graph for this function:

long RauchInterpolateHCa ( double  val[],
long *  nval,
long *  ndim,
bool  lgHalo,
bool  lgList,
double *  Tlow,
double *  Thigh 
)

RauchInterpolateHCa get one of the Rauch H-Ca model atmospheres, originally by K. Volk

References CheckVal(), DEBUG_ENTRY, grid, stellar_grid::ident, InitGrid(), InterpolateRectGrid(), stellar_grid::name, t_rfield::nflux_with_check, and rfield.

Referenced by ParseTable().

Here is the call graph for this function:

long RauchInterpolateHelium ( double  val[],
long *  nval,
long *  ndim,
bool  lgList,
double *  Tlow,
double *  Thigh 
)

RauchInterpolateHelium get one of the Rauch pure helium model atmospheres

References CheckVal(), DEBUG_ENTRY, grid, stellar_grid::ident, InitGrid(), InterpolateRectGrid(), stellar_grid::name, t_rfield::nflux_with_check, and rfield.

Referenced by ParseTable().

Here is the call graph for this function:

long RauchInterpolateHNi ( double  val[],
long *  nval,
long *  ndim,
bool  lgHalo,
bool  lgList,
double *  Tlow,
double *  Thigh 
)

RauchInterpolateHNi get one of the Rauch H-Ni model atmospheres

References CheckVal(), DEBUG_ENTRY, grid, stellar_grid::ident, InitGrid(), InterpolateRectGrid(), stellar_grid::name, t_rfield::nflux_with_check, and rfield.

Referenced by ParseTable().

Here is the call graph for this function:

long RauchInterpolateHpHe ( double  val[],
long *  nval,
long *  ndim,
bool  lgList,
double *  Tlow,
double *  Thigh 
)

RauchInterpolateHpHe get one of the Rauch hydrogen plus helium model atmospheres

References CheckVal(), DEBUG_ENTRY, grid, stellar_grid::ident, InitGrid(), InterpolateRectGrid(), stellar_grid::name, t_rfield::nflux_with_check, and rfield.

Referenced by ParseTable().

Here is the call graph for this function:

long RauchInterpolateHydr ( double  val[],
long *  nval,
long *  ndim,
bool  lgList,
double *  Tlow,
double *  Thigh 
)

RauchInterpolateHydr get one of the Rauch pure hydrogen model atmospheres

References CheckVal(), DEBUG_ENTRY, grid, stellar_grid::ident, InitGrid(), InterpolateRectGrid(), stellar_grid::name, t_rfield::nflux_with_check, and rfield.

Referenced by ParseTable().

Here is the call graph for this function:

long RauchInterpolatePG1159 ( double  val[],
long *  nval,
long *  ndim,
bool  lgList,
double *  Tlow,
double *  Thigh 
)

RauchInterpolatePG1159 get one of the Rauch PG1159 model atmospheres

References CheckVal(), DEBUG_ENTRY, grid, stellar_grid::ident, InitGrid(), InterpolateRectGrid(), stellar_grid::name, t_rfield::nflux_with_check, and rfield.

Referenced by ParseTable().

Here is the call graph for this function:

STATIC void RauchReadMPP ( vector< mpp > &  telg1,
vector< mpp > &  telg2,
vector< mpp > &  telg3,
vector< mpp > &  telg4,
vector< mpp > &  telg5,
vector< mpp > &  telg6 
)

References ASSERT, cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, fprintf(), getdataline(), ioQQQ, mode_r, open_data(), and VERSION_RAUCH_MPP.

Referenced by RauchCompile().

Here is the call graph for this function:

STATIC void RebinAtmosphere ( const vector< realnum > &  StarEner,
const vector< realnum > &  StarFlux,
long  nCont,
const realnum  Edges[],
long  nEdges,
realnum  CloudyFlux[] 
)
long RebinFind ( const realnum  array[],
long  nArr,
realnum  val 
)
inline

References ASSERT, and hunt_bisect().

Referenced by RebinAtmosphere(), and RebinSingleCell().

Here is the call graph for this function:

STATIC realnum RebinSingleCell ( long  j,
const realnum  StarEner[],
const realnum  StarFlux[],
const vector< realnum > &  StarPower,
long  nCont 
)

References t_mesh::anu(), t_mesh::anumax(), t_mesh::anumin(), ASSERT, DEBUG_ENTRY, max(), min(), MIN2, pow(), pow2(), RebinFind(), rfield, x1, and x2.

Referenced by RebinAtmosphere().

Here is the call graph for this function:

STATIC void SearchModel ( const vector< mpp > &  telg,
bool  lgIsTeffLoggGrid,
long  nmods,
const vector< double > &  val,
long  ndim,
long *  index_low,
long *  index_high 
)

References DEBUG_ENTRY, and fp_equal().

Referenced by FillJ().

Here is the call graph for this function:

STATIC void SetLimits ( const stellar_grid grid,
double  val,
const vector< long > &  indlo,
const vector< long > &  indhi,
const long  useTr[],
const vector< realnum > &  ValTr,
double *  loLim,
double *  hiLim 
)
STATIC void SetLimitsSub ( const stellar_grid grid,
double  val,
const vector< long > &  indlo,
const vector< long > &  indhi,
vector< long > &  index,
long  nd,
double *  loLim,
double *  hiLim 
)

References ASSERT, DEBUG_ENTRY, stellar_grid::jhi, JIndex(), stellar_grid::jlo, MAX2, MIN2, stellar_grid::nval, and stellar_grid::val.

Referenced by SetLimits().

Here is the call graph for this function:

template<class T >
void SortUnique ( vector< T > &  in,
vector< T > &  out 
)

References DEBUG_ENTRY.

Referenced by InterpolateGridCoStar(), and InterpolateModel().

bool StarburstCompile ( process_counter pc)

StarburstCompile, rebin Starburst99 model output to match energy grid of code

References DEBUG_ENTRY, fprintf(), ioQQQ, lgCompileAtmosphere(), lgFileReadable(), lgValidASCIIFile(), lgValidIdxFile(), SB_TOTAL, and StarburstInitialize().

Referenced by ParseCompile().

Here is the call graph for this function:

bool StarburstInitialize ( const string &  chInName,
const string &  chOutName,
sb_mode  mode 
)

Create .ascii file out of Starburst99 output

References DEBUG_ENTRY, exp10(), fp_equal(), fprintf(), ioQQQ, MNTS, NSB99, open_data(), read_whole_line(), SB_NEBULAR, SB_STELLAR, SB_TOTAL, TotalInsanity(), VERSION_ASCII, WriteASCIIData(), and WriteASCIIHead().

Referenced by ParseCompile(), and StarburstCompile().

Here is the call graph for this function:

bool TlustyCompile ( process_counter pc)

TlustyCompile rebin Tlusty OSTAR2002 stellar models to match energy grid of code

References DEBUG_ENTRY, fprintf(), ioQQQ, lgCompileAtmosphere(), lgFileReadable(), and lgValidIdxFile().

Referenced by ParseCompile().

Here is the call graph for this function:

long TlustyInterpolate ( double  val[],
long *  nval,
long *  ndim,
tl_grid  tlg,
const string &  chMetalicity,
bool  lgList,
double *  Tlow,
double *  Thigh 
)

TlustyInterpolate get one of the Tlusty OSTAR2002 model atmospheres

References CheckVal(), DEBUG_ENTRY, grid, stellar_grid::ident, InitGrid(), InterpolateRectGrid(), stellar_grid::name, t_rfield::nflux_with_check, rfield, TL_BSTAR, TL_OBSTAR, TL_OSTAR, and TotalInsanity().

Referenced by ParseTable().

Here is the call graph for this function:

bool WernerCompile ( process_counter pc)

WernerCompile rebin Werner stellar atmospheres to match cloudy energy grid

References DEBUG_ENTRY, fprintf(), ioQQQ, lgCompileAtmosphere(), lgFileReadable(), and lgValidIdxFile().

Referenced by ParseCompile().

Here is the call graph for this function:

long WernerInterpolate ( double  val[],
long *  nval,
long *  ndim,
bool  lgList,
double *  Tlow,
double *  Thigh 
)

WernerInterpolate read in and interpolate on Werner grid of PN atmospheres, by K Volk

References CheckVal(), DEBUG_ENTRY, grid, stellar_grid::ident, InitGrid(), InterpolateRectGrid(), stellar_grid::name, t_rfield::nflux_with_check, and rfield.

Referenced by ParseTable().

Here is the call graph for this function:

bool WMBASICCompile ( process_counter pc)

WMBASICCompile rebin WMBASIC stellar models to match energy grid of code

References DEBUG_ENTRY, fprintf(), ioQQQ, lgCompileAtmosphere(), lgFileReadable(), and lgValidIdxFile().

Referenced by ParseCompile().

Here is the call graph for this function:

long WMBASICInterpolate ( double  val[],
long *  nval,
long *  ndim,
bool  lgList,
double *  Tlow,
double *  Thigh 
)

WMBASICInterpolate read in and interpolate on WMBASIC grid of hot star atmospheres

References CheckVal(), DEBUG_ENTRY, grid, stellar_grid::ident, InitGrid(), InterpolateRectGrid(), stellar_grid::name, t_rfield::nflux_with_check, and rfield.

Referenced by ParseTable().

Here is the call graph for this function:

STATIC void WriteASCIIData ( FILE *  ioOut,
const vector< double > &  data,
long  ngrid,
const char *  format,
int  nmult 
)

References DEBUG_ENTRY, and fprintf().

Referenced by CoStarInitialize(), RauchInitialize(), and StarburstInitialize().

Here is the call graph for this function:

STATIC void WriteASCIIHead ( FILE *  ioOut,
long  version,
long  ndim,
const vector< string > &  names,
long  nmods,
long  ngrid,
const string &  wtype,
double  wfac,
const string &  ftype,
double  ffac,
const vector< mpp > &  telg,
const char *  format,
int  nmult 
)

References ASSERT, DEBUG_ENTRY, fprintf(), MDIM, VERSION_ASCII, and VERSION_COSTAR.

Referenced by CoStarInitialize(), RauchInitialize(), and StarburstInitialize().

Here is the call graph for this function:

Variable Documentation

const int IS_COLLECT = 2<<ISB_COLLECT
static

Referenced by InterpolateModel().

const int IS_EXECUTE = 2<<ISB_EXECUTE
static

Referenced by InterpolateModel().

const int IS_FIRST = 2<<ISB_FIRST
static

Referenced by InterpolateModel().

const int IS_SECOND = 2<<ISB_SECOND
static

Referenced by InterpolateModel().

const bool lgLINEAR = false
static
const bool lgTAKELOG = true
static

Referenced by InterpolateGridCoStar().

const int MNTS = 200
static

maximum number of separate time steps in a Starburst99 model

Referenced by StarburstInitialize().

const int NMODS_HCA = 66
static

The number of models in the original Rauch H-Ca set (first version May 1998, current May 2001)

Referenced by RauchCompile().

const int NMODS_HELIUM = 81
static

The number of models in the Rauch Helium only set, Jun 2004

Referenced by RauchCompile().

const int NMODS_HNI = 51
static

The number of models in the new Rauch H-Ni set, Nov 2002

Referenced by RauchCompile().

const int NMODS_HpHE = 117
static

The number of models in the Rauch H+He set, Aug 2004

Referenced by RauchCompile().

const int NMODS_HYDR = 100
static

The number of models in the Rauch Hydrogen only set, Feb 2003

Referenced by RauchCompile().

const int NMODS_PG1159 = 71
static

The number of models in the new Rauch PG1159 set, Jan 2006

Referenced by RauchCompile().

const int NRAUCH = 19951
static

this is the number of points in each of the stellar continua

Referenced by RauchInitialize().

const int NSB99 = 1250
static

this is the initial assumed size of the Starburst grid, may be increased during execution if needed

Referenced by StarburstInitialize().

const long int VERSION_ASCII = 20060612L
static
const long int VERSION_COSTAR = 20160614L
static
const long int VERSION_INDEX = 20180201L
static
const long int VERSION_RAUCH_MPP = 20090324L
static

Referenced by RauchReadMPP().