#include <rfield.h>
◆ t_rfield()
◆ chName()
| const char * t_rfield::chName |
( |
| ) |
const |
|
inlinevirtual |
◆ comment()
◆ getCoarseTransCoef()
| const realnum * t_rfield::getCoarseTransCoef |
( |
| ) |
|
◆ resetCoarseTransCoef()
| void t_rfield::resetCoarseTransCoef |
( |
| ) |
|
|
inline |
◆ setCoarseTransCoefPtr()
| void t_rfield::setCoarseTransCoefPtr |
( |
size_t | size | ) |
|
|
inline |
◆ setTrimming()
| void t_rfield::setTrimming |
( |
| ) |
|
◆ zero()
| void t_rfield::zero |
( |
void | | ) |
|
|
virtual |
Implements module.
References DEBUG_ENTRY, DiffPumpOn, fine_opac_nelem, fine_opac_nresolv, ipIRON, lgBlockHIon, lgDoLineTrans, lgHabing, lgHeIIOTS, lgIonizReevaluate, lgKillOTSLine, lgKillOutCont, lgKillOutLine, lgLyaOTS, lgMustBlockHIon, lgOpacityReevaluate, lgSaveOpacityFine, rfield, and time_continuum_scale.
◆ chContLabel
| vector<string> t_rfield::chContLabel |
string identifying the first continuum edge that occurred at this energy
◆ chCumuType
| char t_rfield::chCumuType[5] |
◆ chDffTrns
| char t_rfield::chDffTrns[4] |
method for transferring diffuse continuum either 'ots' or 'oux' where x is n for which
◆ chLineLabel
| vector<string> t_rfield::chLineLabel |
string identifying the first line that occurred at this energy
◆ chRSpec
| char t_rfield::chRSpec[LIMSPC][5] |
◆ chSpNorm
| char t_rfield::chSpNorm[LIMSPC][5] |
chSpNorm says how spectrum was normalized - intensity or luminosity case chRSpec says whether per unit area or tot 4 pi
◆ chSpType
| char t_rfield::chSpType[LIMSPC][6] |
◆ cinrat
◆ cmcool
◆ cmheat
◆ comdn
| vector<double> t_rfield::comdn |
◆ comtot
◆ comup
| vector<double> t_rfield::comup |
saves for the upward and downward Compton shifts
◆ ConEmitLocal
ConEmitLocal is local diffuse continuum, units photons cm-3 s-1 cell-1, for each zone, evaluated in RT_diffuse
◆ ConEmitOut
outward diffuse emission continuum (not the interactive one), this is incremented in radinc because of interplay between absorption and emission - get the outward bremsstrahlung right photons cell-1 cm-2 s-1
◆ ConEmitReflec
reflected diffuse emission continuum
◆ ConInterOut
| vector<realnum> t_rfield::ConInterOut |
this is set in RT_diffuse and carries interactive continua
◆ ConOTS_local_OTS_rate
| vector<realnum> t_rfield::ConOTS_local_OTS_rate |
the local photoionization rate corresponding to above photons
◆ ConOTS_local_photons
| vector<realnum> t_rfield::ConOTS_local_photons |
this will control array of locally destroyed continuum photons, zeroed and evaluated in RT_diffuse, currently only two-photon
◆ ConRefIncid
ConRefIncid is reflected portion of incident continuum
◆ ConSourceFcnLocal
the local source function - diffuse emission, photons cell-1 cm-2 s-1
◆ ContBoltz
array of Boltzmann factors for the continuum energy grid and current temperature
◆ ContBoltzAvg
array of Boltzmann factors for the continuum energy grid and current temperature properly averaged over the width of the cell
◆ ContBoltzHelp1
helper arrays for calculating Boltzmann factors averaged over the width of the cell
◆ ContBoltzHelp2
◆ convoc
convoc is the conversion factor from rfield to OccNumbIncidCont
◆ csigc
◆ csigh
coefficients for fitting Tarter expressions for Compton heating and cooling, over full energy range of code
◆ cutoff
| double t_rfield::cutoff[LIMSPC][3] |
◆ DiffPumpOn
this is zero or one depending whether pumping by diffuse fields is turned on (1) or turned off (0)
Referenced by zero().
◆ DiffuseEscape
| vector<realnum> t_rfield::DiffuseEscape |
computed in rt_diffuse.cpp, escaping continuum emission added to beam in radius_increment
◆ DiffuseLineEmission
| vector<realnum> t_rfield::DiffuseLineEmission |
local diffuse line emission, photons cm-3 s-1
◆ eeBremsDif
| vector<realnum> t_rfield::eeBremsDif |
ee brems emission, still needs to be multiplied with pow2(dense.eden)
◆ EnerGammaRay
lowest energy counted as gamma rays, 100 keV
◆ EnergyBremsThin
◆ EnergyDiffCont
◆ EnergyIncidCont
intensity [erg cm-2 s-1] in incident and diffuse continua in current zone
◆ extin_mag_B_extended
| double t_rfield::extin_mag_B_extended |
extinction in magnitudes at B and V filters for a resolved source, this does discount forward scattering, so is appropriate for a resolved source
◆ extin_mag_B_point
| double t_rfield::extin_mag_B_point |
extinction in magnitudes at B and V filters for a point source, this does not discount forward scattering
◆ extin_mag_V_extended
| double t_rfield::extin_mag_V_extended |
◆ extin_mag_V_point
| double t_rfield::extin_mag_V_point |
◆ ExtinguishColumnDensity
| realnum t_rfield::ExtinguishColumnDensity |
◆ ExtinguishConvertColDen2OptDepth
| realnum t_rfield::ExtinguishConvertColDen2OptDepth |
the constant that multiplies the column density to get optical depth
Referenced by t_rfield().
◆ ExtinguishEnergyPowerLow
| realnum t_rfield::ExtinguishEnergyPowerLow |
◆ ExtinguishFactor
| vector<realnum> t_rfield::ExtinguishFactor |
extinction factor set with extinguish command
◆ ExtinguishLeakage
| realnum t_rfield::ExtinguishLeakage |
◆ ExtinguishLowEnergyLimit
| realnum t_rfield::ExtinguishLowEnergyLimit |
◆ fine_anu
energies at center of each bin for fine continuum
◆ fine_ener_hi
◆ fine_ener_lo
low and high bounds of fine continuum - set by need to include all resonance lines
◆ fine_lstack
| unordered_map<long, vector<int> > t_rfield::fine_lstack |
map of list of line stack indices (value) centered on fine opacity vector index (key)
◆ fine_opac_nelem
| long int t_rfield::fine_opac_nelem |
heaviest element to be considered - default is iron - the fine opacity array resolution depends on heaviest element and lowest temperature
Referenced by zero().
◆ fine_opac_nresolv
| long int t_rfield::fine_opac_nresolv |
number of resolution elements over width of this element, default is 4
Referenced by zero().
◆ fine_opac_velocity_width
| realnum t_rfield::fine_opac_velocity_width |
number of cm/s of each cell in fine mesh
◆ fine_opac_zone
| vector<realnum> t_rfield::fine_opac_zone |
the fine continuum opacity array
◆ fine_opt_depth
| vector<realnum> t_rfield::fine_opt_depth |
◆ fine_resol
| double t_rfield::fine_resol |
the dimensionless resolution of the fine continuum - dE/E
◆ flux
================================================================================= the following are the arrays containing the local radiation field flux is photons per cell N.B. width of cells vary with energy, given by widflx
◆ flux_accum
| vector<realnum> t_rfield::flux_accum |
the accumulated flux, sum from this energy to infinity
◆ flux_beam_const
| vector<realnum> t_rfield::flux_beam_const |
◆ flux_beam_const_save
| vector<realnum> t_rfield::flux_beam_const_save |
◆ flux_beam_time
| vector<realnum> t_rfield::flux_beam_time |
this is the variable and constant parts of the above
◆ flux_isotropic
| vector<realnum> t_rfield::flux_isotropic |
this is the isotropic part of the constant continuum
◆ flux_isotropic_save
| vector<realnum> t_rfield::flux_isotropic_save |
◆ flux_time_beam_save
| vector<realnum> t_rfield::flux_time_beam_save |
◆ flux_total_incident
save incident continuum for later iterations
◆ FluxFaint
| double t_rfield::FluxFaint |
faintest high energy flux to consider, set with set flxfnt command
◆ Illumination
◆ ip1000A
| long int t_rfield::ip1000A |
this is the wavelength where Bertoldi & Draine estimate the Habing field
◆ ipB_filter
| long int t_rfield::ipB_filter |
array indices for centers of B and V filters
◆ ipEnerGammaRay
| long int t_rfield::ipEnerGammaRay |
◆ ipEnergyBremsThin
| long int t_rfield::ipEnergyBremsThin |
ipEnergyBremsThin is index for lowest energy thin to ff abs and plasma frequency EnergyBremsThin is energy there, Ryd
◆ ipFineConVelShift
| long int t_rfield::ipFineConVelShift |
shift in fine continuum rest frame scale due to velocity gradient, rest frame is velocity of first zone, positive means that first zone is blue shifted relative to current zone. This is a decelerating flow. Evaluated in RT_line_all
◆ ipG0_DB96_hi
| long int t_rfield::ipG0_DB96_hi |
◆ ipG0_DB96_lo
| long int t_rfield::ipG0_DB96_lo |
these are the lower and upper bounds for the G0 radiation field used by Tielens & Hollenbach in their PDR work
◆ ipG0_spec_hi
| long int t_rfield::ipG0_spec_hi |
◆ ipG0_spec_lo
| long int t_rfield::ipG0_spec_lo |
these are the lower and upper bounds for the special G0 radiation field
◆ ipG0_TH85_hi
| long int t_rfield::ipG0_TH85_hi |
◆ ipG0_TH85_lo
| long int t_rfield::ipG0_TH85_lo |
these are the lower and upper bounds for the G0 radiation field used by Tielens & Hollenbach in their PDR work
◆ ipMaxBolt
| long int t_rfield::ipMaxBolt |
index of highest cell with positive Boltzmann factor
◆ ipnt_coarse_2_fine
| vector<long> t_rfield::ipnt_coarse_2_fine |
and array indices for lower and upper bounds of each coarse continuum mapped onto the fine continuum 0 (false) if fine continuum does not extend to these cells
Referenced by getCoarseTransCoef().
◆ ipPlasma
| long int t_rfield::ipPlasma |
pointer to current plasma frequency
◆ ipPlasmax
| long int t_rfield::ipPlasmax |
pointer to largest plasma freq encountered
◆ ipSpec
| long int t_rfield::ipSpec |
◆ ipV_filter
| long int t_rfield::ipV_filter |
◆ lgBeamed
| bool t_rfield::lgBeamed[LIMSPC] |
◆ lgBlockHIon
| bool t_rfield::lgBlockHIon |
◆ lgCMB_set
this flag says that CMB has been set
◆ lgComptonOn
| bool t_rfield::lgComptonOn |
◆ lgComUndr
set true if Compton cooling underflows
◆ lgDoLineTrans
| bool t_rfield::lgDoLineTrans |
option to not do line transfer, set false with no line transfer command
Referenced by zero().
◆ lgGamrOK
◆ lgHabing
flag set if incident radiation field less than 10x the Habing ISM field
Referenced by zero().
◆ lgHeIIOTS
flag saying whether to include HeII Lya and rec cont ots in the radiation field - - usually true, set false with no HeII ots command
Referenced by zero().
◆ lgHionRad
lgHionRad set to .true. if no hydrogen ionizing radiation
◆ lgHPhtOK
◆ lgInducProcess
| bool t_rfield::lgInducProcess |
turn off continuum pumping, set with 'no induced processes' command
◆ lgIonizReevaluate
| bool t_rfield::lgIonizReevaluate |
says whether to constantly reevaluate ionization, normally true, set false with no ionization reevaluate command
Referenced by zero().
◆ lgKillOTSLine
| bool t_rfield::lgKillOTSLine |
flag saying whether to kill ots lines
Referenced by zero().
◆ lgKillOutCont
| bool t_rfield::lgKillOutCont |
flag saying whether to kill outward only continuum
Referenced by zero().
◆ lgKillOutLine
| bool t_rfield::lgKillOutLine |
flag saying whether to kill outward only lines
Referenced by zero().
◆ lgLyaOTS
flag saying whether to include H1 Lya ots in the radiation field - usually true, set false with no Lya ots command
Referenced by zero().
◆ lgMMok
these are series of flags that say whether different parts of the continuum where entered ok
◆ lgMustBlockHIon
| bool t_rfield::lgMustBlockHIon |
this is set true is one of incident continua is expected to have all H-ionizing radiation blocked. That is done separately with the extinguish command.
Referenced by zero().
◆ lgOcc1Hi
flag saying that occupation number at 1 Ryd > 1
◆ lgOpacityReevaluate
| bool t_rfield::lgOpacityReevaluate |
says whether to constantly reevaluate opacities, normally true, set false with no opacity reevaluate command
Referenced by zero().
◆ lgOutOnly
another flag, true if outward only - used to multiply the ConInterOut continuum for creating the interactive continuum - when false, no outward only, this is not added
◆ lgPlasNu
following deal with plasma frequency, which enters the continuum array for even moderate densities due to very low frequencies considered set true if plasma freq enters energy array
◆ lgSaveOpacityFine
| bool t_rfield::lgSaveOpacityFine |
says that fine optical depths will be saved, so save them
Referenced by zero().
◆ lgSphericalDilution
| bool t_rfield::lgSphericalDilution[LIMSPC] |
does TABLE READ SED need additional spherical dilution?
◆ lgTimeVary
| bool t_rfield::lgTimeVary[LIMSPC] |
option to have continuum intensity be time dependent
◆ lgUSphON
lgUSphON flag set when we hit Stromgren radius in spherical geometry
◆ lgXRayOK
◆ line_count
| vector<long> t_rfield::line_count |
used to keep track of number of lines per freq interval
◆ ncont
◆ nfine
the number of fine continuum cells - will be several million
◆ nflux
================================================================================= the following define the continuum energy scale and its limits nflux is number of continuum points needed to get to high energy end of continuum. this excludes the unity test cell.
Referenced by getCoarseTransCoef(), and setTrimming().
◆ nflux_with_check
| long int t_rfield::nflux_with_check |
◆ nPositive
| long int t_rfield::nPositive |
number of cells to include highest continuum cell with non-zero photon flux, loops over continuum should go to <nPositive to include positive cells
Referenced by setTrimming().
◆ nShape
| long int t_rfield::nShape |
nShape is SED shape index number, this must equal the number of field intensities that are specified ipSpec is radiation field source number
◆ nZonePlsFrqEval
| long int t_rfield::nZonePlsFrqEval |
◆ occ1nu
◆ occmax
these store photon occupation numbers at various energies in the continuum
◆ occmnu
◆ OccNumbContEmitOut
| vector<realnum> t_rfield::OccNumbContEmitOut |
outward emitted continuum
◆ OccNumbDiffCont
| vector<realnum> t_rfield::OccNumbDiffCont |
OccNumbDiffCont is the continuum occupation number, for local diffuse continuum
◆ OccNumbIncidCont
| vector<realnum> t_rfield::OccNumbIncidCont |
OccNumbIncidCont is the continuum occupation number for the attenuated incident ONLY
◆ opac_mag_B_extended
| double t_rfield::opac_mag_B_extended |
◆ opac_mag_B_point
| double t_rfield::opac_mag_B_point |
these are total opacities at these wavelengths, used to stop at exact Av
◆ opac_mag_V_extended
| double t_rfield::opac_mag_V_extended |
◆ opac_mag_V_point
| double t_rfield::opac_mag_V_point |
◆ OpticalDepthScaleFactor
1 / cos( illumination angle, angle measured from normal, default is angle=zero, normal illumination, DirectCos = 1
◆ otscon
the local ots continuum rates
◆ otslin
otsline and otscon - local ots fields for line and continua outlin outward line fields the local ots line rates
◆ otssav
◆ outlin
outward directed line emission photons cm-2 s-1
◆ outlin_noplot
| vector<realnum> t_rfield::outlin_noplot |
◆ plsfrq
plasma frequency for current position in slab
◆ plsfrqmax
store highest energy plasma frequency encountered
◆ qbal
◆ qhe
◆ qheii
◆ qhtot
these are total numbers of photons over various energy ranges
◆ qrad
◆ qtot
◆ range
| double t_rfield::range[LIMSPC][2] |
energy range over which the intensity is integrated for normalizing each continuum source that contributes to the total source
◆ reflin
◆ RSFCheck
| double t_rfield::RSFCheck[LIMSPC] |
used to store a check on the continuum mesh resolution scale factor this is used for the output of the SAVE TRANSMITTED CONTINUUM command
◆ rstrom
the Stromgren radius var set to get u spherical
◆ slope
| double t_rfield::slope[LIMSPC] |
◆ spfac
| double t_rfield::spfac[LIMSPC] |
◆ SummedCon
| vector<double> t_rfield::SummedCon |
these are energy-by-energy sums of various arrays, used to save time in evaluating rate integrals
Referenced by setTrimming().
◆ SummedDif
| vector<realnum> t_rfield::SummedDif |
◆ SummedDifSave
| vector<realnum> t_rfield::SummedDifSave |
◆ SummedOcc
| vector<realnum> t_rfield::SummedOcc |
◆ TableRadius
| double t_rfield::TableRadius[LIMSPC] |
TABLE READ input is normalized on this radius
◆ tbr4nu
◆ tbrmax
◆ tbrmnu
◆ tFluxLog
this is the log of f_nu of continuum point
◆ time_continuum_scale
| realnum t_rfield::time_continuum_scale |
==1 for time steady, when continuum varies with time, is scale factor
Referenced by zero().
◆ tNu
these are used for interpolate and table commands, all have two indices, continuum and frequency tNuRyd is the linear energy Rydberg of continuum point must be explicit arrays again so that table commands will work before continuum defined.
◆ TotDiff2Pht
| vector<realnum> t_rfield::TotDiff2Pht |
saves total two photon continuum for debugging, set in RT_diffuse
◆ totpow
| double t_rfield::totpow[LIMSPC] |
◆ trans_coef_total
| vector<realnum> t_rfield::trans_coef_total |
|
private |
◆ trans_coef_total_stale
| bool t_rfield::trans_coef_total_stale |
◆ tslop
◆ uh
hydrogen ionization parameter
◆ uheii
helium ion ionization parameter
◆ vexp_arg
The documentation for this struct was generated from the following files: