Cloudy
Spectral Synthesis Code for Astrophysics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
iso.h File Reference
#include "module.h"
#include "transition.h"
#include "container_classes.h"
Include dependency graph for iso.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  QNPair
 
class  t_isoCTRL
 
class  extra_tr
 
class  t_iso_sp
 

Macros

#define KILL_BELOW_PLASMA(E_)   ( (rfield.lgPlasNu && ((E_)<rfield.plsfrq) ) ? 0.:1. )
 
#define N_(A_)   (iso_sp[ipISO][nelem].st[A_].n())
 
#define L_(A_)   (iso_sp[ipISO][nelem].st[A_].l())
 
#define S_(A_)   (iso_sp[ipISO][nelem].st[A_].S())
 
#define J_(A_)   (iso_sp[ipISO][nelem].st[A_].j())
 

Typedefs

typedef uint64 QNPack
 

Enumerations

enum  {
  ipSINGLET = 1, ipDOUBLET = 2, ipTRIPLET = 3, ipMULTIPLET_END,
  ipMULTIPLET_BEGIN =ipSINGLET
}
 

Functions

int LIKE_RREC_MAXN (int nelem)
 
QNPack QN2ind (long n, long l, long s, long g=-1)
 
QNPair QN2ind (int nhi, int lhi, int shi, int ghi, int nlo, int llo, int slo, int glo)
 
int getL (char l)
 
void iso_cascade (long ipISO, long nelem)
 
void iso_charge_transfer_update (long nelem)
 
void iso_collide (long ipISO, long nelem)
 
void iso_collisional_ionization (long ipISO, long nelem)
 
void iso_continuum_lower (long ipISO, long nelem)
 
void iso_cool (long ipISO, long nelem)
 
void iso_setRedisFun (long ipISO, long nelem, long ipLo, long ipHi)
 
void iso_setOpacity (long ipISO, long nelem, long ipLo, long ipHi)
 
void iso_create (void)
 
double iso_cross_section (double ERyd, double EthRyd, long n, long l, long S, long globalZ, long globalISO)
 
void iso_departure_coefficients (long ipISO, long nelem)
 
double iso_dielec_recomb_rate (long ipISO, long nelem, long ipLo)
 
void iso_error_generation (long ipISO, long nelem)
 
long iso_get_total_num_levels (long ipISO, long nmaxResolved, long numCollapsed)
 
void IonHydro ()
 
void iso_ionize_recombine (long ipISO, long nelem)
 
void iso_level (const long ipISO, const long nelem, double &renorm)
 
void iso_photo (long ipISO, long nelem)
 
void iso_prt_pops (long ipISO, long nelem, bool lgPrtDeparCoef)
 
void iso_put_error (long ipISO, long nelem, long ipHi, long ipLo, long whichData, realnum errorOpt, realnum errorPess)
 
void iso_put_error (long ipISO, long nelem, QNPack inHi, QNPack inLo, long whichData, realnum errorOpt, realnum errorPess)
 
void iso_radiative_recomb (long ipISO, long nelem)
 
void iso_radiative_recomb_effective (long ipISO, long nelem)
 
double iso_recomb_check (long ipISO, long nelem, long level, double temperature)
 
void iso_recomb_auxiliary_free ()
 
void iso_recomb_alloc ()
 
void iso_recomb_setup (long ipISO)
 
double iso_RRCoef_Te (long ipISO, long nelem, double temp, long n)
 
void iso_satellite_update (long nelem)
 
double iso_state_lifetime (long ipISO, long nelem, long n, long l)
 
void iso_solve (long ipISO, long nelem, double &maxerr)
 
void iso_suprathermal (long ipISO, long nelem)
 
void iso_update_num_levels (long ipISO, long nelem)
 
void iso_update_rates (void)
 
long int iso_Max_Emitting_Level (long nelem, long ipISO, bool lgPrnIsoCollapsed)
 
void iso_init_energies ()
 
double hydro_energy (long nelem, long n, long l, long s, long g)
 
void iso_collapsed_update (void)
 
void iso_set_ion_rates (long ipISO, long nelem)
 
void iso_init ()
 
void iso_renorm (long nelem, long ipISO, double &renorm)
 
void iso_multiplet_opacities (void)
 
string iso_comment_tran_levels (long ipISO, long nelem, long ipLo, long ipHi)
 

Variables

long int max_num_levels
 
const int ipH1s = 0
 
const int ipH2s = 1
 
const int ipH2p = 2
 
const int ipH3s = 3
 
const int ipH3p = 4
 
const int ipH3d = 5
 
const int ipH4s = 6
 
const int ipH4p = 7
 
const int ipH4d = 8
 
const int ipH4f = 9
 
const int ipHe1s1S = 0
 
const int ipHe2s3S = 1
 
const int ipHe2s1S = 2
 
const int ipHe2p3P0 = 3
 
const int ipHe2p3P1 = 4
 
const int ipHe2p3P2 = 5
 
const int ipHe2p1P = 6
 
const int ipHe3s3S = 7
 
const int ipHe3s1S = 8
 
const int ipHe3p3P = 9
 
const int ipHe3d3D = 10
 
const int ipHe3d1D = 11
 
const int ipHe3p1P = 12
 
const int ipH_LIKE = 0
 
const int ipHE_LIKE = 1
 
const int ipLI_LIKE = 2
 
const int ipBE_LIKE = 3
 
const int ipB_LIKE = 4
 
const int ipC_LIKE = 5
 
const int ipN_LIKE = 6
 
const int ipO_LIKE = 7
 
const int ipF_LIKE = 8
 
const int ipNE_LIKE = 9
 
const int ipNA_LIKE = 10
 
const int ipMG_LIKE = 11
 
const int ipAL_LIKE = 12
 
const int ipSI_LIKE = 13
 
const int ipP_LIKE = 14
 
const int ipS_LIKE = 15
 
const int ipCL_LIKE = 16
 
const int ipAR_LIKE = 17
 
const int IPRAD = 0
 
const int IPCOLLIS = 1
 
const int RREC_MAXN = 40
 
const int N_ISO_TE_RECOMB = 41
 
const int SumUpToThisN = 1000
 
const int RECOMBMAGIC = 130216
 
const int ENERGIESMAGIC = 20190102
 
t_isoCTRL iso_ctrl
 
t_iso_sp iso_sp [NISO][LIMELM]
 

Detailed Description

  • information for isoelectronic sequences

Macro Definition Documentation

#define J_ (   A_)    (iso_sp[ipISO][nelem].st[A_].j())

Referenced by DGER(), DGETF2(), DGETRF(), DTRSM(), and iso_create().

#define KILL_BELOW_PLASMA (   E_)    ( (rfield.lgPlasNu && ((E_)<rfield.plsfrq) ) ? 0.:1. )

This macro is used to zero any radiative process with photon energy below the plasma frequency. The energy must be in Rydbergs!

#define N_ (   A_)    (iso_sp[ipISO][nelem].st[A_].n())

Typedef Documentation

typedef uint64 QNPack

Enumeration Type Documentation

anonymous enum
Enumerator
ipSINGLET 
ipDOUBLET 
ipTRIPLET 
ipMULTIPLET_END 
ipMULTIPLET_BEGIN 

Function Documentation

int getL ( char  l)

References chL, and toupper().

Referenced by HeCollidSetup().

Here is the call graph for this function:

double hydro_energy ( long  nelem,
long  n,
long  l,
long  s,
long  g 
)

References ASSERT, DEBUG_ENTRY, t_iso_sp::energy_ioniz(), fprintf(), ioQQQ, ipH_LIKE, iso_sp, POW2, and QN2ind().

Referenced by iso_create(), and lines_hydro().

Here is the call graph for this function:

void iso_cascade ( long  ipISO,
long  nelem 
)

iso_cascade - calculate cascade probabilities, branching ratios, and associated errors

Parameters
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

References ASSERT, EmissionProxy::Aul(), t_iso_sp::BranchRatio, t_iso_sp::CascadeProb, DEBUG_ENTRY, TransitionProxy::Emis(), t_iso_sp::ex, t_iso_sp::fb, fprintf(), ioQQQ, ipH_LIKE, ipHe2p3P0, ipHe2p3P1, ipHe2p3P2, ipHE_LIKE, ipHELIUM, IPRAD, iso_ctrl, iso_sp, L_, t_opac::lgCaseB, t_isoCTRL::lgRandErrGen, N_, t_iso_sp::n_HighestResolved_max, t_iso_sp::nCollapsed_max, t_iso_sp::numLevels_max, opac, pow2(), S, S_, t_isoCTRL::SmallA, and t_iso_sp::trans().

Referenced by iso_collapsed_update(), and iso_create().

Here is the call graph for this function:

void iso_charge_transfer_update ( long  nelem)

iso_charge_transfer_update - update rate coefficients for CT of H and He with everything else

References atmdat, t_atmdat::CharExcIonOf, t_atmdat::CharExcIonTotal, t_atmdat::CharExcRecTo, t_atmdat::CharExcRecTotal, DEBUG_ENTRY, dense, ipHYDROGEN, iso_sp, LIMELM, t_atmdat::NCX, t_iso_sp::st, and t_dense::xIonDense.

