cloudy  trunk
Data Structures | Defines | Enumerations | Functions | Variables
atmdat.h File Reference

Go to the source code of this file.

Data Structures

struct  t_atmdat
class  t_ADfA

Defines

#define NHSDIM   15
#define NLINEHS   300
#define HS_NZ   8
#define NHCSTE   8

Enumerations

enum  phfit_version { PHFIT_UNDEF, PHFIT95, PHFIT96 }

Functions

double atmdat_2phot_shapefunction (double EbyE2nu, long ipISO, long nelem)
void atmdat_2phot_rate (long ipZ, long ipISO)
void atmdat_readin (void)
void atmdat_Chianti_readin (long intNS)
void atmdat_lamda_readin (long intNS)
void atmdat_outer_shell (long int iz, long int in, long int *imax, long int *ig0, long int *ig1)
void ChargTranEval (double *O_HIonRate)
double ChargTranSumHeat (void)
void ChargTranPun (FILE *ipPnunit, char *chPunch)
double atmdat_dielrec_fe (long int ion, double t)
void atmdat_H_phot_cs (void)
void atmdat_3body (void)
double atmdat_HS_caseB (long int iHi, long int iLo, long int iZ, double TempIn, double DenIn, char chCase)
void atmdat_DielSupres (void)

Variables

EXTERN struct t_atmdat atmdat

Define Documentation

#define HS_NZ   8

number of elements that can be read in

Definition at line 118 of file atmdat.h.

Referenced by atmdat_HS_caseB(), atmdat_readin(), and lines_hydro().

#define NHCSTE   8

number of temperature points in h_coll_str arrays

Definition at line 119 of file atmdat.h.

Referenced by HCSAR_interp().

#define NHSDIM   15

used for following vectors

Definition at line 116 of file atmdat.h.

Referenced by atmdat_readin().

#define NLINEHS   300

dimension of array with lines

Definition at line 117 of file atmdat.h.

Referenced by atmdat_HS_caseB(), and atmdat_readin().


Enumeration Type Documentation

Enumerator:
PHFIT_UNDEF 
PHFIT95 
PHFIT96 

Definition at line 215 of file atmdat.h.


Function Documentation

void atmdat_2phot_rate ( long  ipISO,
long  nelem 
)

atmdat_2phot_rate hydrogen two photon emission, including induced emission

Parameters:
ipZatomic number on c scale
ipISOthe iso sequence, must be either 0 (hydrogen) or 1 (he-like)
Todo:
2 change the name of this routine to reflect the fact that it is entirely induced.
Todo:
2 How should these affect locally emitted continuum calculated in rtdiffuse? Just subtract these rates from the emitted ones?

Definition at line 305 of file atmdat_2photon.cpp.

References t_rfield::anu, t_iso::As2nu, ASSERT, DEBUG_ENTRY, ioQQQ, ipH_LIKE, t_iso::ipHalfTwoPhoE, ipHE_LIKE, t_iso::ipSym2nu, t_iso::ipTwoPhoE, iso, t_trace::lgBug2nu, t_rfield::lgInducProcess, t_trace::lgTrace, t_rfield::OccNumbIncidCont, rfield, t_rfield::SummedOcc, trace, Transitions, t_iso::TwoNu_induc_dn, t_iso::TwoNu_induc_dn_max, and t_iso::TwoNu_induc_up.

Referenced by RT_line_all().

double atmdat_2phot_shapefunction ( double  EbyE2nu,
long  ipISO,
long  nelem 
)

atmdat_2phot_shapefunction two photon emission function for all atomic and ionic species

Parameters:
EbyE2nu
ipISO
nelem

Definition at line 214 of file atmdat_2photon.cpp.

References ASSERT, DEBUG_ENTRY, He2NuEnergies, He2NuShapeFunc, He2NuShapeFuncY2, Hydro2NuEnergies, Hydro2NuShapeFunc, Hydro2NuShapeFuncY2, ipH_LIKE, ipHE_LIKE, lgFirstCall, NCRS, NCRS_H, NCRS_HE, spline(), and splint().

Referenced by ContCreatePointers().

