/home66/gary/public_html/cloudy/c13_branch/source/atmdat.h File Reference

#include "h2_priv.h"
Include dependency graph for atmdat.h:

Go to the source code of this file.

Data Structures

struct  t_atmdat
class  t_ADfA
class  Funct
class  FunctLAMDA
class  FunctDiatoms

Defines

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

Typedefs

typedef FunctFunctPtr

Enumerations

enum  phfit_version { PHFIT_UNDEF, PHFIT95, PHFIT96 }

Functions

double atmdat_2phot_shapefunction (double EbyE2nu, long ipISO, long nelem)
void atmdat_readin (void)
void atmdat_STOUT_readin (long intNS, char *chFileName)
void atmdat_CHIANTI_readin (long intNS, char *chFileName)
void atmdat_LAMDA_readin (long intNS, char *chFileName)
void atmdat_outer_shell (long int iz, long int in, long int *imax, long int *ig0, long int *ig1)
void ChargTranEval (void)
double ChargTranSumHeat (void)
void ChargTranPun (FILE *ipPnunit, char *chSave)
double CHIANTI_Upsilon (long, long, long, long, double)
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 ReadCollisionRateTable (CollRateCoeffArray &coll_rate_table, FILE *io, FunctPtr GetIndices, long nMolLevs, long nTemps=-1, long nTrans=-1)
double InterpCollRate (const CollRateCoeffArray &rate_table, const long &ipHi, const long &ipLo, const double &ftemp)

Variables

double **** HS_He1_Xsectn
double **** HS_He1_Energy
double ***** OP_Helike_Xsectn
double ***** OP_Helike_Energy
long **** OP_Helike_NumPts
t_atmdat atmdat

Define Documentation

#define HS_NZ   8

number of elements that can be read in

Definition at line 125 of file atmdat.h.

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

#define NHCSTE   8

number of temperature points in h_coll_str arrays

Definition at line 126 of file atmdat.h.

Referenced by HCSAR_interp().

#define NHSDIM   15

used for following vectors

Definition at line 123 of file atmdat.h.

Referenced by atmdat_readin().

#define NLINEHS   300

dimension of array with lines

Definition at line 124 of file atmdat.h.

Referenced by atmdat_HS_caseB(), and atmdat_readin().

#define NUM_HS98_DATA_POINTS   811

Definition at line 127 of file atmdat.h.

Referenced by GetHS98CrossSection(), and read_SH98_He1_cross_sections().


Typedef Documentation

typedef Funct* FunctPtr

Definition at line 419 of file atmdat.h.


Enumeration Type Documentation

Enumerator:
PHFIT_UNDEF 
PHFIT95 
PHFIT96 

Definition at line 289 of file atmdat.h.


Function Documentation

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 234 of file atmdat_2photon.cpp.

Referenced by ContCreatePointers(), and TwoPhotonSetup().

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, dense, t_dense::eden, ionbal, ioQQQ, t_save::ioRecom, t_save::lgioRecom, t_ionbal::lgNoCota, t_trace::lgTrace, t_trace::lgTrace3Bod, LIMELM, MIN2, MIN3, t_atmdat::nsbig, phycon, save, t_phycon::te, and trace.

Referenced by ConvBase().

Here is the call graph for this function:

void atmdat_CHIANTI_readin ( long  intNS,
char *  chFileName 
)
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, EXIT_FAILURE, ioQQQ, pow(), sexp(), and TE1RYD.

Referenced by ion_recom_calculate().

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:
iHi the principal quantum numbers, .
iLo upper and lower levels in any order
iZ charge of ion, only 1 and 2 for now
TempIn temperature, must lie within the range of the table, which depends on the ion charge, and is 500 - 30,000K for hydrogen
DenIn the density and must lie within the range of the table
chCase case - '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, EXIT_FAILURE, fp_equal(), HS_NZ, t_atmdat::ncut, t_atmdat::nDensity, NLINEHS, t_atmdat::ntemp, pow(), x1, and x2.

Referenced by DrvCaseBHS(), and lines_hydro().

Here is the call graph for this function:

void atmdat_LAMDA_readin ( long  intNS,
char *  chFileName 
)
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] iz atomic number from 1 to 30
[in] in number of electrons from 1 to iz
[out] *imax number of the outer shell
[out] *ig0 statistical weight of (iz,in) ground state
[out] *ig1 statistical 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

Definition at line 149 of file atmdat_readin.cpp.

