iso.h File Reference

Go to the source code of this file.

Data Structures

struct  Elevels
struct  t_iso

Defines

#define lgHeNew   true
#define KillIfBelowPlasma(E_)   ( (rfield.lgPlasNu && ((E_)<rfield.plsfrq) ) ? 0.:1. )

Functions

void iso_create (void)
void iso_photo (long ipISO, long nelem)
void iso_ionize_recombine (long ipISO, long nelem)
void iso_continuum_lower (long ipISO, long nelem)
void iso_cool (long int ipISO, long int nelem)

Variables

EXTERN struct t_iso iso


Detailed Description

Definition in file iso.h.


Define Documentation

#define KillIfBelowPlasma ( 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!

Definition at line 10 of file iso.h.

Referenced by HeLikeLevel(), and HydroLevelPop().

#define lgHeNew   true

set true to use new he opacities, false to use old he atom

Definition at line 6 of file iso.h.


Function Documentation

void iso_continuum_lower ( long  ipISO,
long  nelem 
)

void iso_cool ( long int  ipISO,
long int  nelem 
)

iso_cool compute net heating/cooling due to hydrogenc atom species

Parameters:
ipISO the isoelectronic sequence, 0 for H
nelem is element, so 0 for H itself
Todo:
2 - if pc lint ever fixes this bug in their product, remove this -e

Todo:
2 this routine dumps all heating and cooling into only a very few lables, it would be best to break these out into individual labels that show element, iso sequence, and agent

Definition at line 24 of file iso_cool.cpp.

References ASSERT, t_iso::Boltzmann, BOLTZMANN, t_iso::cBal_cool, t_elementnames::chElementSym, chLabel, t_iso::cLya_cool, t_iso::cLyrest_cool, t_iso::ColIoniz, t_iso::coll_ion, EmLine::ColUL, CoolAdd(), t_iso::cRest_cool, EmLine::cs, t_thermal::ctot, t_thermal::dCooldT, DEBUG_ENTRY, DEBUG_EXIT, dense, t_iso::dLTot, t_dense::eden, t_dense::EdenHCorr, t_dense::EdenHontoHCorr, elementnames, EmisLines, EN1RYD, EmLine::EnergyK, t_iso::FreeBnd_net_Cool_Rate, t_iso::gamnc, t_thermal::halfte, HCoolRatio(), t_thermal::heating, t_thermal::htot, HydroRecCool(), ioQQQ, ipH1s, ipH2p, ipH2s, ipH_LIKE, ipHE_LIKE, ipHELIUM, ipHYDROGEN, ipRecNetEsc, ipRecRad, iso, t_dense::lgElmtOn, LIMELM, MALLOC, MAX2, Elevels::n, NCOLNT_LAB_LEN, NISO, t_iso::numLevels_local, t_iso::numLevels_max, nzone, t_iso::PhotoHeat, phycon, t_iso::Pop2Ion, t_iso::PopLTE, POW2, POW3, powi(), t_iso::quant_desig, t_iso::RadRecCool, t_iso::RadRecomb, t_iso::RecomInducCool_Coef, t_iso::RecomInducCool_Rate, t_iso::RecomInducRate, SDIV(), t_phycon::sqlogz, t_iso::stat, t_phycon::te, TE1RYD, t_phycon::te_ryd, t_phycon::teinv, t_phycon::telogn, thermal, TotalInsanity(), t_thermal::tsq1, t_dense::xIonDense, t_iso::xIsoLevNIonRyd, and t_iso::xLineTotCool.

Referenced by CoolEvaluate().

Here is the call graph for this function:

void iso_create ( void   ) 

iso_create create storage space data for hydrogen and helium, 1 one time per coreload

Todo:
2 this will not work if highest level is resolved

Definition at line 21 of file iso_create.cpp.

