cloudy trunk
Loading...
Searching...
No Matches
Public Member Functions | Data Fields
t_ionbal Class Reference

#include <ionbal.h>

Collaboration diagram for t_ionbal:
Collaboration graph
[legend]

Public Member Functions

double RateIonizTot (long nelem, long ion)
 

Data Fields

double trimhi
 
double trimlo
 
bool lgTrimhiOn
 
double **** PhotoRate_Shell
 
bool lgPhotoIoniz_On
 
double *** CollIonRate_Ground
 
double CosRayIonRate
 
double CosRayHeatNeutralParticles
 
double CosRayHeatThermalElectrons
 
double ExtraHeatRate
 
double xNeutronHeatRate
 
double PairProducPhotoRate [3]
 
bool lgCompRecoil
 
double CompRecoilHeatLocal
 
long int ** ipCompRecoil
 
double ** CompRecoilIonRate
 
double ** CompRecoilIonRateSave
 
double ** CompRecoilHeatRate
 
double ** CompRecoilHeatRateSave
 
double ** UTA_ionize_rate
 
double ** UTA_heat_rate
 
bool lgInnerShellLine_on
 
bool lgInnerShell_Kisielius
 
bool lgInnerShell_Gu06
 
double *** RateIoniz
 
long int nCompRecoilElec [LIMELM]
 
double CompHeating_Max
 
double ** RateRecomTot
 
double ** RateRecomIso
 
double ** RR_Badnell_rate_coef
 
double ** DR_Badnell_rate_coef
 
double ** CX_recomb_rate_used
 
bool lgRecom_Badnell_print
 
double ** RR_rate_coef_used
 
double ** RR_Verner_rate_coef
 
double DR_mean_scale [LIMELM]
 
realnum ** GrainCreat
 
realnum ** GrainDestr
 
int lgGrainIonRecom
 
realnum guess_noise
 
bool lgSupDie [2]
 
bool lgNoCota
 
realnum CotaRate [LIMELM]
 
long int ilt
 
long int iltln
 
long int ilthn
 
long int ihthn
 
long int ifail
 
double elecsrc [LIMELM]
 
double elecsnk [LIMELM]
 

Detailed Description

class for vars dealing with ionization balance

Definition at line 78 of file ionbal.h.

Member Function Documentation

◆ RateIonizTot()

double t_ionbal::RateIonizTot ( long  nelem,
long  ion 
)
inline

Field Documentation

◆ CollIonRate_Ground

double*** t_ionbal::CollIonRate_Ground

collisional ionization rate for CollidRate[nelem][ion][0], s-1 cooling, erg/s in CollidRate[nelem][ion][1] [LIMELM][LIMELM][2]

Definition at line 120 of file ionbal.h.

Referenced by fill_array(), HeatSum(), ion_collis(), iso_collide(), iso_level(), PrintRates(), and zero().

◆ CompHeating_Max

double t_ionbal::CompHeating_Max

Definition at line 190 of file ionbal.h.

Referenced by lines_general(), and PrtComment().

◆ CompRecoilHeatLocal

double t_ionbal::CompRecoilHeatLocal

the local heating due to Compton recoil ionization

Definition at line 152 of file ionbal.h.

Referenced by HeatSum(), lines_general(), and PrtZone().

◆ CompRecoilHeatRate

double** t_ionbal::CompRecoilHeatRate

heating rate due to bound electron ionization by Compton scattering

Definition at line 164 of file ionbal.h.

Referenced by HeatSum(), highen(), ion_photo(), iso_photo(), IterRestart(), IterStart(), and zero().

◆ CompRecoilHeatRateSave

double** t_ionbal::CompRecoilHeatRateSave

save heating rate due to bound electron ionization by Compton scattering

Definition at line 167 of file ionbal.h.

Referenced by IterRestart(), IterStart(), and zero().

◆ CompRecoilIonRate

double** t_ionbal::CompRecoilIonRate

rate of bound electron ionization by Compton scattering

Definition at line 158 of file ionbal.h.

