| cloudy
    trunk
    | 


Go to the source code of this file.
| Data Structures | |
| class | CollRateCoeffArray | 
| class | CollSplinesArray | 
| struct | StoutColls | 
| class | StoutCollArray | 
| struct | t_atmdat | 
| class | Funct | 
| class | FunctLAMDA | 
| class | FunctDiatoms | 
| Macros | |
| #define | NHSDIM 15 | 
| #define | NLINEHS 300 | 
| #define | HS_NZ 8 | 
| #define | NHCSTE 8 | 
| #define | NUM_HS98_DATA_POINTS 811 | 
| Typedefs | |
| typedef Funct * | FunctPtr | 
| Functions | |
| void | LoadIsotopes () | 
| 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) | 
| string | db_comment_tran_levels (long ipLoFile, long ipHiFile) | 
| 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 HS_NZ 8 | 
number of elements that can be read in
Definition at line 267 of file atmdat.h.
Referenced by atmdat_HS_caseB(), IterStart(), lines_hydro(), and read_Hummer_Storey().
| #define NHCSTE 8 | 
number of temperature points in h_coll_str arrays
Definition at line 268 of file atmdat.h.
Referenced by HCSAR_interp().
| #define NHSDIM 15 | 
used for following vectors
Definition at line 265 of file atmdat.h.
Referenced by read_Hummer_Storey().
| #define NLINEHS 300 | 
dimension of array with lines
Definition at line 266 of file atmdat.h.
Referenced by atmdat_HS_caseB(), and read_Hummer_Storey().
| #define NUM_HS98_DATA_POINTS 811 | 
Definition at line 269 of file atmdat.h.
Referenced by GetHS98CrossSection(), and read_SH98_He1_cross_sections().
| double atmdat_2phot_shapefunction | ( | double | EbyE2nu, | 
| long | ipISO, | ||
| long | nelem | ||
| ) | 
atmdat_2phot_shapefunction two photon emission function for all atomic and ionic species
| EbyE2nu | |
| ipISO | |
| nelem | 
Definition at line 230 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, fprintf(), ionbal, ioQQQ, t_save::ioRecom, t_save::lgioRecom, t_ionbal::lgNoCota, t_trace::lgTrace, t_trace::lgTrace3Bod, LIMELM, MAX2, MIN2, MIN3, t_atmdat::nsbig, phycon, save, t_phycon::te, and trace.
Referenced by ConvBase().

| void atmdat_CHIANTI_readin | ( | long | intNS, | 
| char * | chFileName | ||
| ) | 
atmdat_CHIANTI_readin read in data from CHIANTI database files
| intNS | |
| chFileName | 
Definition at line 1072 of file atmdat_chianti.cpp.
References AS_DATA_ONLY_TRY, ASSERT, atmdat, AtmolCollSplines, BIGDOUBLE, cdEXIT, CHARS_SPECIES, db_comment_tran_levels(), dBaseSpecies, dBaseStates, dBaseTrans, DEBUG_ENTRY, DEBUGSTATE, energy(), ENERGY_MIN_WN, EXIT_FAILURE, FILENAME_PATH_LENGTH_2, fixit, fprintf(), GetGF(), getSortedLevel(), ioQQQ, ipdBaseTrans, ipELECTRON, ipNCOLLIDER, ipPROTON, t_atmdat::lgChiantiExp, t_atmdat::lgChiantiPrint, t_trace::lgTrace, MALLOC, max(), MAX2, MIN2, MIN3, mode_r, t_atmdat::nChiantiMaxLevels, t_atmdat::nChiantiMaxLevelsFe, nMatch(), open_data(), RefIndex(), setProperties(), spectral_to_chemical(), spline(), STATIC_ASSERT, swap(), tolower(), TotalInsanity(), trace, and uncaps().
Referenced by database_readin().

| double atmdat_dielrec_fe | ( | long int | ion, | 
| double | t | ||
| ) | 
atmdat_dielrec_fe Dielectronic recombination rates for Fe from Arnaud & Raymond 1992
| ion | |
| t | 
Definition at line 9 of file atmdat_dielrec_fe.cpp.
References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, fprintf(), ioQQQ, powpq(), and sexp().
Referenced by ion_recom_calculate().

| 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.
| 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, exp10(), fp_equal(), HS_NZ, t_atmdat::ncut, t_atmdat::nDensity, NLINEHS, t_atmdat::ntemp, x1, and x2.
Referenced by DrvCaseBHS(), and lines_hydro().

| void atmdat_LAMDA_readin | ( | long | intNS, | 
| char * | chFileName | ||
| ) | 
atmdat_LAMDA_readin read in data from LAMDA database files
| intNS | |
| chFileName | 
Definition at line 28 of file atmdat_lamda.cpp.
References ASSERT, atmdat, AtmolCollRateCoeff, cdEXIT, check_LAMDA_comment(), db_comment_tran_levels(), dBaseSpecies, dBaseStates, dBaseTrans, DEBUG_ENTRY, DEBUGSTATE, t_mesh::emm(), energy(), EXIT_FAILURE, FFmtRead(), FILENAME_PATH_LENGTH_2, fprintf(), GetGF(), ioQQQ, ipATOM_H, ipATOM_HE, ipdBaseTrans, ipELECTRON, ipH2, ipH2_ORTHO, ipH2_PARA, ipNCOLLIDER, isnan, t_atmdat::lgLamdaPrint, t_trace::lgTrace, MAX2, MIN3, t_atmdat::nLamdaMaxLevels, open_data(), read_whole_line(), ReadCollisionRateTable(), RefIndex(), rfield, setProperties(), SMALLFLOAT, TotalInsanity(), and trace.
Referenced by database_readin().

| 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
| [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 | 
Definition at line 8 of file atmdat_outer_shell.cpp.
References DEBUG_ENTRY, fprintf(), 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 78 of file atmdat_readin.cpp.
References ASSERT, atmdat, atmdat_2phot_setSplineCoefs(), atmdat_outer_shell(), cdEXIT, database_readin(), DEBUG_ENTRY, DynaCreateArrays(), EXIT_FAILURE, fprintf(), Heavy, HyperfineCreate(), init_struc(), t_yield::init_yield(), Singleton< t_yield >::Inst(), ioQQQ, t_iterations::iter_malloc, iterations, t_atmdat::lgChiantiHybrid, t_atmdat::lgChiantiOn, t_atmdat::lgInnerShellLine_on, t_atmdat::lgLamdaOn, t_atmdat::lgStoutHybrid, t_atmdat::lgStoutOn, LIMELM, lines_setup(), mole_global, t_iterations::nend, nSpecies, t_Heavy::nsShells, t_mole_global::num_total, nWindLine, t_struc::nzlim, read_Helike_cross_sections(), read_Hummer_Storey(), read_level2_lines(), read_mewe_gbar(), read_SH98_He1_cross_sections(), read_UTA_lines(), struc, and TotalInsanity().
Referenced by cloudy(), DrvCaseBHS(), and ParseCompile().

| void atmdat_STOUT_readin | ( | long | intNS, | 
| char * | chFileName | ||
| ) | 
atmdat_STOUT_readin read in data from STOUT database files
| intNS | |
| chFileName | 
Bohr Magneton, 9.2740096e-21 ergs/G
Definition at line 74 of file atmdat_chianti.cpp.
References ASSERT, atmdat, t_atmdat::aulThreshold, AulTTError(), caps(), cdEXIT, CHARS_SPECIES, db_comment_tran_levels(), dBaseSpecies, dBaseStates, dBaseTrans, DEBUG_ENTRY, DEBUGSTATE, eina(), ENERGY_MIN_WN, EXIT_FAILURE, FFmtRead(), FILENAME_PATH_LENGTH_2, fprintf(), GetGF(), getSortedLevel(), ioQQQ, ipALPHA, ipATOM_H, ipATOM_HE, ipdBaseTrans, ipELECTRON, ipH2, ipH2_ORTHO, ipH2_PARA, ipHE_PLUS, ipNCOLLIDER, ipPROTON, t_atmdat::lgStoutPrint, t_trace::lgTrace, MALLOC, MAX2, MIN2, MIN3, t_atmdat::nDefaultPhotoLevelsFe, nMatch(), t_atmdat::nStoutMaxLevels, t_atmdat::nStoutMaxLevelsFe, open_data(), pow(), pow2(), pow3(), pow4(), powi(), read_whole_line(), RefIndex(), setProperties(), spectral_to_chemical(), StoutCollData, swap(), tolower(), TotalInsanity(), trace, and uncaps().
Referenced by database_readin().

| void ChargTranEval | ( | void | ) | 
atmdat fill in the CharExcIonOf[ipHYDROGEN] and Rec arrays with Kingdon's fitted CT with H,
Definition at line 43 of file atmdat_char_tran.cpp.
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().

| void ChargTranPun | ( | FILE * | ipPnunit, | 
| char * | chSave | ||
| ) | 
save charge transfer rate coefficients
| ipPnunit | |
| chSave | 
Definition at line 1728 of file atmdat_char_tran.cpp.
References abund, ASSERT, atmdat, cdEXIT, t_atmdat::CharExcIonOf, t_atmdat::CharExcRecTo, ChargTranEval(), t_elementnames::chElementSym, t_elementnames::chIonStage, DEBUG_ENTRY, dense, elementnames, EXIT_FAILURE, fprintf(), HCTIon(), HCTRecom(), Heavy, ion_trim_untrim(), t_dense::IonHigh, t_dense::IonLow, ioQQQ, ipHELIUM, ipHYDROGEN, t_abund::lgAGN, LIMELM, phycon, t_phycon::te, TempChange(), and t_Heavy::Valence_IP_Ryd.
Referenced by SaveDo().

| double ChargTranSumHeat | ( | void | ) | 
sum up the charge transfer heating
Definition at line 568 of file atmdat_char_tran.cpp.
References ASSERT, atmdat, t_atmdat::CharExcIonOf, t_atmdat::CharExcRecTo, CTIonData, CTRecombData, DEBUG_ENTRY, dense, fixit, fprintf(), FRAC, t_atmdat::HCharCoolMax, t_atmdat::HCharHeatMax, t_atmdat::HCharHeatOn, t_thermal::htot, ioQQQ, ipH1s, ipH_LIKE, ipHELIUM, ipHYDROGEN, ipLITHIUM, iso_sp, lgCTDataDefined, LIMELM, MAX2, MIN2, t_iso_sp::st, thermal, and t_dense::xIonDense.
Referenced by ConvBase().

| double CHIANTI_Upsilon | ( | long | , | 
| long | , | ||
| long | , | ||
| long | , | ||
| double | |||
| ) | 
CHIANTI_Upsilon converts Chianti collision splines to collision strengths
Definition at line 900 of file species2.cpp.
References ASSERT, AtmolCollSplines, dBaseSpecies, DEBUG_ENTRY, DEBUGSTATE, exp10(), fprintf(), ioQQQ, linint(), splint(), and TotalInsanity().
Referenced by ChiantiCollRate(), and SaveDo().

| 
 | inline | 
Definition at line 515 of file atmdat.h.
Referenced by atmdat_CHIANTI_readin(), atmdat_LAMDA_readin(), atmdat_STOUT_readin(), and iso_comment_tran_levels().
| double InterpCollRate | ( | const CollRateCoeffArray & | rate_table, | 
| const long & | ipHi, | ||
| const long & | ipLo, | ||
| const double & | ftemp | ||
| ) | 
Definition at line 187 of file atmdat.cpp.
References ASSERT, CollRateCoeffArray::collrates, DEBUG_ENTRY, isnan, linint(), and CollRateCoeffArray::temps.
Referenced by diatomics::H2_CollidRateEvalOne(), and LeidenCollRate().

| void LoadIsotopes | ( | ) | 
LoadIsotopes read in the nuclear isotope data and allocate space
Definition at line 9 of file isotopes.cpp.
References abund, AS_LOCAL_ONLY_TRY, ASSERT, cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, FFmtRead(), FILENAME_PATH_LENGTH_2, fprintf(), INPUT_LINE_LENGTH, ioQQQ, t_abund::IsoAbn, open_data(), read_whole_line(), and isotope::setData().
Referenced by cloudy(), and grid_do().

| void ReadCollisionRateTable | ( | CollRateCoeffArray & | coll_rate_table, | 
| FILE * | io, | ||
| FunctPtr | GetIndices, | ||
| long | nMolLevs, | ||
| long | nTemps = -1, | ||
| long | nTrans = -1 | ||
| ) | 
Definition at line 66 of file atmdat.cpp.
References multi_arr< T, d, ALLOC, lgBC >::alloc(), ASSERT, CollRateCoeffArray::collrates, DEBUG_ENTRY, FFmtRead(), INPUT_LINE_LENGTH, read_whole_line(), multi_arr< T, d, ALLOC, lgBC >::reserve(), multi_arr< T, d, ALLOC, lgBC >::size(), CollRateCoeffArray::temps, and multi_arr< T, d, ALLOC, lgBC >::zero().
Referenced by atmdat_LAMDA_readin(), and diatomics::H2_CollidRateRead().

| t_atmdat atmdat | 
Definition at line 6 of file atmdat.cpp.
Referenced by atmdat_3body(), atmdat_CHIANTI_readin(), atmdat_HS_caseB(), atmdat_LAMDA_readin(), atmdat_readin(), atmdat_STOUT_readin(), ChargTranEval(), ChargTranPun(), ChargTranSumHeat(), chkCaHeps(), t_ADfA::coll_ion_wrapper(), ConvBase(), CoolDima(), CoolEvaluate(), database_prep(), database_readin(), DatabasePrintReference(), dBase_solve(), dBaseUpdateCollCoeffs(), fill_array(), GetStandardHeLines(), GrainChrgTransferRates(), HCTRecom(), InitCoreload(), InitDefaultsPreparse(), ion_CX(), ion_photo(), ion_recomb(), IonHydro(), iso_charge_transfer_update(), iso_level(), IterStart(), lgCheckMonitors(), lines(), lines_helium(), lines_hydro(), mole_eval_sources(), ParseCoronal(), ParseDatabase(), ParseDont(), ParseSet(), PrintRates(), PrtComment(), PrtFinal(), read_Hummer_Storey(), read_UTA_lines(), RT_line_all(), RT_line_driving(), states_nelemfill(), and trim_levels().
| double**** HS_He1_Energy | 
Definition at line 61 of file atmdat.cpp.
Referenced by GetHS98CrossSection(), and read_SH98_He1_cross_sections().
| double**** HS_He1_Xsectn | 
Definition at line 60 of file atmdat.cpp.
Referenced by GetHS98CrossSection(), and read_SH98_He1_cross_sections().
| double***** OP_Helike_Energy | 
Definition at line 63 of file atmdat.cpp.
Referenced by cross_section(), and read_Helike_cross_sections().
| long**** OP_Helike_NumPts | 
Definition at line 64 of file atmdat.cpp.
Referenced by cross_section(), and read_Helike_cross_sections().
| double***** OP_Helike_Xsectn | 
Definition at line 62 of file atmdat.cpp.
Referenced by cross_section(), and read_Helike_cross_sections().
 1.8.5
 1.8.5