Referenced by ion_solver().

void iso_collapsed_update ( void  )

References conv, dense, t_dense::IonHigh, t_dense::IonLow, ipH_LIKE, ipHELIUM, ipHYDROGEN, iso_cascade(), t_dense::lgElmtOn, MIN2, NISO, and t_conv::nTotalIoniz.

Referenced by ConvBase().

Here is the call graph for this function:

void iso_collide ( long  ipISO,
long  nelem 
)
iso_collide - calculate collision data for ipISO, nelem  
Parameters
ipISO
nelem

References t_mesh::anu(), ASSERT, t_dense::AtomicWeight, BIGDOUBLE, qList::Boltzmann(), t_isoCTRL::chISO, CollisionProxy::col_str(), TransitionProxy::Coll(), colliders, t_ionbal::CollIonRate_Ground, CollisionProxy::ColUL(), qList::ConBoltz(), conv, DEBUG_ENTRY, dense, t_dense::density_low_limit, t_dense::eden, t_dense::EdenHCorr, t_iso_sp::fb, fp_equal(), fprintf(), Heavy, ionbal, ioQQQ, ipALPHA, IPCOLLIS, ipELECTRON, t_Heavy::ipHeavy, t_trace::ipIsoTrace, ipNCOLLIDER, ipPROTON, iso_collisional_ionization(), iso_ctrl, iso_get_collision_strength(), iso_put_error(), iso_sp, iso_suprathermal(), t_opac::lgCaseB_HummerStorey, t_isoCTRL::lgColl_excite, t_isoCTRL::lgColl_l_mixing, t_isoCTRL::lgCritDensLMix, t_trace::lgHBug, t_trace::lgHeBug, t_trace::lgIsoTraceFull, t_iso_sp::lgPopLTE_OK, t_iso_sp::lgPrtNCrit, t_trace::lgTrace, LIMELM, ColliderList::list, max(), MAX_DENSITY, MIN2, N_, t_iso_sp::n_HighestResolved_max, t_iso_sp::nCollapsed_max, NISO, t_isoCTRL::nLyaLevel, t_conv::nTotalIoniz, t_iso_sp::numLevels_local, t_iso_sp::numLevels_max, opac, phycon, pow2(), powpq(), PrintEfmt, avx_ptr< T, lgBC >::ptr0(), CollisionProxy::rate_coef_ul(), CollisionProxy::rate_coef_ul_set(), rfield, SMALLDOUBLE, t_phycon::sqrte, t_iso_sp::st, t_isoCTRL::stat_ion, t_phycon::te, t_phycon::te32, t_phycon::te_ryd, trace, t_iso_sp::trans(), and vexp().

Referenced by iso_update_rates(), and SaveLineData().

Here is the call graph for this function:

void iso_collisional_ionization ( long  ipISO,
long  nelem 
)
iso_collisional_ionization - calculate collisional ionization rate for ipISO, nelem  
Parameters
ipISO
nelem

References ASSERT, t_ADfA::coll_ion_wrapper(), DEBUG_ENTRY, t_iso_sp::fb, Hion_coll_ioniz_ratecoef(), hydro_vs_ioniz(), Singleton< t_ADfA >::Inst(), IPCOLLIS, iso_ctrl, iso_put_error(), iso_sp, t_isoCTRL::lgColl_ionize, t_iso_sp::lgLevelsLowered, t_isoCTRL::lgTopoff, N_, NISO, t_iso_sp::numLevels_max, phycon, and t_phycon::te.

Referenced by iso_collide().

Here is the call graph for this function:

string iso_comment_tran_levels ( long  ipISO,
long  nelem,
long  ipLo,
long  ipHi 
)

References GenerateTransitionConfiguration(), ipHE_LIKE, and iso_sp.

Referenced by lines_helium(), and lines_hydro().

Here is the call graph for this function:

void iso_cool ( long  ipISO,
long  nelem 
)

iso_cool compute net heating/cooling due to hydrogenc atom species

Parameters
ipISOthe isoelectronic sequence, 0 for H
nelemis element, so 0 for H itself

Referenced by CoolEvaluate().

double iso_cross_section ( double  ERyd,
double  EthRyd,
long  n,
long  l,
long  S,
long  globalZ,
long  globalISO 
)

iso_cross_section get cross section for a particular level of an iso sequence ion

Parameters
ERyd
EthRyd
n
l
S
Z
ipISO

References cross_section(), DEBUG_ENTRY, H_cross_section(), He_cross_section(), ipH_LIKE, ipHE_LIKE, and TotalInsanity().

