cloudy
trunk
|
#include <emission.h>
Public Types | |
typedef EmissionList | list_type |
typedef ProxyIterator < EmissionProxy, EmissionConstProxy > | iterator |
typedef ProxyIterator < EmissionConstProxy, EmissionConstProxy > | const_iterator |
Public Member Functions | |
EmissionProxy () | |
EmissionProxy (EmissionList *list, int index) | |
void | copy (const EmissionProxy &other) |
void | check () const |
int & | iRedisFun () const |
long int & | ipFine () const |
realnum & | TauIn () const |
realnum & | TauInSpecific () const |
realnum & | TauTot () const |
tracker & | TauTrack () const |
realnum & | TauCon () const |
realnum & | FracInwd () const |
double & | pump () const |
double & | xIntensity () const |
double & | xObsIntensity () const |
realnum & | gf () const |
realnum & | Pesc () const |
realnum & | Pelec_esc () const |
realnum & | Pdest () const |
realnum | Pesc_total () const |
realnum | Ploss () const |
realnum & | dampXvel () const |
realnum & | damp () const |
double & | ColOvTot () const |
realnum & | AutoIonizFrac () const |
realnum & | opacity () const |
double & | mult_opac () const |
double & | PopOpc () const |
realnum & | Aul () const |
double & | ots () const |
int & | ipTran () const |
TransitionProxy | Tran () const |
Private Attributes | |
EmissionList * | m_list |
int | m_index |
Friends | |
class | ProxyIterator< EmissionProxy, EmissionConstProxy > |
Definition at line 19 of file emission.h.
Definition at line 24 of file emission.h.
Definition at line 23 of file emission.h.
typedef EmissionList EmissionProxy::list_type |
Definition at line 22 of file emission.h.
|
inlineexplicit |
Definition at line 30 of file emission.h.
|
inlineexplicit |
Definition at line 31 of file emission.h.
|
inline |
transition prob, Einstein A upper to lower [s-1]
Definition at line 668 of file emission.h.
References EmissionList::m_Aul, m_index, and m_list.
Referenced by atom_level2(), ContCreatePointers(), copy(), DoFSMixing(), DumpLine(), emit_frac(), EmLineJunk(), diatomics::gs_rate(), diatomics::H2_PunchDo(), HeCSInterp(), HydroCSInterp(), InitDefaultsPreparse(), iso_cascade(), iso_collapsed_Aul_update(), iso_collapsed_lifetimes_update(), iso_create(), iso_get_collision_strength(), iso_level(), iso_solve(), IterStart(), lines(), TransitionProxy::outline(), PrtHydroTrace1(), PutLine(), read_UTA_lines(), ReadBadnellAIData(), RT_diffuse(), RT_line_pumping(), RT_OTS(), RT_stark(), RT_tau_init(), RT_tau_reset(), SanityCheckBegin(), Save1LineData(), Save_Line_RT(), SaveDo(), set_xIntensity(), setXtraRatesFe2(), and setXtraRatesO1().
|
inline |
[dimensionless] branching ratio to auto-ionization, Sum(Aai) / ( Sum(Aul) + Sum(Aai) )
Definition at line 628 of file emission.h.
References EmissionList::m_AutoIonizFrac, m_index, and m_list.
Referenced by copy(), EmLineJunk(), read_UTA_lines(), and ReadBadnellAIData().
|
inline |
all of these are set to dangerous values by EmLineJunk
Definition at line 35 of file emission.h.
References ASSERT, and ipTran().
|
inline |
[dimensionless] ratio of collisional to radiative excitation, C_lu / ( C_lu + pump )
Definition at line 618 of file emission.h.
References EmissionList::m_ColOvTot, m_index, and m_list.
Referenced by atom_level2(), copy(), EmLineJunk(), EmLineZero(), and PutLine().
|
inline |
Definition at line 688 of file emission.h.
References Aul(), AutoIonizFrac(), ColOvTot(), damp(), dampXvel(), FracInwd(), gf(), ipFine(), ipTran(), iRedisFun(), mult_opac(), opacity(), ots(), Pdest(), Pelec_esc(), Pesc(), PopOpc(), pump(), TauCon(), TauIn(), TauInSpecific(), TauTot(), TauTrack(), xIntensity(), and xObsIntensity().
|
inline |
[dimensionless] damping constant
Definition at line 608 of file emission.h.
References EmissionList::m_damp, m_index, and m_list.
Referenced by copy(), EmLineJunk(), InitDefaultsPreparse(), lindst(), radius_next(), RT_continuum_shield_fcn_point(), RT_line_escape(), RT_line_fine_opacity(), RT_line_one_escape(), RT_line_one_fine(), RT_LineWidth(), Save1LineData(), and SaveDo().
|
inline |
damping constant is dampXvel divided by line width units are velocity, since becomes dimensionless when div by line width in cm/2 [cm s-1]
Definition at line 598 of file emission.h.
References EmissionList::m_dampXvel, m_index, and m_list.
Referenced by copy(), InitDefaultsPreparse(), iso_collapsed_lifetimes_update(), iso_create(), lindst(), radius_next(), read_UTA_lines(), ReadBadnellAIData(), RT_line_one_escape(), RT_line_one_fine(), RT_LineWidth(), and Save1Line().
|
inline |
inward fraction [dimensionless] of total line emission
Definition at line 508 of file emission.h.
References EmissionList::m_FracInwd, m_index, and m_list.
Referenced by copy(), EmLineJunk(), EmLineZero(), PutLine(), RT_line_escape(), RT_line_one_escape(), RT_line_one_tau_reset(), and RT_tau_init().
|
inline |
gf value [dimensionless]
Definition at line 558 of file emission.h.
References EmissionList::m_gf, m_index, and m_list.
Referenced by copy(), dBase_solve(), EmLineJunk(), InitDefaultsPreparse(), iso_get_collision_strength(), iso_setOpacity(), iso_suprathermal(), MakeCS(), read_UTA_lines(), ReadBadnellAIData(), Save1Line(), and Save1LineData().
|
inline |
index for line within fine continuum array, for line overlap
Definition at line 448 of file emission.h.
References m_index, EmissionList::m_ipFine, and m_list.
Referenced by ContCreatePointers(), copy(), EmLineJunk(), InitDefaultsPreparse(), PressureRadiationLine(), print_emline_fine(), RT_line_escape(), RT_line_fine_opacity(), and RT_line_one_tauinc().
|
inline |
Definition at line 548 of file emission.h.
References m_index, EmissionList::m_ipTran, and m_list.
Referenced by check(), copy(), TransitionProxy::resetEmis(), and Tran().
|
inline |
type of redistribution function,
-1 complete redis Doppler core only, 0 insanity 1 incomplete redistribution with damping wings, 2 complete redistribution with damping wings,
Definition at line 438 of file emission.h.
References m_index, EmissionList::m_iRedisFun, and m_list.
Referenced by copy(), EmLineJunk(), InitDefaultsPreparse(), iso_setRedisFun(), read_UTA_lines(), ReadBadnellAIData(), RT_continuum_shield_fcn_point(), RT_line_escape(), RT_line_one_escape(), RT_line_one_fine(), and RT_line_pumping().
|
inline |
Definition at line 648 of file emission.h.
References m_index, m_list, and EmissionList::m_mult_opac.
Referenced by copy(), EmLineJunk(), EmLineZero(), iso_multiplet_opacities_one(), iso_solve(), RT_DestProb(), RT_line_electron_scatter(), RT_line_one_tau_reset(), and RT_line_one_tauinc().
|
inline |
atomic constant part of line opacity per atom, divide by line width in cm/s, to get line center opacity per atom, or absorption cross section, with units cm^2 multiply by PopOpc to get PopOpc/dopper width, the true opacity (cm-1), then by length to get optical depth
Definition at line 638 of file emission.h.
References m_index, m_list, and EmissionList::m_opacity.
Referenced by copy(), EmLineJunk(), InitDefaultsPreparse(), iso_multiplet_opacities_one(), iso_setOpacity(), PressureRadiationLine(), radius_next(), RT_DestProb(), RT_line_all_escape(), RT_line_electron_scatter(), RT_line_escape(), RT_line_fine_opacity(), RT_line_one_tauinc(), RT_line_pumping(), RT_tau_init(), RT_tau_reset(), and RTesc_lya().
|
inline |
ots rate [cm-3 s-1]
Definition at line 678 of file emission.h.
References m_index, m_list, and EmissionList::m_ots.
Referenced by atom_level2(), copy(), DumpLine(), EmLineJunk(), EmLineZero(), lines_hydro(), and RT_OTS().
|
inline |
destruction probs [dimensionless]
Definition at line 588 of file emission.h.
References m_index, m_list, and EmissionList::m_Pdest.
Referenced by copy(), DumpLine(), emit_frac(), EmLineJunk(), EmLineZero(), Ploss(), RT_DestProb(), RT_line_all_escape(), RT_line_electron_scatter(), RT_line_one_escape(), RT_line_one_tau_reset(), RT_LineWidth(), RT_OTS(), and SaveDo().
|
inline |
electron scattering escape prob [dimensionless]
Definition at line 578 of file emission.h.
References m_index, m_list, and EmissionList::m_Pelec_esc.
Referenced by copy(), DumpLine(), EmLineJunk(), EmLineZero(), Pesc_total(), RT_line_electron_scatter(), RT_line_one_escape(), RT_line_one_tau_reset(), and RT_LineWidth().
|
inline |
escape prob [dimensionless]
Definition at line 568 of file emission.h.
References m_index, m_list, and EmissionList::m_Pesc.
Referenced by copy(), DumpLine(), EmLineJunk(), EmLineZero(), OccupationNumberLine(), Pesc_total(), radius_next(), RT_DestProb(), RT_diffuse(), RT_line_electron_scatter(), RT_line_escape(), RT_line_one_escape(), RT_line_one_tau_reset(), SaveDo(), and SaveHeat().
|
inline |
total escape prob, from line and continuum scattering [dimensionless]
Definition at line 127 of file emission.h.
References Pelec_esc(), and Pesc().
Referenced by emit_frac(), lindst(), TransitionProxy::outline(), Ploss(), PutLine(), set_xIntensity(), and setXtraRatesO1().
|
inline |
total loss from trapped line – escape & destruction [dimensionless]
Definition at line 130 of file emission.h.
References Pdest(), and Pesc_total().
Referenced by atom_level2(), diatomics::gs_rate(), diatomics::H2_PunchDo(), iso_level(), PutLine(), RT_tau_init(), and SaveDo().
|
inline |
Population that enters net opacity after correction for stimulated emission [cm-3]
Definition at line 658 of file emission.h.
References m_index, m_list, and EmissionList::m_PopOpc.
Referenced by atom_level2(), copy(), DumpLine(), EmLineJunk(), EmLineZero(), iso_level(), iso_multiplet_opacities_one(), iso_renorm(), iso_solve(), OccupationNumberLine(), PressureRadiationLine(), radius_next(), RT_DestProb(), RT_line_all_escape(), RT_line_driving(), RT_line_escape(), RT_line_fine_opacity(), RT_line_one_tau_reset(), RT_line_one_tauinc(), RT_line_pumping(), and Save_Line_RT().
|
inline |
continuum pumping rate [s-1] from lower to upper level, A*occ num * g_up/g_lo, this is evaluated in RTMakeStat and RTMakeWind, which are called by HydroPEsc, RT_line_all
Definition at line 518 of file emission.h.
References m_index, m_list, and EmissionList::m_pump.
Referenced by atom_level2(), copy(), DoSatelliteLines(), DumpLine(), EmLineJunk(), EmLineZero(), iso_level(), IterStart(), PutLine(), radius_next(), RT_line_all_escape(), RT_line_driving(), RT_line_one_escape(), RT_line_pumping(), Save_Line_RT(), SaveDo(), and SaveHeat().
|
inline |
TauCon - line optical depth [Napier] to the continuum source from the illuminated face to the current position. For an open or expanding closed geometry TauCon is equal to TauIn. For a static closed geometry TauCon is optical depth from the illuminated face to the current depth
Definition at line 498 of file emission.h.
References m_index, m_list, and EmissionList::m_TauCon.
Referenced by cdTemp(), copy(), EmLineJunk(), prt_trans_opc_debug(), RT_continuum_shield_fcn(), RT_line_one_tau_reset(), RT_line_one_tauinc(), RT_tau_init(), RT_tau_reset(), SaveDo(), and TauZero().
|
inline |
optical depths - the escape probability is derived only from TauIn on first iteration. on later iterations it is the average of esc prob in inward (TauIn) and outward (TauTot - TauIn) directions TauIn - the total inward line optical depth [Napier], in the direction of the continuum source. This is measured from the illuminated face of the cloud to the current position on the first iteration, and on second and later iterations in an open geometry or in an expanding closed geometry. For a static spherical geometry TauIn is the sum of the optical depth from the current position to the illuminated face plus the optical depth on the "other side". At the illuminated face in a static spherical geometry TauIn is TauTot / 2. It includes the effects of line overlap.
Definition at line 458 of file emission.h.
References m_index, m_list, and EmissionList::m_TauIn.
Referenced by ConvIterCheck(), copy(), DumpLine(), EmLineJunk(), lgTauGood(), lines_helium(), prme(), prt_trans_opc_debug(), PrtComment(), radius_next(), RT_DestProb(), RT_line_escape(), RT_line_one_tau_reset(), RT_line_one_tauinc(), RT_LineWidth(), RT_stark(), RT_tau_init(), RT_tau_reset(), RTesc_lya(), Save1Line(), save_line(), Save_Line_RT(), SaveDo(), SaveHeat(), setXtraRatesFe2(), and TauZero().
|
inline |
TauInSpecific - the inward optical line depth [Napier], in the direction of the continuum source. This is much like TauIn(), except that it does not contain contributions from line overlap.
Definition at line 468 of file emission.h.
References m_index, m_list, and EmissionList::m_TauInSpecific.
Referenced by copy(), EmLineJunk(), prme(), RT_line_one_tauinc(), and TauZero().
|
inline |
TauTot - total line optical depth [Napier] through the cloud. TauTot is not used on the first iteration since it is not known. On second and later iterations in an open or expanding closed geometry this is the total optical depth through the computed structure. For a static closed geometry this is twice the computed structure since the geometry is assumed to be symmetric.
when the double command is entered TauTot is set to twice the normal value to simulate the presence of material beyond the computed structure.
Definition at line 478 of file emission.h.
References m_index, m_list, and EmissionList::m_TauTot.
Referenced by ConvIterCheck(), copy(), DumpLine(), EmLineJunk(), lgTauGood(), lines_helium(), prt_trans_opc_debug(), PrtComment(), RT_DestProb(), RT_line_escape(), RT_line_one_tau_reset(), RT_line_one_tauinc(), RT_LineWidth(), RT_tau_init(), RT_tau_reset(), RTesc_lya(), SaveDo(), setXtraRatesFe2(), and TauZero().
|
inline |
TauTrack - track convergence of TauIn / TauTot This class will detect oscillations and adjust the next estimate for TauIn / TauTot if this occurs
Definition at line 488 of file emission.h.
References m_index, m_list, and EmissionList::m_TauTrack.
Referenced by copy(), and RT_line_one_tau_reset().
|
inline |
Definition at line 514 of file transition.h.
References TransitionProxy::check(), ipTran(), m_list, and EmissionList::m_tlist.
|
inline |
line intensity per unit time and vol [erg s-1 cm-3]
Definition at line 528 of file emission.h.
References m_index, m_list, and EmissionList::m_xIntensity.
Referenced by atom_level2(), copy(), DoSatelliteLines(), EmLineJunk(), EmLineZero(), lindst(), lines_hydro(), phots(), PutLine(), PutLineSum(), randomize_inten(), RT_diffuse(), RT_line_one_tau_reset(), and set_xIntensity().
|
inline |
observed line intensity per unit time and vol [erg s-1 cm-3]; relative to xIntensity(), it includes correction for isotropic background radiation
Definition at line 533 of file emission.h.
References m_index, m_list, and EmissionList::m_xObsIntensity.
Referenced by atom_level2(), copy(), DoSatelliteLines(), EmLineJunk(), EmLineZero(), lindst(), lines(), lines_hydro(), lines_iron_Ka(), PutLineSum(), randomize_inten(), RT_line_one_tau_reset(), and set_xIntensity().
|
friend |
Definition at line 26 of file emission.h.
|
private |
Definition at line 28 of file emission.h.
Referenced by Aul(), AutoIonizFrac(), ColOvTot(), damp(), dampXvel(), FracInwd(), gf(), ipFine(), ipTran(), iRedisFun(), mult_opac(), opacity(), ots(), Pdest(), Pelec_esc(), Pesc(), PopOpc(), pump(), TauCon(), TauIn(), TauInSpecific(), TauTot(), TauTrack(), xIntensity(), and xObsIntensity().
|
private |
Definition at line 27 of file emission.h.
Referenced by Aul(), AutoIonizFrac(), ColOvTot(), damp(), dampXvel(), FracInwd(), gf(), ipFine(), ipTran(), iRedisFun(), mult_opac(), opacity(), ots(), Pdest(), Pelec_esc(), Pesc(), PopOpc(), pump(), TauCon(), TauIn(), TauInSpecific(), TauTot(), TauTrack(), Tran(), xIntensity(), and xObsIntensity().