Referenced by diatomics::CalcPhotoionizationRate(), highen(), ion_photo(), iso_photo(), IterRestart(), IterStart(), and zero().

◆ CompRecoilIonRateSave

double** t_ionbal::CompRecoilIonRateSave

save rate of bound electron ionization by Compton scattering

Definition at line 161 of file ionbal.h.

Referenced by IterRestart(), IterStart(), and zero().

◆ CosRayHeatNeutralParticles

double t_ionbal::CosRayHeatNeutralParticles

cosmic ray heating rate - erg s-1 - must multiply by density of absorbers - neutral hydrogen to get volume rate

Definition at line 127 of file ionbal.h.

Referenced by HeatSum(), and highen().

◆ CosRayHeatThermalElectrons

double t_ionbal::CosRayHeatThermalElectrons

cosmic ray heating of thermal electrons - must multiply by electron density to obtain erg cm-3 s-1

Definition at line 131 of file ionbal.h.

Referenced by HeatSum(), and highen().

◆ CosRayIonRate

double t_ionbal::CosRayIonRate

cosmic ray ionization rate

Definition at line 123 of file ionbal.h.

Referenced by ContSetIntensity(), HeatSum(), highen(), and ParseCosmicRays().

◆ CotaRate

realnum t_ionbal::CotaRate[LIMELM]

the actual rates

Definition at line 242 of file ionbal.h.

Referenced by atmdat_3body(), ion_recomb(), PrintRates(), PrtHydroTrace1a(), and zero().

◆ CX_recomb_rate_used

double ** t_ionbal::CX_recomb_rate_used

Definition at line 206 of file ionbal.h.

Referenced by ion_CX(), ion_recomb(), and zero().

◆ DR_Badnell_rate_coef

double ** t_ionbal::DR_Badnell_rate_coef

Definition at line 205 of file ionbal.h.

Referenced by ion_recom_calculate(), ion_recomb(), iso_radiative_recomb(), PrintRates(), and zero().

◆ DR_mean_scale

double t_ionbal::DR_mean_scale[LIMELM]

scale factors for guesses of the DR rates, for ions with no data set with SET DIELECTRONIC RECOMBINATION KLUDGE SCALE command

Definition at line 220 of file ionbal.h.

Referenced by InitDefaultsPreparse(), ion_recom_calculate(), and ParseSet().

◆ elecsnk

double t_ionbal::elecsnk[LIMELM]

Definition at line 251 of file ionbal.h.

Referenced by fill_array(), get_total_abundance_ions(), and lgNetEdenSrcSmall().

◆ elecsrc

double t_ionbal::elecsrc[LIMELM]

Definition at line 251 of file ionbal.h.

Referenced by fill_array(), get_total_abundance_ions(), and lgNetEdenSrcSmall().

◆ ExtraHeatRate

double t_ionbal::ExtraHeatRate

local heating rate due to some "extra" process

Definition at line 134 of file ionbal.h.

Referenced by HeatSum(), and highen().

◆ GrainCreat

realnum** t_ionbal::GrainCreat

rate for recombination and ionization on grain surfaces

Definition at line 223 of file ionbal.h.

◆ GrainDestr

realnum ** t_ionbal::GrainDestr

Definition at line 224 of file ionbal.h.

◆ guess_noise

realnum t_ionbal::guess_noise

log normal noise for guess, zero by default, turned on with noise option

Definition at line 231 of file ionbal.h.

Referenced by Badnell_rec_init(), ParseSet(), and zero().

◆ ifail

long int t_ionbal::ifail

Definition at line 249 of file ionbal.h.

Referenced by da(), IterStart(), PrtComment(), and zero().

◆ ihthn

long int t_ionbal::ihthn

Definition at line 248 of file ionbal.h.

Referenced by da(), IterStart(), and zero().

◆ ilt

long int t_ionbal::ilt

these are error flags for three-body recombination

Definition at line 245 of file ionbal.h.

Referenced by da(), IterStart(), and zero().

◆ ilthn

long int t_ionbal::ilthn

Definition at line 247 of file ionbal.h.

Referenced by da(), IterStart(), and zero().

◆ iltln

long int t_ionbal::iltln

Definition at line 246 of file ionbal.h.

Referenced by da(), IterStart(), and zero().

◆ ipCompRecoil

long int** t_ionbal::ipCompRecoil

array indices for continuum offset of Compton recoil ionization threshold

Definition at line 155 of file ionbal.h.

Referenced by ContCreatePointers(), ContSetIntensity(), highen(), OpacityAddTotal(), and zero().

◆ lgCompRecoil

bool t_ionbal::lgCompRecoil

flag saying that Compton recoil ionization of bound electrons is enabled, set false with no recoil ionization command

Definition at line 149 of file ionbal.h.

Referenced by ContSetIntensity(), highen(), ParseDont(), and zero().

◆ lgGrainIonRecom

int t_ionbal::lgGrainIonRecom

grecon usually true, set to 0 with no grain neutralization command

Definition at line 228 of file ionbal.h.

Referenced by fill_array(), GrainChargeTemp(), ParseDont(), and zero().

◆ lgInnerShell_Gu06

bool t_ionbal::lgInnerShell_Gu06

this says whether to replace the Behar 01 data with the Bu et al. 06 data - default is true, to do so, set false with SET UTA BEHAR command

Definition at line 180 of file ionbal.h.

Referenced by atmdat_readin(), ParseSet(), and zero().

◆ lgInnerShell_Kisielius

bool t_ionbal::lgInnerShell_Kisielius

says whether to include the new Romas data set

Definition at line 177 of file ionbal.h.

Referenced by atmdat_readin(), ParseSet(), and zero().

◆ lgInnerShellLine_on

bool t_ionbal::lgInnerShellLine_on

this says whether to include inner shell absorption lines

Definition at line 175 of file ionbal.h.

Referenced by ParseDont(), UpdateUTAs(), and zero().

◆ lgNoCota

bool t_ionbal::lgNoCota

following all for 3-body recombination lgNoCota flag set with no three body recombination

Definition at line 239 of file ionbal.h.

Referenced by atmdat_3body(), ParseDont(), and zero().

◆ lgPhotoIoniz_On

bool t_ionbal::lgPhotoIoniz_On

set to 1 in zero, so have no effect, set to 0 with 'no photoionization' command, kills photoionization of everything

Definition at line 116 of file ionbal.h.

Referenced by diatomics::CalcPhotoionizationRate(), GammaPrtShells(), ion_photo(), iso_photo(), ParseDont(), and zero().

◆ lgRecom_Badnell_print

bool t_ionbal::lgRecom_Badnell_print

option to print rates then exit

Definition at line 209 of file ionbal.h.

Referenced by ion_recom_calculate(), ParsePrint(), and zero().

◆ lgSupDie

bool t_ionbal::lgSupDie[2]

logical flag for suppression of dielectronic recombination 1 is burgess, 2 is Nussbaumer and Storey

Definition at line 235 of file ionbal.h.

Referenced by zero().

◆ lgTrimhiOn

bool t_ionbal::lgTrimhiOn

option to turn off upward ionization trimming, with set trim upper off

Definition at line 95 of file ionbal.h.

Referenced by ion_trim(), ParseSet(), and zero().

◆ nCompRecoilElec

long int t_ionbal::nCompRecoilElec[LIMELM]

number of valence electrons that can participate - multiplies since electron rate

Definition at line 188 of file ionbal.h.

Referenced by highen(), InitCoreload(), and OpacityAddTotal().

◆ PairProducPhotoRate

double t_ionbal::PairProducPhotoRate[3]

ionization and heating due to pair production

Definition at line 141 of file ionbal.h.

Referenced by HeatSum(), highen(), and lines_general().

◆ PhotoRate_Shell