Referenced by iso_recomb_integrand().

Here is the call graph for this function:

void iso_departure_coefficients ( long  ipISO,
long  nelem 
)

iso_departure_coefficients - calculate departure coefficients

Parameters
ipISO
nelem

References DEBUG_ENTRY, dense, t_dense::eden, t_iso_sp::fb, iso_sp, t_iso_sp::numLevels_local, t_iso_sp::numLevels_max, safe_div(), SMALLFLOAT, t_iso_sp::st, and t_dense::xIonDense.

Referenced by ion_solver().

Here is the call graph for this function:

double iso_dielec_recomb_rate ( long  ipISO,
long  nelem,
long  ipLo 
)

iso_dielec_recomb_rate - get state-specific dielectronic recombination rate

Parameters
ipISO
nelem
ipLo

References t_phycon::alogte, ASSERT, DEBUG_ENTRY, freeBound::DielecRecombVsTemp, exp10(), t_iso_sp::fb, hunt_bisect(), ipHe1s1S, ipHE_LIKE, iso_ctrl, iso_sp, t_isoCTRL::lgDielRecom, NUM_DR_TEMPS, and phycon.

Referenced by iso_radiative_recomb().

Here is the call graph for this function:

void iso_error_generation ( long  ipISO,
long  nelem 
)

iso_error_generation generate gaussian errors

Parameters
ipISO
nelem

References ASSERT, DEBUG_ENTRY, t_iso_sp::ex, iso_sp, t_iso_sp::lgErrGenDone, t_iso_sp::numLevels_max, and TruncatedNormal().

Referenced by iso_update_rates().

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

Parameters
ipISO
nmaxResolved
numCollapsed

References DEBUG_ENTRY, ipH_LIKE, ipHE_LIKE, and TotalInsanity().

Referenced by iso_continuum_lower(), iso_recomb_alloc(), and iso_update_num_levels().

Here is the call graph for this function:

void iso_ionize_recombine ( long  ipISO,
long  nelem 
)

iso_ionize_recombine evaluate state specific creation and destruction processes

Parameters
ipISO
nelem

Referenced by iso_update_rates().

void iso_level ( const long  ipISO,
const long  nelem,
double &  renorm 
)

iso_level solve for iso-sequence ionization balance

Parameters
ipISOiso-sequence index
nelemelement index
renormrenormalization parameter

Referenced by iso_solve().

long int iso_Max_Emitting_Level ( long  nelem,
long  ipISO,
bool  lgPrnIsoCollapsed 
)
iso_Max_Emitting_Level - gives the maximum level from which a line is calculated
Parameters
nelem
ipISO
lgPrnIsoCollapsed

References ipH_LIKE, ipHE_LIKE, MIN2, t_iso_sp::nCollapsed_max, and t_iso_sp::numLevels_max.

Referenced by lines_helium(), lines_hydro(), and SaveDo().

void iso_multiplet_opacities ( void  )

update multiplet opacities

References dense, t_dense::IonHigh, t_dense::IonLow, ipH_LIKE, ipHYDROGEN, iso_multiplet_opacities_one(), t_dense::lgElmtOn, LIMELM, and NISO.

Referenced by ConvBase().

Here is the call graph for this function:

void iso_photo ( long  ipISO,
long  nelem 
)

iso_photo do photoionization rates for element nelem on the ipISO isoelectronic sequence

Parameters
ipISO
nelem

Referenced by iso_update_rates().

void iso_prt_pops ( long  ipISO,
long  nelem,
bool  lgPrtDeparCoef 
)

iso_prt_pops routine to print level pops or departure coefficients for iso sequences

Parameters
ipISO
nelem
lgPrtDeparCoef

References ASSERT, t_elementnames::chElementSym, t_isoCTRL::chISO, DEBUG_ENTRY, elementnames, fprintf(), ioQQQ, ipH_LIKE, ipHe2p3P0, ipHe2p3P1, ipHe2p3P2, ipHE_LIKE, iso_ctrl, iso_sp, ITEM_TO_PRINT, t_iso_sp::nCollapsed_local, NISO, t_iso_sp::numLevels_local, t_iso_sp::QN2Index(), and t_iso_sp::st.

Referenced by PrtZone().

Here is the call graph for this function:

void iso_put_error ( long  ipISO,
long  nelem,
long  ipHi,
long  ipLo,
long  whichData,
realnum  errorOpt,
realnum  errorPess 
)

iso_put_error put an error bar on a piece of data, to be used with Gaussian random noise gen

Parameters
ipISO
nelem
ipHi
ipLo
whichData
errorOpt
errorPess

Referenced by ForbiddenAuls(), helike_transprob(), hydro_transprob(), iso_collide(), iso_collisional_ionization(), iso_put_recomb_error(), and iso_radiative_recomb().

void iso_put_error ( long  ipISO,
long  nelem,
QNPack  inHi,
QNPack  inLo,
long  whichData,
realnum  errorOpt,
realnum  errorPess 
)

iso_put_error put an error bar on a piece of data, to be used with Gaussian random noise gen

Parameters
ipISO
nelem
inHi
inLo
whichData
errorOpt
errorPess
void iso_radiative_recomb ( long  ipISO,
long  nelem 
)
void iso_radiative_recomb_effective ( long  ipISO,
long  nelem 
)

iso_radiative_recomb_effective - get effective recomb rate coefficients into each level (including indirect)

Parameters
ipISO
nelem

References ASSERT, t_iso_sp::BranchRatio, t_iso_sp::CascadeProb, DEBUG_ENTRY, dprintf(), t_iso_sp::fb, fprintf(), ioQQQ, IPRAD, ipRecRad, iso_ctrl, iso_sp, L_, t_isoCTRL::lgRandErrGen, MAX2, N_, t_iso_sp::numLevels_local, phycon, pow2(), prt_wl(), S_, t_phycon::te, and wavelength.

Referenced by iso_update_rates().

Here is the call graph for this function:

void iso_recomb_alloc ( )

iso_recomb_alloc - allocate space needed for iso recombination tables.

References multi_arr< T, d, ALLOC, lgBC >::alloc(), DEBUG_ENTRY, dense, iso_get_total_num_levels(), iso_sp, t_dense::lgElmtOn, LIKE_RREC_MAXN(), LIMELM, MAX2, N_ISO_TE_RECOMB, NISO, multi_arr< T, d, ALLOC, lgBC >::reserve(), RREC_MAXN, and TeRRCoef.

Referenced by iso_create().

Here is the call graph for this function:

void iso_recomb_auxiliary_free ( )

iso_recomb_auxiliary_free - free up some auxiliary space associated with iso recombination tables.

References multi_arr< T, d, ALLOC, lgBC >::clear(), and DEBUG_ENTRY.

Referenced by iso_create().

Here is the call graph for this function:

double iso_recomb_check ( long  ipISO,
long  nelem,
long  level,
double  temperature 
)

iso_recomb_check - called by SanityCheck to confirm that recombination coef are ok, return value is relative error between new calculation of recom, and interp value

Parameters
ipISO
nelemthe chemical element, 1 for He
levelthe level, 0 for ground
temperaturethe temperature to be used

References DEBUG_ENTRY, iso_radrecomb_from_cross_section(), iso_RRCoef_Te(), and MAX2.

Referenced by SanityCheckBegin().

Here is the call graph for this function:

void iso_renorm ( long  nelem,
long  ipISO,
double &  renorm 
)
double iso_RRCoef_Te ( long  ipISO,
long  nelem,
double  temp,
long  n 
)
iso_RRCoef_Te - interpolate iso recomb coeff as function of temperature
Parameters
ipISO
nelem
temp- the electron temperature
n

References ASSERT, DEBUG_ENTRY, exp10(), iso_ctrl, iso_sp, t_isoCTRL::lgNoRecombInterp, N_ISO_TE_RECOMB, TempInterp(), and TeRRCoef.

Referenced by iso_radiative_recomb(), iso_recomb_check(), and SaveDo().

Here is the call graph for this function:

void iso_satellite_update ( long  nelem)
void iso_setOpacity ( long  ipISO,
long  nelem,
long  ipLo,
long  ipHi 
)

iso_setOpacity compute line opacity

Parameters
ipISOisoelectronic sequence
nelemelement index
ipLoindex to lower state
ipHiindex to upper state

References abscf(), ASSERT, TransitionProxy::Emis(), TransitionProxy::EnergyWN(), GetGF(), EmissionProxy::gf(), iso_ctrl, iso_sp, EmissionProxy::opacity(), t_isoCTRL::SmallA, and t_iso_sp::trans().

Referenced by iso_create().

Here is the call graph for this function:

void iso_setRedisFun ( long  ipISO,
long  nelem,
long  ipLo,
long  ipHi 
)

iso_setRedisFun assign the line redistribution function type

Parameters
ipISOisoelectronic sequence
nelemelement index
ipLoindex to lower state
ipHiindex to upper state

References TransitionProxy::Emis(), ipH_LIKE, ipHYDROGEN, ipLY_A, t_isoCTRL::ipLyaRedist, t_isoCTRL::ipResoRedist, t_isoCTRL::ipSubRedist, EmissionProxy::iRedisFun(), iso_ctrl, iso_sp, t_isoCTRL::nLyaLevel, and t_iso_sp::trans().

Referenced by iso_create().

Here is the call graph for this function:

void iso_solve ( long  ipISO,
long  nelem,
double &  maxerr 
)
double iso_state_lifetime ( long  ipISO,
long  nelem,
long  n,
long  l 
)

References ASSERT, t_dense::AtomicWeight, DEBUG_ENTRY, dense, ipHE_LIKE, pow(), POW2, pow2(), pow4(), and powi().

Referenced by FillExtraLymanLine(), and SanityCheckBegin().

Here is the call graph for this function:

void iso_suprathermal ( long  ipISO,
long  nelem 
)

iso_suprathermal - calculate secondary excitation by suprathermal electrons for iso sequences

Parameters
ipISO
nelem

References ASSERT, TransitionProxy::Coll(), DEBUG_ENTRY, TransitionProxy::Emis(), TransitionProxy::EnergyWN(), EmissionProxy::gf(), TransitionProxy::ipCont(), ipH2p, ipH_LIKE, ipHYDROGEN, iso_ctrl, iso_sp, t_isoCTRL::lgColl_excite, LIMELM, NISO, t_iso_sp::numLevels_max, CollisionProxy::rate_lu_nontherm_set(), secondaries, t_iso_sp::trans(), and t_secondaries::x12tot.

Referenced by iso_collide().

Here is the call graph for this function:

void iso_update_num_levels ( long  ipISO,
long  nelem 
)
int LIKE_RREC_MAXN ( int  nelem)
inline

Ions of the sequences will go up to this n, h-like He will get same as iso roots.

References ipHELIUM.

Referenced by iso_recomb_alloc(), iso_recomb_setup(), and ParseCompile().

QNPack QN2ind ( long  n,
long  l,
long  s,
long  g = -1 
)
inline
QNPair QN2ind ( int  nhi,
int  lhi,
int  shi,
int  ghi,
int  nlo,
int  llo,
int  slo,
int  glo 
)
inline

Variable Documentation

const int ENERGIESMAGIC = 20190102

the magic number for the table of He-like level energies, YYYYMMDD

Referenced by iso_init_energies().

const int ipAL_LIKE = 12

Referenced by read_UTA_lines().

const int ipAR_LIKE = 17
const int ipB_LIKE = 4
const int ipBE_LIKE = 3
const int ipC_LIKE = 5
const int ipCL_LIKE = 16
const int IPCOLLIS = 1
const int ipF_LIKE = 8
const int ipH3d = 5
const int ipH3s = 3
const int ipH4d = 8

Referenced by OpacityAddTotal().

const int ipH4f = 9

Referenced by OpacityAddTotal().

const int ipH4p = 7
const int ipH4s = 6
const int ipH_LIKE = 0

these are array indices for isoelectronic sequences, same as element but used for array addressing to make context totally clear

Referenced by atmdat_2phot_shapefunction(), Badnell_rec_init(), t_gaunt::brems_sum_ions(), cdTemp(), ChargTranSumHeat(), chkCaHeps(), clean_up(), ContCreatePointers(), ContRate(), ContSetIntensity(), ConvBase(), ConvIterCheck(), CoolEvaluate(), CoolHyperfine(), CS_l_mixing(), CSresolver(), dBase_solve(), DynaIonize(), DynaNewStep(), DynaSaveLast(), DynaStartZone(), eden_sum(), FillExtraLymanLine(), get_iso_statw(), GetHlikeCollisionStrength(), GrainRateDr(), GrainTemperature(), H21_cm_pops(), H_Einstein_A(), HeatSum(), HlikeCSInterp(), hydro_energy(), hydro_transprob(), HydroCSInterp(), HydroRecCool(), diatomics::init(), InitCoreloadPostparse(), InitDefaultsPreparse(), InitSimPostparse(), ion_photo(), ion_recomb(), ion_solver(), IonHelium(), IonHydro(), iso_allocate(), iso_assign_quantum_numbers(), iso_cascade(), iso_collapsed_update(), iso_create(), iso_cross_section(), iso_get_collision_strength(), iso_get_total_num_levels(), iso_init(), iso_init_energies(), iso_ionize_recombine(), iso_level(), iso_Max_Emitting_Level(), iso_multiplet_opacities(), iso_prt_pops(), iso_rad_rec_cooling_approx(), iso_rad_rec_cooling_extra(), iso_radrecomb_from_cross_section(), iso_setRedisFun(), iso_suprathermal(), iso_update_rates(), iso_zero(), IterRestart(), IterStart(), lgCheckMonitors(), lgTrivialSolution(), lines(), lines_continuum(), lines_general(), lines_helium(), lines_hydro(), lines_iron_Ka(), mole_h_rate_diagnostics(), my_Integrand_VF01_E< P >::my_Integrand_VF01_E(), Opacity_iso_photo_cs(), OpacityAddTotal(), OpacityCreateAll(), ParseCompile(), ParseDatabase(), ParseDatabaseISO(), ParseDont(), ParseElement(), ParseMonitorResults(), ParsePrint(), ParseTest(), ParseTrace(), PresTotCurrent(), PrtAllTau(), PrtComment(), PrtFinal(), PrtHeader(), PrtHydroTrace1(), prtmet(), PrtZone(), radius_first(), radius_increment(), radius_next(), RT_continuum(), RT_DestProb(), RT_diffuse(), RT_iso_integrate_RRC(), RT_line_all(), RT_line_all_escape(), RT_line_driving(), RT_line_pumping(), RT_OTS(), RT_OTS_Update(), RT_stark(), RT_tau_inc(), RT_tau_init(), RT_tau_reset(), SanityCheckBegin(), save_opacity(), SaveDo(), SaveLineData(), SaveLineStuff(), SaveSpecial(), SecIoniz(), setIsoNelemFlag(), setXtraRatesCa2(), setXtraRatesFe2(), setXtraRatesO1(), t_isoCTRL::t_isoCTRL(), t_mesh::ValidateEdges(), t_dynamics::zero(), and t_isoCTRL::zero().

const int ipHe2p3P0 = 3
const int ipHe2p3P1 = 4
const int ipHe2s1S = 2

Referenced by PrtAllTau(), and PrtZone().

const int ipHe3d1D = 11

Referenced by AGN_He1_CS(), and PrtZone().

const int ipHe3d3D = 10
const int ipHe3p1P = 12

Referenced by PrtAllTau(), and PrtZone().

const int ipHe3p3P = 9
const int ipHe3s1S = 8

Referenced by PrtZone().

const int ipHe3s3S = 7

Referenced by AGN_He1_CS(), lines_helium(), and PrtZone().

const int ipHE_LIKE = 1

Referenced by atmdat_2phot_shapefunction(), Badnell_rec_init(), cdColm(), ContCreatePointers(), ConvIterCheck(), cross_section(), CS_l_mixing_PS64(), CS_l_mixing_PS64_expI(), CSresolver(), DoSatelliteLines(), ForbiddenAuls(), get_iso_statw(), GetHelikeCollisionStrength(), GetStandardHeLines(), he_1trans(), HeCollidSetup(), HeCSInterp(), HeCSTableInterp(), helike_energy(), helike_quantum_defect(), helike_transprob(), IonHelium(), iso_assign_quantum_numbers(), iso_cascade(), iso_comment_tran_levels(), iso_create(), iso_cross_section(), iso_dielec_recomb_rate(), iso_get_collision_strength(), iso_get_total_num_levels(), iso_init(), iso_level(), iso_Max_Emitting_Level(), iso_prt_pops(), iso_put_recomb_error(), iso_radiative_recomb(), iso_radrecomb_from_cross_section(), iso_satellite(), iso_satellite_update(), iso_set_ion_rates(), iso_state_lifetime(), iso_update_rates(), iso_zero(), lgCheckMonitors(), lines(), lines_general(), lines_helium(), lines_iron_Ka(), my_Integrand_VF01_E< P >::my_Integrand_VF01_E(), Opacity_iso_photo_cs(), OpacityAddTotal(), OpacityCreateAll(), ParseCompile(), ParseDatabase(), ParseDatabaseISO(), ParseDont(), ParseElement(), ParseMonitorResults(), ParsePrint(), ParseTrace(), PresTotCurrent(), PrtAllTau(), PrtComment(), PrtFinal(), PrtZone(), RT_diffuse(), RT_line_all(), RT_line_driving(), RT_tau_init(), RT_tau_reset(), SanityCheckBegin(), save_opacity(), SaveDo(), SaveLineData(), SecIoniz(), t_isoCTRL::t_isoCTRL(), t_mesh::ValidateEdges(), and t_isoCTRL::zero().

const int ipLI_LIKE = 2

Referenced by read_UTA_lines().

const int ipMG_LIKE = 11

Referenced by read_UTA_lines().

const int ipN_LIKE = 6
const int ipNA_LIKE = 10

Referenced by read_UTA_lines().

const int ipNE_LIKE = 9
const int ipO_LIKE = 7
const int ipP_LIKE = 14
const int ipS_LIKE = 15
const int ipSI_LIKE = 13
t_iso_sp iso_sp[NISO][LIMELM]

