Cloudy
Spectral Synthesis Code for Astrophysics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
atmdat_char_tran.cpp File Reference
#include "cddefines.h"
#include "phycon.h"
#include "abund.h"
#include "dense.h"
#include "iso.h"
#include "thermal.h"
#include "elementnames.h"
#include "heavy.h"
#include "trace.h"
#include "conv.h"
#include "atmdat.h"
#include "ion_trim.h"
#include "mole.h"
#include "parser.h"
Include dependency graph for atmdat_char_tran.cpp:

Macros

#define FRAC   0.1
 

Functions

STATIC double HCTIon (long int ion, long int nelem)
 
STATIC double HCTRecom (long int ion, long int nelem)
 
STATIC void MakeHCTData (void)
 
void ChargTranEval (void)
 
double ChargTranSumHeat (void)
 
void ChargTranPun (FILE *ipPnunit, char *chSave)
 

Variables

static double CTIonData [LIMELM][4][8]
 
static double CTRecombData [LIMELM][4][7]
 
static bool lgCTDataDefined = false
 

Macro Definition Documentation

#define FRAC   0.1

Function Documentation

void ChargTranEval ( void  )

atmdat fill in the CharExcIonOf[ipHYDROGEN] and Rec arrays with Kingdon's fitted CT with H,

Todo:
1 update ct to Kimura et al. (1996)
Todo:
1 above rate not intended for very low temperatures - find ref for low-T rate, probably is 1e-9 like above
Todo:
0 these should be values at 1e5 K
Todo:
2 not currently used - include as deexcitation process

References t_phycon::alnte, atmdat, t_atmdat::CharExcIonOf, t_atmdat::CharExcRecTo, conv, DEBUG_ENTRY, fp_equal(), t_atmdat::HCharExcRecTo_N0_2D, HCTIon(), HCTRecom(), hmrate4(), ipALUMINIUM, ipARGON, ipCARBON, ipCHLORINE, ipHELIUM, ipHYDROGEN, ipIRON, ipLITHIUM, ipMAGNESIUM, ipMANGANESE, ipNEON, ipNICKEL, ipNITROGEN, ipOXYGEN, ipPHOSPHORUS, ipPOTASSIUM, ipSILICON, ipSODIUM, ipSULPHUR, ipTITANIUM, t_atmdat::lgCTOn, t_mole_global::lgLeidenHack, LIMELM, MIN2, mole_global, t_conv::nTotalIoniz, phycon, pow(), SDIV(), sexp(), t_phycon::sqrte, t_phycon::te, t_phycon::te01, t_phycon::te03, t_phycon::te05, t_phycon::te10, t_phycon::te20, t_phycon::te30, t_phycon::te_eV, and t_phycon::tesqrd.

Referenced by ChargTranPun(), and ConvBase().

Here is the call graph for this function:

void ChargTranPun ( FILE *  ipPnunit,
char *  chSave 
)
STATIC double HCTIon ( long int  ion,
long int  nelem 
)

References ASSERT, CTIonData, DEBUG_ENTRY, fprintf(), ioQQQ, lgCTDataDefined, t_trace::lgTrace, LIMELM, MakeHCTData(), MAX2, MIN2, phycon, pow(), t_phycon::te, and trace.

Referenced by ChargTranEval(), and ChargTranPun().

Here is the call graph for this function:

STATIC double HCTRecom ( long int  ion,
long int  nelem 
)

Variable Documentation

double CTIonData[LIMELM][4][8]
static
double CTRecombData[LIMELM][4][7]
static
bool lgCTDataDefined = false
static

Referenced by ChargTranSumHeat(), HCTIon(), and HCTRecom().