Cloudy
Spectral Synthesis Code for Astrophysics
|
#include <opacity.h>
Public Member Functions | |
const char * | chName () const |
void | zero () |
void | comment (t_warnings &) |
Public Member Functions inherited from module | |
module () | |
virtual | ~module () |
|
inlinevirtual |
Implements module.
|
inlinevirtual |
Implements module.
|
virtual |
Implements module.
References DEBUG_ENTRY, lgCompileOpac, lgNegOpacIO, lgOpacNeg, lgOpacStatic, lgScatON, lgUseFileOpac, otsmin, and stimax.
vector<double> t_opac::albedo |
albedo is local gas albedo
Referenced by DumpLine(), emergent_line(), IterRestart(), OpacityAddTotal(), rfield_opac_alloc(), rfield_opac_zero(), RT_DestProb(), RTesc_lya_1side(), and SaveDo().
vector<realnum> t_opac::E2TauAbsFace |
saves value of E2(tau), exponential integral, where tau is optical depth to illuminated face
Referenced by emergent_line(), IterRestart(), IterStart(), lines_continuum(), rfield_opac_alloc(), rfield_opac_zero(), RT_continuum(), and RT_recom_effic().
vector<realnum> t_opac::E2TauAbsOut |
Referenced by emergent_line(), IterRestart(), rfield_opac_alloc(), rfield_opac_zero(), and RT_continuum().
vector<realnum> t_opac::E2TauAbsTotal |
same things but for outward direction. Only defined on second and later iteratios
Referenced by emergent_line(), rfield_opac_alloc(), rfield_opac_zero(), and RT_tau_reset().
vector<double> t_opac::eeFreeFreeOpacity |
Referenced by OpacityAddTotal(), rfield_opac_alloc(), and save_opacity().
double t_opac::eeFreeFreeTemp |
temperature used for the last ee brems evaluation
Referenced by InitDefaultsPreparse(), and OpacityAddTotal().
vector<realnum> t_opac::ExpmTau |
exp(-tau) to illuminated face
Referenced by cdSPEC2(), IterRestart(), IterStart(), rfield_opac_alloc(), rfield_opac_zero(), RT_continuum(), RT_diffuse(), RT_OTS(), and RT_OTS_Update().
vector_avx<double> t_opac::ExpZone |
exp(-dTau) for the current zone, evaluated in radinc
Referenced by IterRestart(), IterStart(), outline_base_bin(), rfield_opac_alloc(), rfield_opac_zero(), RT_continuum(), and RT_recom_effic().
vector<double> t_opac::FreeFreeOpacity |
density/temp factors needed for free-free opacity
Referenced by CoolEvaluate(), OpacityAddTotal(), rfield_opac_alloc(), rfield_opac_zero(), and save_opacity().
long t_opac::ica2ex[2] |
calcium excited states
Referenced by ContCreatePointers(), OpacityAddTotal(), and OpacityCreateAll().
long t_opac::ica2op |
Referenced by OpacityAddTotal(), and OpacityCreateAll().
long int t_opac::ih2pnt[2] |
ih2pnt lower, upper limits to bound, ih2pof, opacity offset
Referenced by ContCreatePointers(), OpacityAddTotal(), and OpacityCreateAll().
long int t_opac::ih2pnt_ex[2] |
Referenced by ContCreatePointers(), OpacityAddTotal(), and OpacityCreateAll().
long int t_opac::ih2pof |
Referenced by OpacityAddTotal(), and OpacityCreateAll().
long int t_opac::ih2pof_ex |
Referenced by OpacityAddTotal(), and OpacityCreateAll().
long int t_opac::in1[3] |
in1 is [NI] excited state
Referenced by ContCreatePointers(), ion_photo(), OpacityAddTotal(), and OpacityCreateAll().
long int t_opac::iopcom |
iopcom compton scatterin, total recoil
Referenced by highen(), OpacityAddTotal(), OpacityCreateAll(), and PresTotCurrent().
long int t_opac::iophe1 |
iophe1 points for photo from singlet levels
Referenced by OpacityCreateAll(), and save_opacity().
long t_opac::iopo2d |
photo to excited O+ levels
Referenced by ion_photo(), and OpacityCreateAll().
long int t_opac::ioppr |
Referenced by highen(), OpacityAddTotal(), and OpacityCreateAll().
long int t_opac::ioptri |
lowest levels of he triplets
long int t_opac::ipBrems |
ipBrems opacity offset pointer for brems (free-free)
Referenced by OpacityAddTotal(), and OpacityCreateAll().
long int t_opac::ipCKshell |
index of carbon k-shell threshold in energy array
Referenced by ContCreatePointers(), ContSetIntensity(), and OpacityCreateAll().
* ipElement[nelem][ioniz][shell][purpose], * array index on fortran scale, to energy range are set in ipShells, called by ContCreatePointers * pointers to opacity stack offset defined in OpacityCreate1Element where * opacities are set * * first dim * [0] is pointer to low-energy threshold in energy array * [1] is highest energy for shell, set by LimitSh * [2] is opacity offset within large opacity stack * * if shell does not exist, set upper limit * to less than lower limit so this never looped upon * these are used as flags by LimitSh to check whether * this is a real shell - * following code is in ipShells for this non-existant case * OpacPoint.ipElement[nelem][ion][nshell][0] = 2; * OpacPoint.ipElement[nelem][ion][nshell][1] = 1; * all routines must protect against this since opacities for these * undefined shells is also undefined * * second dim is shell, 0 for k shell, up to 6, * (Shell.chShell[ns] give the label for each of these shells) * These quantities are only defined for the number of shells that exist. * The number of shells is given by Heavy.nsShells[nelem][ion] * * third dimension is ion stage, 0 for atom * * last dim is atomic number of element, 0 for H *
Referenced by ContCreatePointers(), GammaPrtRate(), GammaPrtShells(), ion_photo(), ipShells(), LimitSh(), OpacityAdd1Element(), OpacityCreate1Element(), OpacityCreateAll(), OpacityValenceRescale(), RT_diffuse(), SanityCheckBegin(), save_opacity(), and SaveDo().
long int t_opac::iphmop |
iphmop H- bound free opacity
Referenced by mole_h_reactions(), OpacityAddTotal(), OpacityCreateAll(), and RT_diffuse().
long int t_opac::iphmra |
iphmra ratio of h minus to neut h ff brems opacity
Referenced by t_gaunt::brems_opac(), OpacityCreateAll(), and t_gaunt::p_setup_brems().
long t_opac::ipmgex |
photoionization from upper lev of Mg II 2798
Referenced by ContCreatePointers(), ion_photo(), OpacityAddTotal(), and OpacityCreateAll().
long int t_opac::ipo1exc[3] |
Referenced by ContCreatePointers(), ion_photo(), OpacityAddTotal(), and OpacityCreateAll().
long int t_opac::ipo3exc[3] |
pointers to oxy excited states
Referenced by ContCreatePointers(), ContSetIntensity(), ion_photo(), OpacityAddTotal(), and OpacityCreateAll().
long int t_opac::ipo3exc3[3] |
Referenced by ContCreatePointers(), ion_photo(), OpacityAddTotal(), and OpacityCreateAll().
long t_opac::ipOpMgEx |
Referenced by ion_photo(), OpacityAddTotal(), and OpacityCreateAll().
long int t_opac::ippr |
ippr is threshold for pair production, ioppr is opacity offset
Referenced by ContCreatePointers(), highen(), OpacityAddTotal(), and OpacityCreateAll().
long int t_opac::ipRayScat |
NBNBNBthis must exactly parallel the read/write statements in OpacityCreateAllipRayScat opacity pointer for Rayleigh scattering
Referenced by OpacityAddTotal(), and OpacityCreateAll().
bool t_opac::lgCaseB |
this flag says we are doing case b
Referenced by ConserveEnergy(), InitDefaultsPreparse(), iso_cascade(), iso_level(), iso_radiative_recomb(), IterStart(), ParseCaseB(), ParseCommands(), PrtComment(), RT_tau_init(), RT_tau_reset(), and SanityCheckBegin().
bool t_opac::lgCaseB_HummerStorey |
this flag turns off n=2 collisional excitations for comparison with their paper, keyword HUMMER on caseb command
Referenced by GetHlikeCollisionStrength(), InitDefaultsPreparse(), iso_collide(), iso_get_collision_strength(), and ParseCaseB().
bool t_opac::lgCaseB_no_pdest |
another case b option, turn off background opacities, no Pdest
Referenced by InitDefaultsPreparse(), ParseCaseB(), and RT_line_all_escape().
bool t_opac::lgCaseB_no_photo |
this flag turns off excited state photoionization, keyword NO PHOTO on caseb command
Referenced by InitDefaultsPreparse(), iso_photo(), and ParseCaseB().
bool t_opac::lgCompileOpac |
variable dealing with the option to generate and use an ancillary file containing a stored opacity set. These are all initialized in zero1 lgCompileOpac flag saying to compile opacity only
Referenced by OpacityCreateAll(), ParseCompile(), and zero().
bool t_opac::lgNegOpacIO |
IO unit to save negative opacities
Referenced by ParseSet(), pnegopc(), and zero().
bool t_opac::lgOpacNeg |
flag set if negative opacities occured
Referenced by PrtComment(), RT_continuum(), and zero().
bool t_opac::lgOpacStatic |
true by default, and set false with the no static opacities command. When false always update all opacities
Referenced by ConvBase(), ParseDont(), and zero().
bool t_opac::lgRedoStatic |
this flag is set true in OpacityZero when the OpacStatic array is zeroed, and is false if the array has been left alone. all later opacities must be reevaluated when this flag is true this is the stack used to hold opacities - entered one time when code is initialized, in routine OpacityCreateAll
Referenced by ConvBase(), GammaPrtShells(), ion_photo(), iso_photo(), OpacityAdd1Subshell(), OpacityAdd1SubshellInduc(), OpacityZero(), SanityCheckBegin(), and save_opacity().
bool t_opac::lgScatON |
flag saying whether (true) or not (false) scattering opacity is enabled
Referenced by t_rfield::getCoarseTransCoef(), ParseDont(), ParseSphere(), RT_continuum(), and zero().
bool t_opac::lgUseFileOpac |
set false if no file opacity command entered, option to ignore opacity file
Referenced by ParseDont(), and zero().
long int t_opac::nOpacTot |
total number of opacity cells used in opacity stack in OpacityCreateAll used as a counter to remember where next opacity goes
Referenced by OpacityCreate1Element(), OpacityCreateAll(), OpacityCreatePowerLaw(), and OpacityCreateReilMan().
double t_opac::o3exc |
threshold energies corresponding to ipo3exc[0] and ipo3exc3[0]
Referenced by ContCreatePointers(), and t_mesh::ValidateEdges().
double t_opac::o3exc3 |
Referenced by ContCreatePointers(), and t_mesh::ValidateEdges().
vector<double> t_opac::OldOpacSave |
save previous opacity
Referenced by IterRestart(), OpacityZero(), OpacityZeroOld(), rfield_opac_alloc(), and rfield_opac_zero().
vector<double> t_opac::opacity_abs |
local absorption opacity, cm-1
Referenced by ContRate(), DumpLine(), GrainRateDr(), IterEnd(), IterRestart(), IterStart(), OpacityAdd1Subshell(), OpacityAdd1SubshellInduc(), OpacityAddTotal(), OpacityCreate1Element(), OpacityCreateAll(), OpacityZero(), OpacityZeroOld(), pnegopc(), PresTotCurrent(), radius_first(), radius_next(), rfield_opac_alloc(), rfield_opac_zero(), RT_continuum(), RT_DestProb(), RT_diffuse(), RT_line_all_escape(), RT_line_electron_scatter(), RT_line_pumping(), RT_OTS(), RT_OTS_AddCont(), RT_OTS_AddLine(), RT_OTS_PrtRate(), RT_OTS_Update(), RT_recom_effic(), RTesc_lya(), SanityCheckBegin(), Save_Line_RT(), save_opacity(), SaveDo(), and ZoneStart().
vector<double> t_opac::opacity_abs_savzon1 |
initial opacities from zone 1, used to reset opacity at restart and the saved value of local opacity
Referenced by IterRestart(), IterStart(), and rfield_opac_alloc().
vector<double> t_opac::opacity_sct |
local scattering opacity, cm-1
Referenced by IterRestart(), IterStart(), OpacityAddTotal(), OpacityZero(), PresTotCurrent(), rfield_opac_alloc(), rfield_opac_zero(), RT_continuum(), Save_Line_RT(), save_opacity(), SaveDo(), and SaveSpecial().
vector<double> t_opac::opacity_sct_savzon1 |
opacity_sct_savzon1 save local opacity at start of calculations
Referenced by IterRestart(), IterStart(), and rfield_opac_alloc().
vector<double> t_opac::OpacStack |
Referenced by t_gaunt::brems_opac(), csphot(), GammaBn(), GammaK(), GammaPrt(), highen(), iso_rad_rec_cooling_discrete(), iso_radiative_recomb(), OpacityAdd1Subshell(), OpacityAdd1SubshellInduc(), OpacityAddTotal(), OpacityCreate1Element(), OpacityCreateAll(), OpacityCreatePowerLaw(), OpacityCreateReilMan(), OpacityValenceRescale(), t_gaunt::p_setup_brems(), PresTotCurrent(), RT_diffuse(), RT_iso_integrate_RRC(), SanityCheckBegin(), and save_opacity().
vector<double> t_opac::OpacStatic |
these static opacities are only evaluated one time per zone
Referenced by OpacityAdd1Subshell(), OpacityAdd1SubshellInduc(), OpacityAddTotal(), OpacityZero(), rfield_opac_alloc(), rfield_opac_zero(), SanityCheckBegin(), and save_opacity().
realnum t_opac::otsmin |
smallest ots rate, set to 0 in scalar
Referenced by ParseDont(), RT_recom_effic(), and zero().
realnum t_opac::stimax[2] |
max correction for stim emission in continuum opacities at Lyman and Balmer edges
Referenced by IterRestart(), OpacityAddTotal(), PrtComment(), and zero().
vector<realnum> t_opac::TauAbsFace |
these are the integrated absorption and scattering optical depths to the illuminated face of the cloud
Referenced by ContCreateMesh(), IterRestart(), IterStart(), mole_h_reactions(), radius_increment(), rfield_opac_alloc(), RT_continuum(), RT_tau_reset(), and SaveDo().
vector<realnum> t_opac::TauAbsGeo[2] |
[0] is optical depth for current position, [1] is total optical depth from previous iteration TauAbsGeo, TauScatGeo, absorption, scattering, optical depths, at current position, includes through far side of slab
Referenced by iso_radiative_recomb(), iter_end_check(), PrtAllTau(), PrtComment(), PrtFinal(), PrtZone(), radius_next(), rfield_opac_alloc(), rfield_opac_zero(), RT_continuum(), RT_recom_effic(), RT_tau_init(), RT_tau_reset(), SaveDo(), and tauff().
vector<realnum> t_opac::TauAbsTotal |
total absorption optical depth across computed structure
Referenced by IterRestart(), rfield_opac_alloc(), rfield_opac_zero(), RT_continuum(), and RT_tau_reset().
realnum t_opac::taumin |
taumin is the smallest optical depths allowed,
Referenced by diatomics::init(), InitDefaultsPreparse(), IterStart(), lines_setup(), ParseTauMin(), rfield_opac_zero(), RT_line_one_tau_reset(), RT_LineWidth(), RT_recom_effic(), RT_tau_init(), RT_tau_reset(), and TauZero().
vector<realnum> t_opac::TauScatFace |
Referenced by IterStart(), rfield_opac_alloc(), RT_continuum(), RT_tau_reset(), and SaveDo().
vector<realnum> t_opac::TauScatGeo[2] |
Referenced by rfield_opac_alloc(), rfield_opac_zero(), RT_continuum(), RT_tau_init(), and RT_tau_reset().
vector<realnum> t_opac::TauTotalGeo[2] |
TauTotalGeo is total optical depth at each energy, at current position, includes through far side of slab
Referenced by PrtAllTau(), rfield_opac_alloc(), rfield_opac_zero(), RT_continuum(), RT_tau_init(), and RT_tau_reset().
realnum t_opac::telec |
optical depths to Compton and H-
Referenced by PrtAllTau(), PrtComment(), RT_tau_inc(), RT_tau_reset(), and SaveResults().
realnum t_opac::thmin |
Referenced by PrtAllTau(), PrtComment(), RT_tau_inc(), and RT_tau_reset().
realnum t_opac::tlamin |
tlamin is smallest Lya optical depth, modified to large value if case b used
Referenced by InitDefaultsPreparse(), ParseCaseB(), RT_tau_init(), and RT_tau_reset().
vector<realnum> t_opac::tmn |
factors that account for attenuation of light across this zone should be nearly unity
Referenced by IterRestart(), lines_continuum(), outline_base_bin(), rfield_opac_alloc(), rfield_opac_zero(), RT_continuum(), RT_diffuse(), RT_recom_effic(), ZoneEnd(), and ZoneStart().