double**** t_ionbal::PhotoRate_Shell
store photoionization rates for all shells of all elements
first dim is nelem, the atomic number of element on the c scale, H is 0.
second dim is stage of ionization, on the c scale, atom is 0.
third dim is shell number, K shell is 0, valence shell depends on ion, up to 7
last dim: 0 is photo rate (s-1)
          1 is low energy heating
          2 is high energy (secondary-capable) total heating
          both will be multiplied by ion abundance to get vol rates 
some special last pairs - 
[x][0][10][0] pair production in highen 

[LIMELM][LIMELM][7][3]

Definition at line 111 of file ionbal.h.

Referenced by fill_array(), GammaPrtRate(), GammaPrtShells(), HeatSum(), ion_photo(), iso_photo(), lines(), lines_lv1_li_ne(), lines_lv1_na_ar(), PrintRates(), SaveDo(), and zero().

◆ RateIoniz

double*** t_ionbal::RateIoniz

stage-to-stage ionization rates (s-1), all processes dimensions [nelem][from_ion][to_ion]

Definition at line 184 of file ionbal.h.

Referenced by fill_array(), HydroLevel(), iso_ionize_recombine(), iso_level(), iso_set_ion_rates(), PrintRates(), RateIonizTot(), and zero().

◆ RateRecomIso

double** t_ionbal::RateRecomIso

total recombination rate (s-1) for isosequences

Definition at line 201 of file ionbal.h.

Referenced by ion_recomb(), iso_ionize_recombine(), iso_level(), iso_set_ion_rates(), iso_update_rates(), and zero().

◆ RateRecomTot

double** t_ionbal::RateRecomTot

◆ RR_Badnell_rate_coef

double** t_ionbal::RR_Badnell_rate_coef

rate coefficients [cm3 s-1] for Badnell DR recombination

Definition at line 204 of file ionbal.h.

Referenced by ion_recom_calculate(), ion_recomb(), and zero().

◆ RR_rate_coef_used

double** t_ionbal::RR_rate_coef_used

radiative recombination rate coefficient (cm3 s-1) used by code

Definition at line 212 of file ionbal.h.

Referenced by CoolEvaluate(), ion_recom_calculate(), ion_recomb(), IonHelium(), iso_ionize_recombine(), PrintRates(), and zero().

◆ RR_Verner_rate_coef

double** t_ionbal::RR_Verner_rate_coef

radiative recombination rate coefficient returned from Dima Verner's routine

Definition at line 215 of file ionbal.h.

Referenced by ion_recom_calculate(), ion_recomb(), and zero().

◆ trimhi

double t_ionbal::trimhi

limits for highest and lowest stages of ionization in ion_trim, these are set with command "set trim xx" where xx is log of upper and lower ionization fractions. if only one number then both are set to it. These variables are used in trimStages to adjust the range of ionization.
limit to fractional abundance of high stage of ionization, set to 1e-6 in zero.c

Definition at line 88 of file ionbal.h.

Referenced by ion_trim(), mole_ion_trim(), ParseSet(), and zero().

◆ trimlo

double t_ionbal::trimlo

limit to fractional abundance of low stage of ionization, set to 1e-10 in zero.c

Definition at line 92 of file ionbal.h.

Referenced by ion_trim(), mole_ion_trim(), ParseSet(), and zero().

◆ UTA_heat_rate

double** t_ionbal::UTA_heat_rate

inner shell UTA heating rate

Definition at line 172 of file ionbal.h.

Referenced by HeatSum(), UpdateUTAs(), and zero().

◆ UTA_ionize_rate

double** t_ionbal::UTA_ionize_rate

inner shell UTA ionization rate, includes autoionization probability

Definition at line 170 of file ionbal.h.

Referenced by fill_array(), PrintRates(), UpdateUTAs(), and zero().

◆ xNeutronHeatRate

double t_ionbal::xNeutronHeatRate

heating erg s-1 due to fast neutrons - energy flux times cross section but does not include density

Definition at line 138 of file ionbal.h.

Referenced by HeatSum(), and highen().


The documentation for this class was generated from the following file: