Cloudy
Spectral Synthesis Code for Astrophysics
|
Go to the source code of this file.
Functions | |
void | database_readin (void) |
void | dBaseTrim () |
void | dBaseUpdateCollCoeffs (void) |
void | dBase_solve (void) |
void | checkTransitionListOfLists (vector< TransitionList > &) |
TransitionList::iterator | findTrans_byQuantNumb (const string speciesLabel, const long n_hi, const long l_hi, const long S_hi, const long n_lo, const long l_lo, const long S_lo) |
TransitionList::iterator | findTrans_byWLAng (string speciesLabel, const double wl_Ang, double &wl_err) |
Variables | |
bool | lgStatesAdded |
bool | lgLinesAdded |
qList | AnonStates |
char ** | chSpecies |
vector< species > | dBaseSpecies |
vector< qList > | dBaseStates |
vector< multi_arr< int, 2 > > | ipdBaseTrans |
vector< TransitionList > | dBaseTrans |
multi_arr< CollRateCoeffArray, 2 > | AtmolCollRateCoeff |
vector< multi_arr < CollSplinesArray, 3 > > | AtmolCollSplines |
vector< StoutCollArray > | StoutCollData |
long int | nSpecies |
TransitionProxy::iterator | TauDummy |
multi_arr< int, 3 > | ipExtraLymanLines |
vector< vector< TransitionList > > | ExtraLymanLines |
TransitionList | UTALines |
long int | nLevel1 |
TransitionList | HFLines |
vector< vector< TransitionList > > | Transitions |
vector< TransitionList > | AllTransitions |
multi_arr< int, 2 > | ipFe2LevN |
TransitionList | Fe2LevN |
multi_arr< int, 3 > | ipSatelliteLines |
vector< vector< TransitionList > > | SatelliteLines |
bool | lgHydroAlloc |
const int | NWINDDIM = 6744 |
long | nWindLine |
TransitionList | TauLine2 |
vector< realnum > | cs1_flag_lev2 |
void checkTransitionListOfLists | ( | vector< TransitionList > & | ) |
Referenced by ContCreatePointers().
void database_readin | ( | void | ) |
References AllTransitions, ASSERT, atmdat, atmdat_CHIANTI_readin(), atmdat_LAMDA_readin(), atmdat_STOUT_readin(), AtmolCollRateCoeff, AtmolCollSplines, CHARS_SPECIES, t_atmdat::chCloudyChiantiFile, t_atmdat::chdBaseSources, t_cpu_i::chDirSeparator(), DataParser::checkEOL(), DataParser::checkMagic(), t_elementnames::chElementSym, t_atmdat::chLamdaFile, t_atmdat::chStoutFile, t_atmdat::chVersion, cpu, database_prep(), db_basename_to_spectral(), dBaseSpecies, dBaseStates, dBaseTrans, DEBUG_ENTRY, DEBUGSTATE, elementnames, DataParser::errorAbort(), ES_NONE, findspecies(), fixit, fprintf(), DataParser::getline(), DataParser::getToken(), DataParser::getTokenOptional(), t_cpu::i(), Singleton< t_version >::Inst(), ioQQQ, ipdBaseTrans, ipNCOLLIDER, t_save::ipSDSFile, t_atmdat::lgCalpgmOn, t_atmdat::lgChiantiOn, t_atmdat::lgdBaseSourceExists, t_atmdat::lgLamdaOn, t_prt::lgPrintTime, t_save::lgSDSOn, t_atmdat::lgStoutOn, LIMELM, notein(), nSpecies, null_mole, DataParser::open(), prt, save, set_fractionation(), speciesCheck(), states_nelemfill(), states_popfill(), states_propprint(), StoutCollData, TotalInsanity(), trim_levels(), and trimTrailingWhiteSpace().
Referenced by atmdat_readin().
void dBase_solve | ( | void | ) |
References abund, multi_arr< T, d, ALLOC, lgBC >::alloc(), ASSERT, atmdat, atoms, cdEXIT, colliders, CollisionZero(), ContNegative(), conv, CoolAdd(), t_oxy::d5007r, t_atoms::d5200r, t_oxy::d6300, dBaseAbund(), dBaseSpecies, dBaseStates, dBaseTrans, t_thermal::dCooldT, DEBUG_ENTRY, depart(), t_hydro::dstfe2lya, DumpLine(), t_thermal::elementcool, TransitionProxy::Emis(), EmLineZero(), energy(), TransitionProxy::EnergyWN(), t_ionbal::ExcitationGround, EXIT_FAILURE, fp_equal(), fprintf(), EmissionProxy::gf(), hydro, ionbal, ioQQQ, ipELECTRON, ipH1s, ipH2p, ipH_LIKE, ipHYDROGEN, ipIRON, t_atmdat::ipSpecIon, iso_sp, LEVEL_ACTIVE, LEVEL_INACTIVE, t_conv::lgSearch, LIMELM, max(), MAX2, MIN2, nSpecies, NULL, nzone, oxy, phycon, avx_ptr< T, lgBC >::ptr0(), t_atoms::rateMg2, secondaries, set_xIntensity(), t_thermal::setHeating(), setXtraRatesCa2(), setXtraRatesFe2(), setXtraRatesO1(), ShowMe(), SMALLFLOAT, t_phycon::sqrte, t_iso_sp::st, t_phycon::te, thermal, TotalInsanity(), t_iso_sp::trans(), vexp(), vzero(), t_secondaries::x12tot, and multi_arr< T, d, ALLOC, lgBC >::zero().
Referenced by CoolEvaluate().
void dBaseTrim | ( | ) |
References abund, conv, dBaseAbund(), dBaseSpecies, dBaseStates, dBaseTrans, DEBUG_ENTRY, dense, nSpecies, t_conv::nTotalIoniz, and t_dense::xNucleiTotal.
Referenced by CoolEvaluate().
void dBaseUpdateCollCoeffs | ( | void | ) |
References atmdat, AtmolCollRateCoeff, ChiantiCollRate(), CollisionProxy::col_str(), t_atmdat::collstrDefault, dBaseSpecies, dBaseTrans, DEBUG_ENTRY, ipATOM_H, ipATOM_HE, ipELECTRON, ipH2, ipH2_ORTHO, ipH2_PARA, ipHE_PLUS, ipNCOLLIDER, ipPROTON, LeidenCollRate(), t_atmdat::lgGbarOn, MakeCS(), nSpecies, phycon, CollisionProxy::rate_coef_ul(), CollisionProxy::rate_coef_ul_set(), t_phycon::sqrte, StoutCollRate(), t_phycon::te, and TotalInsanity().
Referenced by CoolEvaluate().
TransitionList::iterator findTrans_byQuantNumb | ( | const string | speciesLabel, |
const long | n_hi, | ||
const long | l_hi, | ||
const long | S_hi, | ||
const long | n_lo, | ||
const long | l_lo, | ||
const long | S_lo | ||
) |
findTrans_byQuantNumb Identify transition of a given species by its quantum numbers.
speciesLabel | (in) label of species, e.g., "H 1" |
n_hi | (in) principal quantum number of upper level in transition |
l_hi | (in) orbital angular momentum of upper level |
S_hi | (in) multiplicity of upper level |
n_lo | (in) principal quantum number of lower level |
l_lo | (in) orbital angular momentum of lower level |
S_lo | (in) multiplicity of lower level |
References AllTransitions.
TransitionList::iterator findTrans_byWLAng | ( | string | speciesLabel, |
const double | wl_Ang, | ||
double & | wl_err | ||
) |
findTrans_byWLAng Identify transition of a given species by wavelength.
speciesLabel | (in) label of species, e.g., "H 1" |
wavelength | (in) transition wavelength, in Angstrom |
wl_err | (out) error in wavelength match |
References AllTransitions.
vector<TransitionList> AllTransitions |
qList AnonStates |
Referenced by iso_allocate().
multi_arr<CollRateCoeffArray,2> AtmolCollRateCoeff |
Referenced by atmdat_LAMDA_readin(), database_readin(), dBaseUpdateCollCoeffs(), and LeidenCollRate().
vector< multi_arr<CollSplinesArray,3> > AtmolCollSplines |
Referenced by atmdat_CHIANTI_readin(), CHIANTI_Upsilon(), and database_readin().
char** chSpecies |
Referenced by TransitionProxy::chLabel().
vector<realnum> cs1_flag_lev2 |
Referenced by CoolDima(), and read_level2_lines().
vector<species> dBaseSpecies |
Referenced by atmdat_CHIANTI_readin(), atmdat_LAMDA_readin(), atmdat_STOUT_readin(), CHIANTI_Upsilon(), ContCreatePointers(), ConvIterCheck(), CoolEvaluate(), database_prep(), database_readin(), dBase_solve(), dBaseAbund(), dBaseTrim(), dBaseUpdateCollCoeffs(), ion_photo(), IterStart(), lines(), lines_general(), PresTotCurrent(), PrtLinePres(), RT_diffuse(), RT_line_all(), RT_line_driving(), RT_OTS(), RT_tau_inc(), SaveDo(), SaveLineStuff(), states_nelemfill(), states_popfill(), states_propprint(), TempChange(), and trim_levels().
vector<qList> dBaseStates |
vector<TransitionList> dBaseTrans |
Referenced by atmdat_CHIANTI_readin(), atmdat_LAMDA_readin(), atmdat_STOUT_readin(), chkCaHeps(), ContCreatePointers(), ConvIterCheck(), CoolSum(), database_prep(), database_readin(), dBase_solve(), dBaseTrim(), dBaseUpdateCollCoeffs(), FindNeg(), FndLineHt(), lines(), PresTotCurrent(), PrtLinePres(), prtmet(), RT_diffuse(), RT_line_all(), RT_line_driving(), RT_OTS(), RT_tau_inc(), RT_tau_init(), RT_tau_reset(), SaveDo(), SaveLineData(), SaveLineStuff(), states_nelemfill(), and trim_levels().
vector<vector<TransitionList> > ExtraLymanLines |
Referenced by ContCreatePointers(), iso_allocate(), iso_create(), lines(), RT_line_all(), RT_line_driving(), RT_tau_inc(), RT_tau_init(), RT_tau_reset(), and SaveLineStuff().
TransitionList Fe2LevN |
TransitionList HFLines |
extern transition TauLines[NTAULINES+1]; these are the public parts of the hyperfine structure line transfer info data gathered from hyperfine.dat using routines in hyperfine.c the structure containing the hfs line information
Referenced by cdTemp(), ContCreatePointers(), CoolHyperfine(), FindNeg(), FndLineHt(), H21_cm_pops(), HyperfineCreate(), HyperfineCS(), iter_end_check(), lines(), lines_setup(), PresTotCurrent(), PrtComment(), PrtFinal(), PrtLinePres(), prtmet(), radius_increment(), RT_diffuse(), RT_line_all(), RT_line_driving(), RT_tau_inc(), RT_tau_init(), RT_tau_reset(), SaveDo(), and SaveLineData().
vector< multi_arr<int,2> > ipdBaseTrans |
Referenced by atmdat_CHIANTI_readin(), atmdat_LAMDA_readin(), atmdat_STOUT_readin(), database_readin(), and trim_levels().
multi_arr<int,3> ipExtraLymanLines |
this is the set of extra lines, ExtraLymanLines[ipISO][ipZ][n]
Referenced by ContCreatePointers(), iso_allocate(), iso_create(), lines(), RT_line_all(), RT_line_driving(), RT_tau_inc(), RT_tau_init(), RT_tau_reset(), and SaveLineStuff().
multi_arr<int,2> ipFe2LevN |
multi_arr<int,3> ipSatelliteLines |
lines forming from doubly excited states
Referenced by ContCreatePointers(), DoSatelliteLines(), iso_allocate(), iso_satellite(), iso_satellite_update(), RT_diffuse(), RT_line_all(), RT_line_driving(), RT_tau_inc(), RT_tau_init(), RT_tau_reset(), and SaveLineData().
bool lgHydroAlloc |
this will be set true once space is allocated for the HydroLines array. from then on any HYDROGENIC LEVELS command will be ignored, this is set to false in cddefines.c
Referenced by iso_create(), and ParseDatabaseISO().
bool lgLinesAdded |
Referenced by TransitionProxy::AddLine2Stack(), and ContCreatePointers().
bool lgStatesAdded |
Referenced by TransitionProxy::AddHiState(), TransitionProxy::AddLoState(), and ContCreatePointers().
long int nLevel1 |
this is the number of level 1 lines, and is set in atmdat_readin by counter number of data lines in level1.dat
long int nSpecies |
Referenced by atmdat_readin(), ContCreatePointers(), ConvIterCheck(), CoolEvaluate(), CoolSum(), database_readin(), dBase_solve(), dBaseTrim(), dBaseUpdateCollCoeffs(), FindNeg(), FndLineHt(), IterStart(), lines(), lines_general(), PresTotCurrent(), PrtLinePres(), prtmet(), RT_diffuse(), RT_line_all(), RT_line_driving(), RT_OTS(), RT_tau_inc(), RT_tau_init(), RT_tau_reset(), SaveDo(), SaveLineData(), SaveLineStuff(), states_nelemfill(), states_popfill(), states_propprint(), and TempChange().
const int NWINDDIM = 6744 |
number of level 2 lines, dim for WindLine array
long nWindLine |
this is set to 0 with no atom_level2 command, normally equal to NWINDDIM, definition is in cddefines.c
Referenced by atmdat_readin(), ContCreatePointers(), CoolDima(), CoolSum(), FindNeg(), FndLineHt(), lines(), lines_setup(), ParseDont(), PresTotCurrent(), PrtColumns(), PrtComment(), PrtLinePres(), prtmet(), read_level2_lines(), RT_diffuse(), RT_line_all(), RT_line_driving(), RT_OTS(), RT_tau_inc(), RT_tau_init(), RT_tau_reset(), SaveLineData(), and SaveLineStuff().
vector<vector<TransitionList> > SatelliteLines |
vector< StoutCollArray > StoutCollData |
Referenced by atmdat_STOUT_readin(), database_readin(), and StoutCollRate().
TransitionProxy::iterator TauDummy |
this is a dummy optical depth array for non-existant lines
TransitionList TauLine2 |
pointers to element and ion, TauLine2[line number][pointer within vector]
Referenced by ContCreatePointers(), CoolDima(), CoolSum(), FindNeg(), FndLineHt(), lines(), lines_setup(), PresTotCurrent(), PrtComment(), PrtLinePres(), prtmet(), read_level2_lines(), RT_diffuse(), RT_line_all(), RT_line_driving(), RT_OTS(), RT_tau_inc(), RT_tau_init(), RT_tau_reset(), SaveLineData(), and SaveLineStuff().
vector<vector<TransitionList> > Transitions |
main line arrays for hydrogenic ions<br>
first dimension is atomic number
second dim is upper level
third dim is lower level
nta dim is set of pointers for quantities within line transfer arrays
in the forc translation, the upper level was too low by 1, since the
fortran was starting at 1. the lower dim was not changed by translation
since it started from ip1s = 0
any place where the third dim has -1 is probably a remnant from forc and is wrong
Referenced by iso_allocate().
TransitionList UTALines |
the set of inner shell lines
Referenced by ContCreatePointers(), lines(), lines_setup(), prtmet(), read_UTA_lines(), RT_line_all(), RT_line_driving(), RT_tau_inc(), RT_tau_init(), RT_tau_reset(), SaveLineData(), SaveLineStuff(), and UpdateUTAs().