#include "cddefines.h"
#include "atmdat.h"
#include "dense.h"
#include "elementnames.h"
#include "helike.h"
#include "helike_einsta.h"
#include "hydro_bauman.h"
#include "hydrogenic.h"
#include "hydroeinsta.h"
#include "iso.h"
#include "lines_service.h"
#include "opacity.h"
#include "phycon.h"
#include "physconst.h"
#include "secondaries.h"
#include "taulines.h"
#include "thirdparty.h"
Include dependency graph for iso_create.cpp:
Go to the source code of this file.
Functions | |
STATIC void | iso_zero (void) |
STATIC void | iso_allocate (void) |
STATIC void | iso_assign_quantum_numbers (void) |
STATIC void | FillExtraLymanLine (transition *t, long ipISO, long nelem, long nHi) |
STATIC double | iso_state_lifetime (long ipISO, long nelem, long n, long l) |
STATIC void | iso_satellite (void) |
void | iso_create (void) |
void | iso_cascade (long ipISO, long nelem) |
void | iso_satellite_update (void) |
long | iso_get_total_num_levels (long ipISO, long nmaxResolved, long numCollapsed) |
void | iso_update_num_levels (long ipISO, long nelem) |
void | iso_collapsed_bnl_set (long ipISO, long nelem) |
void | iso_collapsed_bnl_print (long ipISO, long nelem) |
void | iso_collapsed_Aul_update (long ipISO, long nelem) |
void | iso_collapsed_lifetimes_update (long ipISO, long nelem) |
Variables | |
char | chL [21] = {'S','P','D','F','G','H','I','K','L','M','N','O','Q','R','T','U','V','W','X','Y','Z'} |
STATIC void FillExtraLymanLine | ( | transition * | t, | |
long | ipISO, | |||
long | nelem, | |||
long | nHi | |||
) |
Definition at line 1122 of file iso_create.cpp.
References abscf(), t_emission::Aul, t_emission::dampXvel, DEBUG_ENTRY, t_transition::Emis, EN1RYD, t_transition::EnergyErg, t_transition::EnergyK, t_transition::EnergyWN, t_quantumState::g, GetGF(), t_emission::gf, H_Einstein_A(), t_transition::Hi, t_quantumState::IonStg, ioQQQ, t_transition::ipCont, t_emission::ipFine, ipH_LIKE, ipHELIUM, t_iso::ipResoRedist, t_emission::iRedisFun, iso, iso_state_lifetime(), t_quantumState::lifetime, t_transition::Lo, t_quantumState::nelem, t_iso::nLyaLevel, t_emission::opacity, PI4, POW2, RefIndex(), RYD_INF, StatesElem, TE1RYD, WAVNRYD, t_transition::WLAng, and t_iso::xIsoLevNIonRyd.
Referenced by iso_create().
Here is the call graph for this function:
STATIC void iso_allocate | ( | void | ) |
Definition at line 565 of file iso_create.cpp.
References ASSERT, t_iso::Boltzmann, t_iso::BranchRatio, t_iso::CachedAs, t_iso::CascadeProb, DEBUG_ENTRY, dense, t_iso::DielecRecombVsTemp, ipH_LIKE, t_iso::ipOpac, iso, t_dense::lgElmtOn, MAX2, t_iso::n_HighestResolved_max, t_iso::nCollapsed_max, t_iso::nLyman, t_iso::nLyman_malloc, NUM_DR_TEMPS, t_iso::numLevels_malloc, t_iso::numLevels_max, t_iso::QuantumNumbers2Index, t_iso::RadRecomb, multi_arr< T, d, ALLOC, lgBC >::reserve(), and t_iso::strkar.
Referenced by iso_create().
Here is the call graph for this function:
STATIC void iso_assign_quantum_numbers | ( | void | ) |
Definition at line 843 of file iso_create.cpp.
References DEBUG_ENTRY, dense, ipH_LIKE, ipHELIUM, iso, t_dense::lgElmtOn, t_iso::n_HighestResolved_max, t_iso::QuantumNumbers2Index, and StatesElem.
Referenced by iso_create().
void iso_cascade | ( | long | ipISO, | |
long | nelem | |||
) |
iso_cascade - calculate cascade probabilities, branching ratios, and associated errors
ipISO | ||
nelem |
Cascade probabilities are as defined in Robbins 68, generalized here for cascade probability for any iso sequence. >>refer He triplets Robbins, R.R. 1968, ApJ 151, 497R >>refer He triplets Robbins, R.R. 1968a, ApJ 151, 511R
Definition at line 1242 of file iso_create.cpp.
References ASSERT, t_iso::BranchRatio, t_iso::CascadeProb, DEBUG_ENTRY, t_iso::Error, ipH_LIKE, IPRAD, iso, L_, t_opac::lgCaseB, t_iso::lgRandErrGen, MALLOC, N_, t_iso::n_HighestResolved_max, t_iso::nCollapsed_max, t_iso::numLevels_max, opac, S_, t_iso::SigmaAtot, t_iso::SigmaCascadeProb, t_iso::SmallA, and Transitions.
void iso_collapsed_Aul_update | ( | long | ipISO, | |
long | nelem | |||
) |
iso_collapsed_Aul_update - update decays from collapsed levels
ipISO | ||
nelem |
Definition at line 1912 of file iso_create.cpp.
References ASSERT, t_iso::bnl_effective, t_iso::CachedAs, DEBUG_ENTRY, ipH_LIKE, ipHE_LIKE, iso, L_, t_iso::n_HighestResolved_max, t_iso::nCollapsed_max, t_iso::numLevels_max, t_iso::QuantumNumbers2Index, S, StatesElem, TotalInsanity(), and Transitions.
Here is the call graph for this function:
void iso_collapsed_bnl_print | ( | long | ipISO, | |
long | nelem | |||
) |
iso_collapsed_bnl_print - print departure coefficients for collapsed levels
ipISO | ||
nelem |
Definition at line 1866 of file iso_create.cpp.
References t_iso::bnl_effective, t_elementnames::chElementSym, t_iso::chISO, DEBUG_ENTRY, elementnames, ioQQQ, ipH_LIKE, ipHE_LIKE, iso, t_iso::n_HighestResolved_max, and t_iso::nCollapsed_max.
void iso_collapsed_bnl_set | ( | long | ipISO, | |
long | nelem | |||
) |
iso_collapsed_bnl_set - set departure coefficients for collapsed levels
ipISO | ||
nelem |
these are just sanity checks, the interpolated value should be between values at interpolation points
Definition at line 1671 of file iso_create.cpp.
References ASSERT, t_iso::bnl_effective, DEBUG_ENTRY, dense, t_dense::eden, hunt_bisect(), ipH_LIKE, ipHE_LIKE, ipHELIUM, ipHYDROGEN, iso, MAX2, MAX4, MIN2, MIN4, t_iso::n_HighestResolved_max, t_iso::nCollapsed_max, phycon, t_phycon::te, and TotalInsanity().
Here is the call graph for this function:
void iso_collapsed_lifetimes_update | ( | long | ipISO, | |
long | nelem | |||
) |
iso_collapsed_lifetimes_update - update lifetimes of collapsed levels
ipISO | ||
nelem |
Definition at line 1959 of file iso_create.cpp.
References ASSERT, DEBUG_ENTRY, iso, t_iso::nCollapsed_max, t_iso::numLevels_max, PI4, t_iso::SmallA, SMALLFLOAT, StatesElem, and Transitions.
void iso_create | ( | void | ) |
iso_create create storage space data for iso sequences, 1 one time per coreload
Definition at line 42 of file iso_create.cpp.
References AddLine2Stack(), AddState2Stack(), ASSERT, DEBUG_ENTRY, dense, t_transition::Emis, EN1RYD, EnergyRyd, EVRYD, ExtraLymanLines, FillExtraLymanLine(), helike_energy(), t_transition::Hi, Singleton< T >::Inst(), ipH_LIKE, ipHE_LIKE, iso, iso_allocate(), iso_assign_quantum_numbers(), iso_zero(), t_dense::lgElmtOn, LIMELM, t_transition::Lo, N_, NISO, t_iso::nLyman, t_iso::numLevels_max, POW2, RefIndex(), RYD_INF, t_iso::stat_ion, TauDummy, TE1RYD, TotalInsanity(), TransitionJunk(), Transitions, WAVNRYD, and t_iso::xIsoLevNIonRyd.
Referenced by ContCreatePointers().
Here is the call graph for this function:
long iso_get_total_num_levels | ( | long | ipISO, | |
long | nmaxResolved, | |||
long | numCollapsed | |||
) |
iso_get_total_num_levels - get total number of levels with the given number of resolved and collapsed
ipISO | ||
nmaxResolved | ||
numCollapsed |
Definition at line 1614 of file iso_create.cpp.
References DEBUG_ENTRY, ipH_LIKE, ipHE_LIKE, and TotalInsanity().
Referenced by iso_continuum_lower(), iso_recomb_malloc(), and iso_update_num_levels().
Here is the call graph for this function:
STATIC void iso_satellite | ( | void | ) |
Definition at line 1466 of file iso_create.cpp.
References t_elementnames::chElementSym, DEBUG_ENTRY, dense, elementnames, ERG1CM, fixit(), ipCRDW, ipHE_LIKE, iso, t_iso::lgDielRecom, t_dense::lgElmtOn, t_iso::numLevels_max, RYDLAM, SatelliteLines, StatesElem, T1CM, TransitionZero(), and t_iso::xIsoLevNIonRyd.
Here is the call graph for this function:
void iso_satellite_update | ( | void | ) |
iso_satellite_update - update iso satellite line information
Definition at line 1525 of file iso_create.cpp.
References abscf(), ATOMIC_MASS_UNIT, t_dense::AtomicWeight, DEBUG_ENTRY, dense, t_iso::DielecRecomb, dsexp(), t_dense::eden, ELECTRON_MASS, ERG1CM, GetGF(), HION_LTE_POP, ipHE_LIKE, iso, t_iso::lgDielRecom, t_dense::lgElmtOn, max(), MAX2, t_iso::numLevels_max, phycon, PI4, SatelliteLines, t_iso::SmallA, SMALLDOUBLE, SMALLFLOAT, t_iso::stat_ion, t_phycon::te32, t_phycon::te_ryd, t_dense::xIonDense, and t_iso::xIsoLevNIonRyd.
Referenced by lines().
Here is the call graph for this function:
STATIC double iso_state_lifetime | ( | long | ipISO, | |
long | nelem, | |||
long | n, | |||
long | l | |||
) |
Definition at line 1201 of file iso_create.cpp.
References ASSERT, ATOMIC_MASS_UNIT, t_dense::AtomicWeight, DEBUG_ENTRY, dense, ELECTRON_MASS, FINE_STRUCTURE, H_BAR, ipHE_LIKE, M, POW2, POW4, SPEEDLIGHT, and Z.
Referenced by FillExtraLymanLine().
void iso_update_num_levels | ( | long | ipISO, | |
long | nelem | |||
) |
iso_update_num_levels - update level informations for iso sequences
ipISO | ||
nelem |
Definition at line 1637 of file iso_create.cpp.
References ASSERT, cdEXIT, DEBUG_ENTRY, ioQQQ, iso, iso_get_total_num_levels(), MAX2, max_num_levels, t_iso::n_HighestResolved_local, t_iso::n_HighestResolved_max, t_iso::nCollapsed_local, t_iso::nCollapsed_max, t_iso::numLevels_local, t_iso::numLevels_malloc, t_iso::numLevels_max, and t_iso::numPrintLevels.
Referenced by InitCoreload(), ParseAtomISO(), and ParseCompile().
Here is the call graph for this function:
STATIC void iso_zero | ( | void | ) |
Definition at line 441 of file iso_create.cpp.
References t_iso::ColIoniz, t_iso::ConOpacRatio, DEBUG_ENTRY, dense, t_iso::DepartCoef, t_iso::DielecRecomb, fixit(), t_iso::gamnc, t_hydro::HLineWidth, hydro, ipH_LIKE, ipRecEsc, ipRecNetEsc, ipRecRad, iso, t_dense::lgElmtOn, t_iso::numLevels_max, t_iso::PopLTE, t_iso::RadRecomb, t_iso::RateCont2Level, t_iso::RateLevel2Cont, t_iso::RecomInducRate, and StatesElem.
Referenced by iso_create().
Here is the call graph for this function:
char chL[21] = {'S','P','D','F','G','H','I','K','L','M','N','O','Q','R','T','U','V','W','X','Y','Z'} |
Definition at line 40 of file iso_create.cpp.