Referenced by Badnell_rec_init(), t_gaunt::brems_sum_ions(), cdColm(), cdTemp(), ChargTranSumHeat(), chkCaHeps(), ContCreatePointers(), ContRate(), ContSetIntensity(), ConvBase(), ConvIterCheck(), CoolEvaluate(), CoolHyperfine(), cross_section(), dBase_solve(), DoSatelliteLines(), DynaCreateArrays(), DynaIonize(), DynaNewStep(), DynaSaveLast(), DynaStartZone(), eden_sum(), fill_array(), FillExtraLymanLine(), GetHelikeCollisionStrength(), GetHlikeCollisionStrength(), GetStandardHeLines(), GrainRateDr(), GrainTemperature(), H21_cm_pops(), H_Einstein_A(), he_1trans(), HeatSum(), HeCollidSetup(), HeCSInterp(), HeCSTableInterp(), helike_energy(), helike_quantum_defect(), helike_transprob(), HlikeCSInterp(), hydro_energy(), hydro_transprob(), HydroCSInterp(), HydroLevel(), HydroRecCool(), diatomics::init(), init_struc(), InitCoreloadPostparse(), InitSimPostparse(), ion_CX(), ion_photo(), ion_trim(), ion_trim2(), ion_widen(), IonHelium(), IonHydro(), iso_allocate(), iso_assign_quantum_numbers(), iso_cascade(), iso_charge_transfer_update(), iso_collide(), iso_collisional_ionization(), iso_comment_tran_levels(), iso_continuum_lower(), iso_cool(), iso_create(), iso_departure_coefficients(), iso_dielec_recomb_rate(), iso_error_generation(), iso_get_collision_strength(), iso_ionize_recombine(), iso_level(), iso_multiplet_opacities_one(), iso_photo(), iso_prt_pops(), iso_put_error(), iso_put_recomb_error(), iso_rad_rec_cooling_approx(), iso_rad_rec_cooling_discrete(), iso_rad_rec_cooling_extra(), iso_radiative_recomb(), iso_radiative_recomb_effective(), iso_radrecomb_from_cross_section(), iso_recomb_alloc(), iso_recomb_setup(), iso_renorm(), iso_RRCoef_Te(), iso_satellite(), iso_satellite_update(), iso_set_ion_rates(), iso_setOpacity(), iso_setRedisFun(), iso_solve(), iso_suprathermal(), iso_update_num_levels(), iso_update_rates(), iso_zero(), IterRestart(), IterStart(), lgCheckMonitors(), lines(), lines_continuum(), lines_general(), lines_helium(), lines_hydro(), lines_iron_Ka(), mole_h_rate_diagnostics(), Opacity_iso_photo_cs(), OpacityAdd1Element(), OpacityAddTotal(), OpacityCreateAll(), ParseCompile(), ParseDatabaseISO(), ParseElement(), PresTotCurrent(), PrintRates(), PrtAllTau(), PrtComment(), PrtFinal(), PrtHeader(), PrtHydroTrace1(), PrtHydroTrace1a(), PrtLinePres(), prtmet(), PrtZone(), radius_first(), radius_increment(), radius_next(), renorm_solution(), RT_continuum(), RT_DestProb(), RT_diffuse(), RT_iso_integrate_RRC(), RT_line_all(), RT_line_all_escape(), RT_line_driving(), RT_line_pumping(), RT_OTS(), RT_OTS_Update(), RT_stark(), RT_tau_inc(), RT_tau_init(), RT_tau_reset(), SanityCheckBegin(), Save_Line_RT(), save_opacity(), SaveDo(), SaveLineData(), SaveLineStuff(), SaveSpecial(), SecIoniz(), setIsoNelemFlag(), setXtraRatesCa2(), setXtraRatesFe2(), setXtraRatesO1(), and t_mesh::ValidateEdges().

long int max_num_levels

Referenced by iso_update_num_levels().

const int N_ISO_TE_RECOMB = 41
const int RECOMBMAGIC = 130216

the magic number for the table of recombination coefficients, YYMMDD

Referenced by iso_recomb_setup().

const int RREC_MAXN = 40

this is the number of levels used with the atom xx-like levels large command

Referenced by iso_recomb_alloc(), iso_recomb_setup(), ParseCompile(), and ParseDatabaseISO().

const int SumUpToThisN = 1000

This is the n to go up to when calculating total recombination. Any change here will not be reflected in total recomb until "compile xxlike" is run

Referenced by iso_radiative_recomb(), and iso_recomb_setup().