Here is the call graph for this function:

void atmdat_3body ( void  )

atmdat_3body derive three-body recombination coefficients

Definition at line 52 of file atmdat_3body.cpp.

References atmdat, t_ionbal::CotaRate, da(), DEBUG_ENTRY, ionbal, ioQQQ, t_punch::ioRecom, t_punch::lgioRecom, t_ionbal::lgNoCota, t_trace::lgTrace, t_trace::lgTrace3Bod, LIMELM, MIN2, MIN3, t_atmdat::nsbig, punch, and trace.

Referenced by ConvBase().

Here is the call graph for this function:

void atmdat_Chianti_readin ( long  intNS)
double atmdat_dielrec_fe ( long int  ion,
double  t 
)

atmdat_dielrec_fe Dielectronic recombination rates for Fe from Arnaud & Raymond 1992

Parameters:
ion
t

Definition at line 9 of file atmdat_dielrec_fe.cpp.

References cdEXIT, DEBUG_ENTRY, EVRYD, ioQQQ, sexp(), and TE1RYD.

Referenced by ion_recomb().

Here is the call graph for this function:

void atmdat_DielSupres ( void  )

atmdat_DielSupres derive scale factors for suppression of Burgess dielectronic recombination

Definition at line 149 of file atmdat_dielsupres.cpp.

References DEBUG_ENTRY, dense, t_ionbal::DielSupprs, t_dense::eden, ionbal, t_punch::ioRecom, t_punch::lgioRecom, t_ionbal::lgSupDie, LIMELM, MAX2, MIN2, phycon, powi(), punch, t_phycon::sqrte, and t_phycon::te.

Referenced by ConvBase().

Here is the call graph for this function:

void atmdat_H_phot_cs ( void  )

this initializes the arrays containing the fitting coefficients, called by OpacityCreateAll, done once per coreload

double atmdat_HS_caseB ( long int  iHi,
long int  iLo,
long int  iZ,
double  TempIn,
double  DenIn,
char  chCase 
)

general utility to read in line emissivities from the Storey & Hummer tables of case B emissivities.

Parameters:
iHithe principal quantum numbers, .
iLoupper and lower levels in any order
iZcharge of ion, only 1 and 2 for now
TempIntemperature, must lie within the range of the table, which depends on the ion charge, and is 500 - 30,000K for hydrogen
DenInthe density and must lie within the range of the table
chCasecase - 'a' or 'b'

Definition at line 7 of file atmdat_HS_caseb.cpp.

References ASSERT, atmdat, cdEXIT, DEBUG_ENTRY, t_atmdat::Density, t_atmdat::ElecTemp, t_atmdat::Emiss, fp_equal(), HS_NZ, t_atmdat::ncut, t_atmdat::nDensity, NLINEHS, t_atmdat::ntemp, x1, and x2.

Referenced by DrvCaseBHS(), and lines_hydro().

Here is the call graph for this function:

void atmdat_lamda_readin ( long  intNS)
void atmdat_outer_shell ( long int  iz,
long int  in,
long int *  imax,
long int *  ig0,
long int *  ig1 
)

atmdat_outer_shell determine outer shell, and statistical weights of that and higher ion, for any ion written by Dima Verner

Parameters:
[in]izatomic number from 1 to 30
[in]innumber of electrons from 1 to iz
[out]*imaxnumber of the outer shell
[out]*ig0statistical weight of (iz,in) ground state
[out]*ig1statistical weight of (iz,in-1) ground state
Author:
Dima Verner

Definition at line 8 of file atmdat_outer_shell.cpp.

References DEBUG_ENTRY, and ioQQQ.

Referenced by atmdat_readin(), and RT_diffuse().

void atmdat_readin ( void  )

atmdat_readin read in some data files, but only if this is very first call

Todo:
2 - check these

Definition at line 127 of file atmdat_readin.cpp.

References t_struc::AccelGravity, t_struc::AccelTot, AddLine2Stack(), AddState2Stack(), ASSERT, atmdat, atmdat_outer_shell(), t_emission::Aul, C12O16Rotate, C13O16Rotate, cdEXIT, t_elementnames::chElementSym, t_struc::CO_molec, t_transition::Coll, t_struc::coolstr, t_collision::cs, cs1_flag_lev2, DEBUG_ENTRY, t_struc::DenMass, t_struc::DenParticles, t_atmdat::Density, t_struc::depth, t_struc::depth_last, t_struc::drad, t_struc::drad_last, t_struc::drad_x_fillfac, DynaCreateArrays(), t_struc::ednstr, eina(), t_atmdat::ElecTemp, elementnames, t_transition::Emis, t_atmdat::Emiss, t_transition::EnergyErg, t_transition::EnergyWN, ERG1CM, FeIICreate(), FFmtRead(), FILENAME_PATH_LENGTH_2, t_MeweCoef::g, t_quantumState::g, t_struc::gas_phase, t_struc::GasPressure, geometry, t_emission::gf, t_struc::H2_molec, t_struc::hden, t_struc::heatstr, Heavy, t_transition::Hi, t_struc::hiistr, t_struc::histr, HS_NZ, HyperfineCreate(), t_yield::init_yield(), INPUT_LINE_LENGTH, Singleton< t_yield >::Inst(), ionbal, t_quantumState::IonStg, ioQQQ, ipBE_LIKE, ipF_LIKE, ipIRON, ipLI_LIKE, t_emission::iRedisFun, t_iterations::iter_malloc, iterations, lgCORotateMalloc, lgFirstCall, t_ionbal::lgInnerShell_Gu06, t_ionbal::lgInnerShell_Kisielius, t_trace::lgTrace, LIMELM, lines_setup(), t_transition::Lo, MALLOC, MAX2, MeweCoef, MIN2, mole, N, N_H_MOLEC, nCORotate, t_atmdat::ncut, t_atmdat::nDensity, t_quantumState::nelem, t_geometry::nend, NHSDIM, nLevel1, NLINEHS, t_Heavy::nsShells, t_atmdat::ntemp, t_mole::num_comole_calc, nUTA, nWindLine, t_struc::nzlim, t_struc::o3str, open_data(), POW2, t_struc::pres_radiation_lines_curr, t_struc::pressure, read_whole_line(), struc, TauLine2, TauLines, t_struc::testr, TotalInsanity(), trace, TransitionJunk(), UTALines, t_struc::volstr, t_struc::windv, t_transition::WLAng, t_struc::xIonDense, and t_struc::xLyman_depth.

Referenced by cloudy(), DrvCaseBHS(), and ParseCompile().

Here is the call graph for this function:

void ChargTranEval ( double *  O_HIonRate)

atmdat fill in the HCharExcIonOf and Rec arrays with Kingdon's fitted CT with H,

Parameters:
O_HIonRate
Returns:
value is rate O ionizes 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

Definition at line 43 of file atmdat_char_tran.cpp.

References t_phycon::alnte, atmdat, co, conv, DEBUG_ENTRY, dense, t_atmdat::HCharExcIonOf, t_atmdat::HCharExcRecTo, t_atmdat::HCharExcRecTo_N0_2D, HCTIon(), HCTRecom(), t_atmdat::HeCharExcIonOf, t_atmdat::HeCharExcRecTo, HMRATE, ipALUMINIUM, ipARGON, ipCARBON, ipCHLORINE, ipHELIUM, ipIRON, ipLITHIUM, ipMAGNESIUM, ipMANGANESE, ipNEON, ipNICKEL, ipNITROGEN, ipOXYGEN, ipPHOSPHORUS, ipPOTASSIUM, ipSILICON, ipSODIUM, ipSULPHUR, ipTITANIUM, t_atmdat::lgCTOn, t_co::lgUMISTrates, LIMELM, MIN2, t_conv::nTotalIoniz, phycon, 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, t_phycon::tesqrd, and t_dense::xIonDense.

Referenced by ChargTranPun(), and ConvBase().

Here is the call graph for this function:

void ChargTranPun ( FILE *  ipPnunit,
char *  chPunch 
)
double ChargTranSumHeat ( void  )

Variable Documentation

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated for cloudy by doxygen 1.7.6.1