helike_recom.cpp File Reference

#include "cddefines.h"
#include "trace.h"
#include "rt.h"
#include "path.h"
#include "physconst.h"
#include "hydro_bauman.h"
#include "iso.h"
#include "helike.h"
#include "thermal.h"
#include "helike_recom.h"
#include "thirdparty.h"
#include "dense.h"
#include "phycon.h"
#include "opacity.h"
#include "ionbal.h"
#include "atmdat.h"

Include dependency graph for helike_recom.cpp:

Go to the source code of this file.

Functions

STATIC double TempInterp (double *TempArray, double *ValueArray, long NumElements)
STATIC double He_RRCoef_Te (long nelem, long n)
STATIC double Recomb_Seaton59 (long nelem, double temp, long n)
STATIC double ExponentialInt (double v)
STATIC double X1Int (double u)
STATIC double X2Int (double u)
STATIC double cross_section (double EgammaRyd)
STATIC double radrecomb (double temp, long nelem, long ipLo)
STATIC double RecomInt (double EE)
double He_cross_section (double EgammaRyd, long ipLevel, long nelem)
void HelikeRecombSetup (void)
void HeRecom (long nelem)
double HelikeCheckRecomb (long nelem, long level, double temperature)

Variables

static double *** RRCoef
static double ** TotalRecomb
static double TeRRCoef [N_HE_TE_RECOMB]
static double kTRyd
static double EthRyd
static double Xn_S59
static long int ipLev
static long int globalZ
double PeachE [460]
double TripP [7][460]
double TripD [8][460]
double SingD [8][460]


Function Documentation

STATIC double cross_section ( double  EgammaRyd  ) 

STATIC double ExponentialInt ( double  v  ) 

Definition at line 2206 of file helike_recom.cpp.

References Xn_S59.

Referenced by Recomb_Seaton59().

double He_cross_section ( double  EgammaRyd,
long  ipLevel,
long  nelem 
)

He_cross_section returns cross section (cm^-2), given EgammaRyd, the photon energy in Ryd, ipLevel, the index of the level, 0 is ground, 3 within 2 3P, ipZ is charge, equal to 1 for Helium, this is a wrapper for cross_section

Definition at line 1538 of file helike_recom.cpp.

References ASSERT, cross_section(), EthRyd, globalZ, helike, ipHE_LIKE, ipHELIUM, ipLev, iso, t_helike::lgSetBenjamin, t_iso::nCollapsed_max, t_iso::numLevels_max, and t_iso::xIsoLevNIonRyd.

Referenced by Opacity_iso_photo_cs(), and RecomInt().

Here is the call graph for this function:

STATIC double He_RRCoef_Te ( long  nelem,
long  n 
)

double HelikeCheckRecomb ( long  nelem,
long  level,
double  temperature 
)

HelikeCheckRecomb - called by SanityCheck to confirm that recombination coef are ok, return value is relative error between new calculation of recom, and interp value

Parameters:
nelem the chemical element, 1 for He
level the level, 0 for ground
temperature the temperature to be used

Definition at line 3244 of file helike_recom.cpp.

References DEBUG_ENTRY, DEBUG_EXIT, EthRyd, He_RRCoef_Te(), ipHE_LIKE, iso, MAX2, phycon, radrecomb(), t_phycon::te, tfidle(), and t_iso::xIsoLevNIonRyd.

Referenced by SanityCheckBegin().

Here is the call graph for this function:

void HelikeRecombSetup ( void   ) 

void HeRecom ( long  nelem  ) 

STATIC double radrecomb ( double  temp,
long  nelem,
long  ipLo 
)

Definition at line 2067 of file helike_recom.cpp.

References EthRyd, ipHe2p3P0, ipHe2p3P1, ipHe2p3P2, ipHE_LIKE, ipLev, iso, kTRyd, MAX2, MILNE_CONST, MIN2, qg32(), RecomInt(), SMALLDOUBLE, t_iso::stat, and TE1RYD.

Referenced by HelikeCheckRecomb(), HelikeRecombSetup(), and HeRecom().

Here is the call graph for this function:

STATIC double Recomb_Seaton59 ( long  nelem,
double  temp,
long  n 
)

Definition at line 2145 of file helike_recom.cpp.

References ExponentialInt(), qg32(), TE1RYD, X1Int(), X2Int(), and Xn_S59.

Referenced by HelikeRecombSetup(), and HeRecom().

Here is the call graph for this function:

STATIC double RecomInt ( double  EE  ) 

Definition at line 2132 of file helike_recom.cpp.

References EthRyd, He_cross_section(), ipLev, kTRyd, and x1.

Referenced by radrecomb().

Here is the call graph for this function:

static double TempInterp ( double *  TempArray,
double *  ValueArray,
long  NumElements 
)

Todo:
2 use a canned interpolation routine, no need for special one here

Todo:
there is a virtually identical routine in helike_recom.cpp -> combine

Definition at line 3155 of file helike_recom.cpp.

References t_phycon::alogte, ASSERT, cdEXIT(), DEBUG_ENTRY, DEBUG_EXIT, hunt_bisect(), ioQQQ, lagrange(), max(), min(), phycon, and t_phycon::te.

Referenced by He_RRCoef_Te(), and lines_helium().

Here is the call graph for this function:

STATIC double X1Int ( double  u  ) 

Definition at line 2215 of file helike_recom.cpp.

References Xn_S59.

Referenced by Recomb_Seaton59().

STATIC double X2Int ( double  u  ) 

Definition at line 2225 of file helike_recom.cpp.

References Xn_S59.

Referenced by Recomb_Seaton59().


Variable Documentation

double EthRyd [static]

long int globalZ [static]

Definition at line 82 of file helike_recom.cpp.

Referenced by cross_section(), and He_cross_section().

long int ipLev [static]

Definition at line 82 of file helike_recom.cpp.

Referenced by cross_section(), He_cross_section(), radrecomb(), and RecomInt().

double kTRyd [static]

Definition at line 81 of file helike_recom.cpp.

Referenced by radrecomb(), and RecomInt().

double PeachE[460]

Definition at line 86 of file helike_recom.cpp.

Referenced by cross_section().

double*** RRCoef [static]

Definition at line 43 of file helike_recom.cpp.

Referenced by He_RRCoef_Te(), and HelikeRecombSetup().

double SingD[8][460]

Definition at line 1050 of file helike_recom.cpp.

Referenced by cross_section().

double TeRRCoef[N_HE_TE_RECOMB] [static]

Definition at line 51 of file helike_recom.cpp.

Referenced by He_RRCoef_Te(), and HelikeRecombSetup().

double** TotalRecomb [static]

Definition at line 45 of file helike_recom.cpp.

Referenced by He_RRCoef_Te(), and HelikeRecombSetup().

double TripD[8][460]

Definition at line 568 of file helike_recom.cpp.

Referenced by cross_section().

double TripP[7][460]

Definition at line 146 of file helike_recom.cpp.

Referenced by cross_section().

double Xn_S59 [static]

Definition at line 81 of file helike_recom.cpp.

Referenced by ExponentialInt(), Recomb_Seaton59(), X1Int(), and X2Int().


Generated for cloudy by doxygen 1.5.9