References abscf(), ASSERT, EmLine::Aul, t_iso::Boltzmann, t_iso::ColIoniz, t_iso::ConBoltz, t_iso::ConOpacRatio, EmLine::dampXvel, DEBUG_ENTRY, DEBUG_EXIT, dense, t_iso::DepartCoef, EmisLines, EmLineJunk(), EN1RYD, EmLine::EnergyErg, EmLine::EnergyK, EnergyRyd, EmLine::EnergyWN, EVRYD, t_iso::ExtraLymanLines, t_iso::gamnc, GetGF(), EmLine::gf, EmLine::gHi, EmLine::gLo, He1AutoLines, helike, hydro, HydroEinstA(), t_hydro::HyLife, Singleton< t_ADfA >::Inst(), EmLine::IonStg, EmLine::ipCont, ipH1s, ipH2p, ipH2s, ipH_LIKE, ipHE_LIKE, ipHELIUM, ipHYDROGEN, t_iso::ipIsoLevNIonCon, ipLITHIUM, t_iso::ipLyaRedist, t_iso::ipOpac, ipRecEsc, ipRecNetEsc, ipRecRad, t_iso::ipResoRedist, t_iso::ipSubRedist, EmLine::iRedisFun, iso, iso_zero(), Elevels::l, t_helike::lgCompileRecomb, t_dense::lgElmtOn, t_helike::lgHugeCaseB, lgHydroMalloc, t_helike::lgSetBenjamin, LIMELM, MALLOC, MAX2, MIN2, Elevels::n, t_iso::n_HighestResolved_max, t_iso::nCollapsed_max, EmLine::nelem, NHYDRO_MAX_LEVEL, NISO, t_iso::nLyman, t_iso::nLyman_malloc, t_iso::numLevels_local, t_iso::numLevels_max, t_iso::numPrintLevels, EmLine::opacity, t_hydro::pestrk, t_ADfA::ph1(), t_iso::PhotoHeat, PI4, t_iso::Pop2Ion, t_iso::PopLTE, POW2, t_iso::quant_desig, t_iso::RadRecomb, t_iso::RateCont2Level, t_iso::RateLevel2Cont, t_iso::RecomInducCool_Coef, t_iso::RecomInducRate, RefIndex(), Elevels::s, t_iso::stat, t_iso::stat_ion, t_hydro::strkar, EmLine::TauTot, TE1RYD, WAVNRYD, EmLine::WLAng, and t_iso::xIsoLevNIonRyd.

Referenced by ContCreatePointers().

Here is the call graph for this function:

void iso_ionize_recombine ( long  ipISO,
long  nelem 
)

evaluate state specific creation and destruction processes

Parameters:
ipISO 
nelem 

Referenced by HeLike(), and Hydrogenic().

void iso_photo ( long  ipISO,
long  nelem 
)

do photoionization rates for element nelem on the ipISO isoelectronic sequence

Parameters:
ipISO 
nelem 

Referenced by HeLike(), and Hydrogenic().


Variable Documentation

EXTERN struct t_iso iso

Referenced by atmdat_2phot_rate(), atom_oi_calc(), AtomCSInterp(), atoms_fe2ovr(), cdDefines(), ChargTranSumHeat(), chkCaHeps(), collision_strength_VF01(), ContCreatePointers(), ContRate(), ContSetIntensity(), ConvBase(), ConvIterCheck(), ConvTempEdenIoniz(), CoolEvaluate(), CS_l_mixing_PS64(), CS_l_mixing_S62(), CS_VS80(), defect(), DoFSMixing(), Fe2_cooling(), ForbiddenAuls(), GammaBnPL(), GammaPL(), GrainRateDr(), H21_cm_pops(), he_1trans(), he_assign(), He_cross_section(), He_RRCoef_Te(), HeatSum(), HeCollid(), HeCreate(), HeCSInterp(), HeLike(), HelikeCheckRecomb(), HeLikeError(), HeLikeLevel(), HelikeRecombSetup(), HeRecom(), Hion_coll_ioniz_ratecoef(), HLineTransOpacSet(), hmole_reactions(), hmole_step(), hydro_vs_coll_str(), hydro_vs_deexcit(), hydro_vs_excit(), hydro_vs_ioniz(), HydroCollid(), Hydrogenic(), HydroLevel(), HydroLevelPop(), HydroRecCool(), HydroRecom(), HydroRenorm(), HydroT2Low(), ion_recomb(), ion_solver(), ion_trim(), IonCSInterp(), IonHelium(), IonMagne(), IonOxyge(), ipShells(), iso_continuum_lower(), iso_cool(), iso_create(), iso_ionize_recombine(), iso_photo(), iso_zero(), IterRestart(), IterStart(), lgCheckAsserts(), lines(), lines_continuum(), lines_general(), lines_helium(), lines_hydro(), Opacity_iso_photo_cs(), OpacityAdd1Element(), OpacityAddTotal(), OpacityCreateAll(), optimize_func(), ParseAtomHeLike(), ParseAtomHLike(), ParseCompile(), ParseElement(), ParsePrint(), ParseSet(), pfeii(), PresTotCurrent(), printCustomAs(), prt_H_like_DeparCoef(), prt_H_like_Pops(), prt_He_like_DeparCoef(), prt_He_like_Pops(), PrtAllTau(), PrtComment(), PrtContinuum(), PrtFinal(), PrtHeader(), PrtHydroTrace1(), PrtHydroTrace1a(), PrtHydroTrace2(), PrtLinePres(), prtmet(), PrtZone(), punch_opacity(), PunchDo(), PunchLineData(), PunchLineStuff(), PunchSpecial(), putError(), radius_first(), radius_increment(), radius_next(), radrecomb(), RT_diffuse(), RT_line_all(), RT_line_driving(), RT_OTS(), RT_stark(), RT_tau_inc(), RT_tau_init(), RT_tau_reset(), SanityCheckBegin(), state_get_put(), tfidle(), WaveFunction(), and zero().


Generated for cloudy by doxygen 1.5.9