#include <grainvar.h>
Collaboration diagram for t_gv:
this is the master data structure for grain physics, it is statically allocated
!! apart from bin[NDUST], NOTHING in this structure should have dimension NDUST !!
all entries that depend on grain type should go in the GrainBin structure above
NB NB NB NB NB NB
Definition at line 379 of file grainvar.h.
<[NC_ELL] anumax[i] = anu[i] + 0.5*widflx[i]
Definition at line 434 of file grainvar.h.
Referenced by GrainsInit(), and qheat_init().
<[NC_ELL] anumin[i] = anu[i] - 0.5*widflx[i]
Definition at line 434 of file grainvar.h.
Referenced by GrainsInit(), and qheat_init().
store data about energy spectrum of Auger electrons
Definition at line 454 of file grainvar.h.
Referenced by InitBinAugerData(), and ReadAugerData().
pointers to memory allocated for bins
Definition at line 502 of file grainvar.h.
Referenced by AbundancesPrt(), elec_esc_length(), GetFracPop(), GetPotValues(), GetProbDistr_HighLimit(), GetProbDistr_LowLimit(), GrainCharge(), GrainChargeTemp(), GrainChrgTransferRates(), GrainCollHeating(), GrainDrift(), GrainDrive(), GrainElecEmis1(), GrainElecRecomb1(), GrainIonColl(), GrainMakeDiffuse(), GrainRestartIter(), GrainScreen(), GrainsInit(), GrainStartIter(), GrainTemperature(), GrainUpdateRadius1(), GrainUpdateRadius2(), grn_abs(), GrnStdDpth(), GrnVryDpth(), InitBinAugerData(), InitEmissivities(), InitEnthalpy(), inv_ufunct(), lgCheckAsserts(), lines_grains(), NewChargeData(), NewGrainBin(), one_elec(), PE_init(), PlanckIntegral(), qheat(), qheat_init(), RebinQHeatResults(), ReturnGrainBins(), TryDoubleStep(), uderiv(), ufunct(), UpdatePot(), UpdatePot1(), UpdatePot2(), UpdateRecomZ0(), vib_evap(), y0b(), y0b01(), y0psa(), y1psa(), and Yfunc().
char t_gv::chPAH_abundance_fcn[5] |
which of several functions that describes how PAH abundances depend on conditions, default is "H0", proportional to n(H0) / n(Htot) changed with the SET PAH command
Definition at line 413 of file grainvar.h.
Referenced by GrainZero(), GrnStdDpth(), and ParseSet().
largest local cooling of gas by collisions with grains
Definition at line 477 of file grainvar.h.
Referenced by GrainDrive(), and lines_grains().
double t_gv::dHeatdT |
gas heating derivative for all grains, in erg/cm^3/s/K
Definition at line 473 of file grainvar.h.
Referenced by GrainZero().
largest fraction of local heating due to grain PE heating
Definition at line 477 of file grainvar.h.
Referenced by GrainDrive(), and lines_grains().
double* t_gv::dstab |
<[NC_ELL] total absorption cross section, current depl is factored in
Definition at line 440 of file grainvar.h.
Referenced by ContRate(), GrainsInit(), and GrainUpdateRadius2().
min grain abundance for enabling quantum heating in molecular regions
Definition at line 486 of file grainvar.h.
Referenced by GrainMakeDiffuse(), and GrainZero().
quantum heating physics min grain abundance for enabling quantum heating near I-front
Definition at line 485 of file grainvar.h.
Referenced by GrainMakeDiffuse(), and GrainZero().
double * t_gv::dstsc |
<[NC_ELL] total scattering cross section, current depl and asymmetry factored in
Definition at line 440 of file grainvar.h.
Referenced by GrainsInit(), and GrainUpdateRadius2().
double t_gv::dsttmp[NDEMS] |
equilibrium temperature grain temperature grid for dstems (in GrainBin)
Definition at line 482 of file grainvar.h.
Referenced by GetProbDistr_HighLimit(), GetProbDistr_LowLimit(), InitEmissivities(), InitEnthalpy(), inv_ufunct(), qheat(), RebinQHeatResults(), TryDoubleStep(), and ufunct().
number density of elements summed over all grain bins, at actual depl
Definition at line 421 of file grainvar.h.
Referenced by AbundancesPrt(), GrainsInit(), GrainUpdateRadius1(), and IonIron().
double t_gv::GasCoolColl |
heating/cooling balance, all entries are valid for current zone, actual depl, and are in erg/cm^3/s cooling of the gas by collisions with all grains, summed in GrGC 0
Definition at line 462 of file grainvar.h.
Referenced by CoolEvaluate(), GrainChargeTemp(), GrainDrive(), GrainsInit(), and lines_grains().
double t_gv::GasHeatNet |
net heating of the gas: PhotoEl + Therm - CoolColl
Definition at line 462 of file grainvar.h.
double t_gv::GasHeatPhotoEl |
heating of the gas by photoelectric effect of all grains
Definition at line 462 of file grainvar.h.
Referenced by CoolEvaluate(), GrainChargeTemp(), and GrainDrive().
double t_gv::GasHeatTherm |
heating of the gas by thermionic emissions of all grains
Definition at line 462 of file grainvar.h.
Referenced by CoolEvaluate(), and GrainChargeTemp().
realnum t_gv::GrainChTrRate[LIMELM][LIMELM+1][LIMELM+1] |
grain surface recombination rate for element nelem, ionization stage "ion-from" to "ion-to" already multiplied by grain area, actual depletion, GrainChTrRate[nelem][ion-from][ion-to], units s^-1, this can be both ionization and neutralization process, so ion-to can be > or < ion-from
Definition at line 459 of file grainvar.h.
Referenced by ele_ion_ladder(), GrainChargeTemp(), GrainChrgTransferRates(), GrainDrive(), GrainZero(), and IonSilic().
[NC_ELL] total emission from this zone, per unit vol, for add outward in metfic
Definition at line 496 of file grainvar.h.
Referenced by GrainMakeDiffuse(), and GrainsInit().
double t_gv::GrainHeatChem |
net amount of energy donated by recombining ions to all grains
Definition at line 462 of file grainvar.h.
Referenced by GrainChargeTemp(), and GrainDrive().
double t_gv::GrainHeatCollSum |
collisional heating of all grains, added in GraC 0
Definition at line 462 of file grainvar.h.
Referenced by GrainChargeTemp(), GrainDrive(), GrainsInit(), and lines_grains().
double t_gv::GrainHeatDif |
heating of all grains by all diffuse fields (incl Lya), added in GraD 0
Definition at line 462 of file grainvar.h.
Referenced by GrainChargeTemp(), GrainDrive(), GrainsInit(), and lines_grains().
double t_gv::GrainHeatInc |
heating of all grains by incident continuum, added in GraI 0
Definition at line 462 of file grainvar.h.
Referenced by GrainChargeTemp(), GrainDrive(), GrainsInit(), and lines_grains().
double t_gv::GrainHeatLya |
heating of all grains by Lya, added in GraL 1216
Definition at line 462 of file grainvar.h.
Referenced by GrainChargeTemp(), GrainDrive(), GrainsInit(), and lines_grains().
scale factor for PE heating as per Allers et al. 2005 (SET GRAINS HEAT)
Definition at line 475 of file grainvar.h.
Referenced by GrainDrive(), GrainZero(), and ParseSet().
double t_gv::GrainHeatSum |
total heating of all grain types, added in GraT 0
Definition at line 462 of file grainvar.h.
Referenced by GrainChargeTemp(), GrainDrive(), GrainsInit(), and lines_grains().
chemical abundances of grains are normalized such that in any given zone the total number density of an element nelem locked up in grains is given by elmSumAbund(nelem) = Sum_over_nd ( elmAbund[nd][nelem]*dstAbund[nd]*dense.hden ) grain depletion factor, from METALS xxx GRAINS command, usually 1
Definition at line 421 of file grainvar.h.
Referenced by GrainUpdateRadius1(), and GrainZero().
[NC_ELL] graphite emission from this zone only
Definition at line 496 of file grainvar.h.
Referenced by GrainMakeDiffuse(), and GrainsInit().
largest local fraction of electrons donated by grains
Definition at line 448 of file grainvar.h.
Referenced by GrainDrive(), and lines_grains().
largest local fraction of electrons contained by grains
Definition at line 448 of file grainvar.h.
Referenced by GrainDrive(), and lines_grains().
the electron temperature that was used to calculate the recom rates
Definition at line 450 of file grainvar.h.
Referenced by NewChargeData().
long t_gv::HighestIon |
highest ionization stage with non-zero abundance present in the gas
Definition at line 451 of file grainvar.h.
Referenced by GrainChargeTemp(), and UpdateRecomZ0().
bool t_gv::lgAnyDustVary |
do any of the grain abundances vary with depth
Definition at line 382 of file grainvar.h.
Referenced by GrainDrive(), GrainUpdateRadius2(), and GrainZero().
bool t_gv::lgAnyNegCharge |
are any of the grain charges negative ?
Definition at line 382 of file grainvar.h.
Referenced by GrainDrive(), and GrainUpdateRadius2().
bool t_gv::lgBakes |
approximate physics used in Bakes & Tielens (1994)
Definition at line 382 of file grainvar.h.
Referenced by GrainZero().
turn on simple formula for PAH heating of gas
Definition at line 382 of file grainvar.h.
Referenced by CoolEvaluate(), GrainDrive(), GrainZero(), and ParseSet().
bool t_gv::lgDColOn |
turn off grain gas collisional energy exchange, set false with NO GRAIN COLLISIONAL ENERGY EXCHANGE default true, turned off with GRAIN NO COOLING
Definition at line 400 of file grainvar.h.
Referenced by GrainZero(), ParseDont(), and ParseGrain().
bool t_gv::lgDHetOn |
test logic default true, turned off with GRAIN NO HEATING
Definition at line 395 of file grainvar.h.
Referenced by CoolEvaluate(), GrainZero(), and ParseGrain().
bool t_gv::lgDustOn |
grain logic have any grains been switched on ?
Definition at line 382 of file grainvar.h.
Referenced by AbundancesPrt(), CO_create_react(), CO_Init(), ConvPresTempEdenIoniz(), CoolEvaluate(), GrainDrive(), GrainRestartIter(), GrainsInit(), GrainStartIter(), ion_photo(), and NewGrainBin().
should electrons from/to grains be included in the total electron sum? del true, set false with no grain electrons command
Definition at line 404 of file grainvar.h.
Referenced by GrainZero(), and ParseDont().
this is option to turn off all grain physics while leaving the opacity in, set false with no grain physics command
Definition at line 382 of file grainvar.h.
Referenced by ConvPresTempEdenIoniz(), CoolEvaluate(), GrainDrive(), GrainRestartIter(), GrainStartIter(), GrainZero(), lines_grains(), and ParseDont().
bool t_gv::lgNegGrnDrg |
flag set if negative grin drag force encountered
Definition at line 392 of file grainvar.h.
Referenced by GrainDrift(), and GrainZero().
bool t_gv::lgQHeatAll |
use quantum heating for all grains, WILL BECOME DEFAULT
Definition at line 487 of file grainvar.h.
Referenced by GrainZero().
bool t_gv::lgQHeatOn |
default true, turned off with GRAIN NO QHEAT
Definition at line 395 of file grainvar.h.
Referenced by GrainZero(), and ParseDont().
bool t_gv::lgQHPunLast |
only punch quantum heating information on last iteration
Definition at line 487 of file grainvar.h.
Referenced by ParsePunch().
bool t_gv::lgReevaluate |
reevaluate keyword on grains cmd => always reevalutae grain conditions during calculation
Definition at line 382 of file grainvar.h.
Referenced by GrainDrive(), GrainZero(), and ParseGrain().
bool t_gv::lgWD01 |
use physics as described in Weingartner & Draine (2001)
Definition at line 382 of file grainvar.h.
Referenced by GrainZero(), IonIron(), ParseDont(), qheat_init(), y0b(), and y2s().
long int t_gv::nBin |
per grain data counter for how many bins have been allocated
Definition at line 501 of file grainvar.h.
Referenced by AbundancesPrt(), GetFracPop(), GetProbDistr_LowLimit(), GrainCharge(), GrainChargeTemp(), GrainDrift(), GrainDrive(), GrainElecEmis1(), GrainElecRecomb1(), GrainMakeDiffuse(), GrainRestartIter(), GrainsInit(), GrainStartIter(), GrainTemperature(), GrainUpdateRadius1(), GrainUpdateRadius2(), grn_abs(), InitEmissivities(), InitEnthalpy(), inv_ufunct(), lgCheckAsserts(), lines_grains(), NewGrainBin(), PE_init(), qheat(), qheat_init(), RebinQHeatResults(), ReturnGrainBins(), uderiv(), ufunct(), UpdatePot(), and vib_evap().
long t_gv::nChrgRequested |
number of charge states requested by user, default value is 2
Definition at line 451 of file grainvar.h.
Referenced by GrainZero(), NewGrainBin(), and SetNChrgStates().
long t_gv::nfill |
grain opacities remember how far dstab and dstsc were filled in
Definition at line 438 of file grainvar.h.
Referenced by GrainUpdateRadius2().
long t_gv::nzone |
remember in what zone dstab and dstsc where calculated
Definition at line 438 of file grainvar.h.
Referenced by GrainUpdateRadius2().
FILE* t_gv::QHPunchFile |
file pointer for PUNCH QHEAT command
Definition at line 489 of file grainvar.h.
Referenced by ParsePunch(), and PunchFilesInit().
H2 physics rate H2 forms on grains, summed over bins, units s^-1, actual depl when multiplied with hden, this is formation rate in H2-molecules/cm^3/s
Definition at line 492 of file grainvar.h.
Referenced by lgCheckAsserts().
long t_gv::ReadPtr |
pointer for the array above
Definition at line 408 of file grainvar.h.
Referenced by GrainZero(), and mie_read_opc().
record of all the files read by mie_read_opc
Definition at line 407 of file grainvar.h.
Referenced by mie_read_opc().
[NC_ELL] silicate emission from this zone only
Definition at line 496 of file grainvar.h.
Referenced by GrainMakeDiffuse(), and GrainsInit().
total PE heating integrated over model, erg/s or erg/cm^2/s, actual depl
Definition at line 477 of file grainvar.h.
Referenced by GrainDrive(), and lines_grains().
double t_gv::TotalEden |
grain charging contribution to eden from all grain species, a positive number means that the grains contribute to the free electron pool, in cm^-3
Definition at line 446 of file grainvar.h.
Referenced by ConvBase(), ConvEdenIoniz(), ConvIoniz(), GrainChargeTemp(), GrainDrive(), GrainZero(), and lines_grains().
enth_type t_gv::which_enth[MAT_TOP] |
they are initialized in GrainZero defines expression for the enthalpy function
Definition at line 426 of file grainvar.h.
Referenced by GrainZero(), and uderiv().
H2_type t_gv::which_H2distr[MAT_TOP] |
defines expression for H2 ro-vib distribution at formation
Definition at line 432 of file grainvar.h.
Referenced by GrainZero().
ial_type t_gv::which_ial[MAT_TOP] |
defines expression for the inverse attenuation length
Definition at line 429 of file grainvar.h.
Referenced by GrainZero().
pe_type t_gv::which_pe[MAT_TOP] |
defines expression for the photo-electric effect
Definition at line 430 of file grainvar.h.
Referenced by GrainZero(), y0b01(), and Yfunc().
pot_type t_gv::which_pot[MAT_TOP] |
defines expression for the ionization potential
Definition at line 428 of file grainvar.h.
Referenced by GetPotValues(), and GrainZero().
strg_type t_gv::which_strg[MAT_TOP] |
defines where the emitted spectrum is stored
Definition at line 431 of file grainvar.h.
Referenced by GrainMakeDiffuse(), and GrainZero().
zmin_type t_gv::which_zmin[MAT_TOP] |