References t_struc::AccelGravity, t_struc::AccelTotalOutward, AllTransitions, ASSERT, atmdat, atmdat_2phot_setSplineCoefs(), atmdat_outer_shell(), EmissionProxy::Aul(), EmissionProxy::AutoIonizFrac(), TransitionList::back(), TransitionList::begin(), cdEXIT, t_elementnames::chElementSym, t_struc::coolstr, cs1_flag_lev2, EmissionProxy::dampXvel(), database_readin(), DEBUG_ENTRY, t_struc::DenMass, t_struc::DenParticles, dense, t_atmdat::Density, t_struc::depth, t_struc::depth_last, dprintf(), t_struc::drad, t_struc::drad_last, t_struc::drad_x_fillfac, DynaCreateArrays(), t_struc::ednstr, eina(), t_atmdat::ElecTemp, elementnames, TransitionProxy::Emis(), TransitionList::Emis(), t_atmdat::Emiss, TransitionProxy::EnergyWN(), EXIT_FAILURE, EXIT_SUCCESS, f_cutoff, FeIICreate(), FFmtRead(), FILENAME_PATH_LENGTH_2, fixit(), fp_equal(), fp_equal_tol(), fudge(), t_MeweCoef::g, g, t_struc::gas_phase, t_struc::GasPressure, geometry, GetGF(), EmissionProxy::gf(), t_struc::H2_abund, t_struc::hden, t_struc::heatstr, Heavy, TransitionProxy::Hi(), t_struc::hiistr, t_struc::histr, HS_NZ, HyperfineCreate(), t_yield::init_yield(), InitTransition(), Singleton< t_yield >::Inst(), ionbal, ioQQQ, ipAL_LIKE, ipHYDROGEN, ipIRON, ipLI_LIKE, ipMG_LIKE, ipNA_LIKE, ipPRD, EmissionProxy::iRedisFun(), IS_L1_SHELL, IS_L2_SHELL, iso_sp, t_iterations::iter_malloc, iterations, t_atmdat::lgChiantiHybrid, t_atmdat::lgChiantiOn, t_dense::lgElmtOn, t_ionbal::lgInnerShell_Gu06, t_ionbal::lgInnerShell_Kisielius, t_atmdat::lgLamdaOn, t_atmdat::lgStoutHybrid, t_atmdat::lgStoutOn, t_trace::lgTrace, LIMELM, lines_setup(), TransitionProxy::Lo(), MALLOC, MAX2, MeweCoef, mole_global, t_struc::molecules, t_atmdat::ncut, t_atmdat::nDensity, t_geometry::nend, NHSDIM, nint(), NISO, nLevel1, NLINEHS, nSpecies, t_Heavy::nsShells, t_atmdat::ntemp, t_mole_global::num_calc, t_mole_global::num_total, t_iso_sp::numLevels_max, nUTA, nWindLine, t_struc::nzlim, t_struc::o3str, open_data(), PI4, TransitionList::pop_back(), pow(), t_struc::pres_radiation_lines_curr, t_struc::pressure, TransitionList::push_back(), read_Helike_cross_sections(), read_SH98_He1_cross_sections(), read_whole_line(), ReadBadnellAIData(), TransitionList::reserve(), TransitionList::resize(), TransitionList::size(), t_struc::StatesElem, strstr_s(), struc, TauLine2, TauLines, t_struc::testr, TotalInsanity(), trace, UTALines, t_struc::volstr, t_struc::windv, TransitionProxy::WLAng(), t_struc::xIonDense, and t_struc::xLyman_depth.

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

Here is the call graph for this function:

void atmdat_STOUT_readin ( long  intNS,
char *  chFileName 
)
void ChargTranEval ( void   ) 

atmdat fill in the HCharExcIonOf 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

Definition at line 44 of file atmdat_char_tran.cpp.

References t_phycon::alnte, atmdat, conv, DEBUG_ENTRY, fp_equal(), 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_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 
)
double ChargTranSumHeat ( void   ) 
double CHIANTI_Upsilon ( long  ,
long  ,
long  ,
long  ,
double   
)

CHIANTI_Upsilon converts Chianti collision splines to collision strengths

Definition at line 692 of file species2.cpp.

References ASSERT, AtmolCollSplines, t_CollSplinesArray::collspline, dBaseSpecies, DEBUG_ENTRY, DEBUGSTATE, t_CollSplinesArray::EnergyDiff, t_CollSplinesArray::intTranType, ioQQQ, linint(), t_CollSplinesArray::nSplinePts, pow(), t_CollSplinesArray::ScalingParam, t_CollSplinesArray::SplineSecDer, and TotalInsanity().

Referenced by ChiantiCollRate(), and SaveDo().

Here is the call graph for this function:

double InterpCollRate ( const CollRateCoeffArray rate_table,
const long &  ipHi,
const long &  ipLo,
const double &  ftemp 
)

Definition at line 135 of file atmdat.cpp.

References ASSERT, t_CollRatesArray::collrates, DEBUG_ENTRY, isnan, linint(), and t_CollRatesArray::temps.

Referenced by diatomics::H2_CollidRateEvalOne(), and LeidenCollRate().

Here is the call graph for this function:

void ReadCollisionRateTable ( CollRateCoeffArray coll_rate_table,
FILE *  io,
FunctPtr  GetIndices,
long  nMolLevs,
long  nTemps = -1,
long  nTrans = -1 
)

Variable Documentation

double**** HS_He1_Energy

Definition at line 9 of file atmdat.cpp.

Referenced by GetHS98CrossSection(), and read_SH98_He1_cross_sections().

double**** HS_He1_Xsectn

Definition at line 8 of file atmdat.cpp.

Referenced by GetHS98CrossSection(), and read_SH98_He1_cross_sections().

double***** OP_Helike_Energy

Definition at line 11 of file atmdat.cpp.

Referenced by cross_section(), and read_Helike_cross_sections().

long**** OP_Helike_NumPts

Definition at line 12 of file atmdat.cpp.

Referenced by cross_section(), and read_Helike_cross_sections().

double***** OP_Helike_Xsectn

Definition at line 10 of file atmdat.cpp.

Referenced by cross_section(), and read_Helike_cross_sections().

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 15 Nov 2012 for cloudy by  doxygen 1.6.1