#include "cddefines.h"
#include "rfield.h"
#include "doppvel.h"
#include "dense.h"
#include "opacity.h"
#include "transition.h"
#include "conv.h"
#include "radius.h"
#include "rt.h"
#include "physconst.h"
#include "cosmology.h"
#include "thirdparty.h"
Go to the source code of this file.
Functions | |
STATIC void | getVoigt (long int nCells_core, long int nCells_damp, realnum *xprofile, realnum *profile, realnum damp) |
STATIC void | RT_line_pumping (transition *t, bool lgShield_this_zone, realnum DopplerWidth) |
STATIC void | RT_line_electron_scatter (transition *t, realnum DopplerWidth) |
STATIC void | RT_line_escape (transition *t, realnum pestrk, realnum DopplerWidth, bool lgGoodTau) |
STATIC void | RT_line_fine_opacity (transition *t, realnum DopplerWidth) |
void | RT_line_one (transition *t, bool lgShield_this_zone, realnum pestrk, realnum DopplerWidth) |
STATIC void getVoigt | ( | long int | nCells_core, | |
long int | nCells_damp, | |||
realnum * | xprofile, | |||
realnum * | profile, | |||
realnum | damp | |||
) |
Definition at line 392 of file rt_line_one.cpp.
References ASSERT, humlik(), MAX2, POW2, sexp(), and SQRTPI.
Referenced by RT_line_fine_opacity().
STATIC void RT_line_electron_scatter | ( | transition * | t, | |
realnum | DopplerWidth | |||
) |
Definition at line 84 of file rt_line_one.cpp.
References DEBUG_ENTRY, dense, t_dense::eden, transition::Emis, t_rt::lgElecScatEscape, MAX2, t_emission::opacity, t_emission::Pdest, t_emission::Pelec_esc, t_emission::Pesc, t_emission::PopOpc, rt, and SMALLFLOAT.
Referenced by RT_line_one().
STATIC void RT_line_escape | ( | transition * | t, | |
realnum | pestrk, | |||
realnum | DopplerWidth, | |||
bool | lgGoodTau | |||
) |
Definition at line 124 of file rt_line_one.cpp.
References cdEXIT, conv, cosmology, t_emission::damp, DEBUG_ENTRY, DumpLine(), transition::Emis, esc_CRDcore(), esc_CRDwing(), esc_PRD(), fixit(), fnzone, t_rt::fracin, t_emission::FracInwd, transition::Hi, ioQQQ, transition::ipCont, ipCRD, ipCRDW, ipDEST_INCOM, ipDEST_K2, ipLY_A, ipPRD, t_emission::iRedisFun, lgAbort, t_cosmology::lgDo, t_conv::lgFirstSweepThisZone, min(), t_quantumState::nelem, t_emission::opacity, t_emission::Pdest, t_emission::Pesc, t_emission::PopOpc, rt, RT_DestProb(), RTesc_lya(), ShowMe(), t_emission::TauIn, and t_emission::TauTot.
Referenced by RT_line_one().
STATIC void RT_line_fine_opacity | ( | transition * | t, | |
realnum | DopplerWidth | |||
) |
Definition at line 288 of file rt_line_one.cpp.
References conv, t_emission::damp, DEBUG_ENTRY, t_radius::depth_x_fillfac, transition::Emis, t_rfield::fine_opac_velocity_width, t_rfield::fine_opac_zone, getVoigt(), t_emission::ipFine, t_rfield::ipFineConVelShift, t_conv::lgLastSweepThisZone, t_rfield::lgOpacityFine, MAX2, MIN2, t_rfield::nfine, t_emission::opacity, t_emission::PopOpc, radius, rfield, SMALLFLOAT, and SQRTPI.
Referenced by RT_line_one().
void RT_line_one | ( | transition * | t, | |
bool | lgShield_this_zone, | |||
realnum | pestrk, | |||
realnum | DopplerWidth | |||
) |
RT_line_one do line radiative transfer
t | line structure | |
pestrk | Stark escape probability | |
DopplerWidth | ||
lgShield_this_zone | this is option to not include line self shielding across this zone. this can cause pump to depend on zone thickness, and leads to unstable feedback in some models with the large H2 molecule, due to Solomon process depending on zone thickness and level populations. |
Definition at line 423 of file rt_line_one.cpp.
References ASSERT, cdEXIT, conv, t_emission::damp, t_emission::dampXvel, DEBUG_ENTRY, transition::Emis, EN1RYD, transition::EnergyErg, t_emission::FracInwd, ioQQQ, ipLY_A, t_emission::iRedisFun, t_rfield::lgDoLineTrans, t_conv::lgLastSweepThisZone, lgTauGood(), transition::Lo, MAX2, MIN2, nzone, t_emission::Pdest, t_emission::Pelec_esc, t_emission::Pesc, t_rfield::plsfrq, t_quantumState::Pop, t_emission::pump, rfield, RT_line_electron_scatter(), RT_line_escape(), RT_line_fine_opacity(), RT_line_pumping(), and SMALLFLOAT.
Referenced by CoolDima(), CoolEvaluate(), FeII_RT_Make(), H2_RTMake(), and RT_line_all().
STATIC void RT_line_pumping | ( | transition * | t, | |
bool | lgShield_this_zone, | |||
realnum | DopplerWidth | |||
) |
Definition at line 27 of file rt_line_one.cpp.
References ASSERT, t_emission::Aul, conv, DEBUG_ENTRY, t_radius::drad_x_fillfac_mean, transition::Emis, t_quantumState::g, transition::Hi, transition::ipCont, ipLY_A, t_emission::iRedisFun, t_conv::lgFirstSweepThisZone, t_rfield::lgInducProcess, transition::Lo, MIN2, t_rfield::OccNumbContEmitOut, t_rfield::OccNumbIncidCont, opac, t_emission::opacity, t_opac::opacity_abs, t_emission::PopOpc, t_emission::pump, radius, rfield, and RT_continuum_shield_fcn().
Referenced by RT_line_one().