#include <grainvar.h>
NB NB NB NB NB NB
this is the data structure for all grain data that depends on grain type (i.e. all data that can differ from one grain bin to the next),
each data item will be referenced as: gv.bin[nd]->data_item
this structure is allocated for each grain bin at run time.
Data items that are generic for all grain types, or are summed over all grain types, should go in gv below !!
NB NB NB NB NB NB
Definition at line 289 of file grainvar.h.
GrainBin::GrainBin | ( | ) | [inline] |
Definition at line 295 of file grainvar.h.
References p_clear1().
GrainBin::~GrainBin | ( | ) | [inline] |
Definition at line 299 of file grainvar.h.
References p_clear0().
void GrainBin::clear | ( | ) | [inline] |
Definition at line 303 of file grainvar.h.
References p_clear0(), and p_clear1().
void GrainBin::p_clear0 | ( | ) | [private] |
Definition at line 276 of file grains.cpp.
References asym, chrg, dstab1, inv_att_len, NCHS, pure_sc1, sd, and y0b06.
Referenced by clear(), and ~GrainBin().
void GrainBin::p_clear1 | ( | ) | [private] |
Definition at line 295 of file grains.cpp.
References avdft, avDGRatio, avdpot, avdust, AveDustZ, BolFlux, ChemEn, ChemEnH2, chrg, cnv_CM3_pGR, cnv_CM3_pH, cnv_GR_pCM3, cnv_GR_pH, cnv_H_pCM3, cnv_H_pGR, DF_STANDARD, dstAbund, dstems, dstfactor, dstpot, dstpotsav, dstslp, dstslp2, DustDftVel, DustEnth, EnthSlp, EnthSlp2, GasHeatPhotoEl, GrainCoolTherm, GrainGasCool, GrainHeat, GrainHeatColl, GrnDpth, gv, HeatingRate1, le_thres, lgChrgConverged, lgEverQHeat, lgPAHsInIonizedRegion, lgQHeat, lgQHTooWide, lgTdustConverged, lgUseQHeat, LowestPot, LowestZg, nChrg, nChrgOrg, GrainVar::nChrgRequested, NCHS, NDEMS, nDustFunc, nfill, QHeatFailures, qnflux, qnflux2, qtmin, qtmin_zone1, rate_h2_form_grains_CT02, rate_h2_form_grains_HM79, rate_h2_form_grains_used, RateDn, RateUp, RSFCheck, sd, StickElecNeg, StickElecPos, tedust, TeGrainMax, and thermionic.
Referenced by clear(), and GrainBin().
double GrainBin::AccomCoef[LIMELM] |
accommodation coefficient, needed for collisional heating of grain
Definition at line 395 of file grainvar.h.
vector<double> GrainBin::asym |
molecular weight per atom, in amu
Definition at line 318 of file grainvar.h.
average grain surface area, <4pi*a^2>, in cm^2, CURRENTLY NOT USED
Definition at line 318 of file grainvar.h.
Integral(vdrift*dReff) for average drift velocity, OUTPUT ONLY
Definition at line 431 of file grainvar.h.
Referenced by p_clear1().
Integral(D/G*dReff) for average dust to gas ratio, OUTPUT ONLY
Definition at line 318 of file grainvar.h.
Referenced by p_clear1().
Integral(Vg*dReff) for average grain potential, OUTPUT ONLY
Definition at line 392 of file grainvar.h.
Referenced by p_clear1().
Integral(Tdust*dReff) for average equilibrium temperature, OUTPUT ONLY
Definition at line 368 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::AveDustZ |
average charge per grain, in electrons
Definition at line 383 of file grainvar.h.
Referenced by p_clear1().
average grain radius, <a^3>/<a^2>, in cm
Definition at line 318 of file grainvar.h.
average grain volume, <4/3pi*a^3>, in cm^3
Definition at line 318 of file grainvar.h.
gap between valence and conduction band, in Ryd
Definition at line 318 of file grainvar.h.
double GrainBin::BolFlux |
heating/cooling balance, all entries are valid for current zone, actual depl, and are in erg/cm^3/s total photon flux absorbed, used for energy conservation test
Definition at line 398 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::Capacity |
grain capacity, in Farad/grain
Definition at line 383 of file grainvar.h.
char GrainBin::chDstLab[13] |
general information on the grains label for the species
Definition at line 314 of file grainvar.h.
double GrainBin::ChemEn |
net amount of energy donated by recombining ions
Definition at line 398 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::ChemEnH2 |
net amount of energy donated by H2 formation on grain surface
Definition at line 398 of file grainvar.h.
Referenced by p_clear1().
this holds the charge dependent data
Definition at line 436 of file grainvar.h.
Referenced by p_clear0(), and p_clear1().
double GrainBin::cnv_CM3_pGR |
grain unit conversion, <unit>/cm^3 (actual depl) -> <unit>/grain
Definition at line 346 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::cnv_CM3_pH |
grain unit conversion, <unit>/cm^3 (actual depl) -> <unit>/H (default depl)
Definition at line 346 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::cnv_GR_pCM3 |
grain unit conversion, <unit>/grain -> <unit>/cm^3 (actual depl)
Definition at line 346 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::cnv_GR_pH |
grain unit conversion, <unit>/grain -> <unit>/H (default depl)
Definition at line 346 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::cnv_H_pCM3 |
grain unit conversion, <unit>/H (default depl) -> <unit>/cm^3 (actual depl)
Definition at line 346 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::cnv_H_pGR |
grain unit conversion, <unit>/H (default depl) -> <unit>/grain
Definition at line 346 of file grainvar.h.
Referenced by p_clear1().
vector<double> GrainBin::dstab1 |
>>chng 02 dec 30, separated scattering cross section and asymmetry factor (1-g), NB NB NB -- note that pure_sc1 DOES NOT contain the asymmetry factor, while gv.dstsc DOES !!! absorption cross section per grain species, for default depl
Definition at line 358 of file grainvar.h.
Referenced by p_clear0().
grain abundance in zone, dstfactor*GrainMetal*GrnVryDpth(radius)
Definition at line 342 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::dstems[NDEMS] |
equilibrium temperature grain emissivity at dsttmp[], default depl, normalized per H
Definition at line 363 of file grainvar.h.
Referenced by p_clear1().
chemical abundances of grains in elmAbund are defined as follows: e.g. for MgSiFeO4 the oxygen abundance would be given by elmAbund[nd][7] = 4.*dustp[nd][2]*dustp[nd][3]*dustp[nd][4] chemical abundances of grains are normalized such that in any given zone the total fractional abundance of an element Z locked up in grains is given by SumFracAbund(nelem) = Sum_over_nd ( gv.bin[nd]->elmAbund[nelem]*gv.dstAbund[nd] ) grain depletion, normalization conversion factors grain depletion factor, dep from GRAINS command
Definition at line 342 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::dstpot |
double GrainBin::dstpotsav |
grain potential at start of iteration
Definition at line 383 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::dstslp[NDEMS] |
auxiliary array for spline interpolation
Definition at line 363 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::dstslp2[NDEMS] |
auxiliary array for inverse spline interpolation
Definition at line 363 of file grainvar.h.
Referenced by p_clear1().
grain drift grain drift velocity for this zone
Definition at line 431 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::DustEnth[NDEMS] |
grain enthalpy at dsttmp[], in Ryd/grain
Definition at line 420 of file grainvar.h.
Referenced by p_clear1().
0 = specific weight (g/cm^3), 1 = mol. weight (amu), 2 = default abundance, 3 = default depletion, 4 = fraction of the mass in this grain bin
Definition at line 318 of file grainvar.h.
work function, in Ryd
Definition at line 318 of file grainvar.h.
double GrainBin::eec |
pow(dustp[0],-0.85), needed for electron esacpe length
Definition at line 315 of file grainvar.h.
chemical composition, abundance at default depl, see comment below
Definition at line 318 of file grainvar.h.
double GrainBin::EnthSlp[NDEMS] |
auxiliary array for spline interpolation
Definition at line 420 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::EnthSlp2[NDEMS] |
auxiliary array for inverse spline interpolation
Definition at line 420 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::eyc |
1./AvRadius + 1.e7, needed for electron yield
Definition at line 316 of file grainvar.h.
double GrainBin::GasHeatPhotoEl |
photoelectric heating of the gas, added in GrGH 0
Definition at line 398 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::GrainCoolTherm |
grain cooling due to thermionic emissions, summed over charge states
Definition at line 398 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::GrainGasCool |
gas cooling due to collisions with grains
Definition at line 398 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::GrainHeat |
total heating of current grain type
Definition at line 398 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::GrainHeatColl |
collisional heating of current grain type
Definition at line 398 of file grainvar.h.
Referenced by p_clear1().
grain abundance scale factor in zone, GrnStdDpth(radius), used by set PAH constant / H0 commands
Definition at line 342 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::HeatingRate1 |
quantum heating due to molecule/ion collisions, erg/H/s, default depl
Definition at line 417 of file grainvar.h.
Referenced by p_clear1().
integrated grain surface area Int(4pi*a^2), normalized per H, in cm^2/H
Definition at line 318 of file grainvar.h.
integrated grain radius Int(a), normalized per H, in cm/H
Definition at line 318 of file grainvar.h.
integrated grain volume Int(4/3pi*a^3), normalized per H, in cm^3/H
Definition at line 318 of file grainvar.h.
vector<realnum> GrainBin::inv_att_len |
inverse attenuation length (in cm)
Definition at line 394 of file grainvar.h.
Referenced by p_clear0().
threshold for using X-ray prescription for l_e, in Ryd
Definition at line 392 of file grainvar.h.
Referenced by p_clear1().
grain charging, photoelectric effect, thermionic emissions
all charge and energy rates will be calculated by resolving the charge distribution into nChrg integral charge states. To implement this, certain parameters have been moved into the ChargeBin structure, currently limiting the maximum number of charge states the code can handle. For details see: >>refer grain physics van Hoof et al., 2001, ASP Conf. Series 247, p. 353 (astroph/0107183) did grain charge algorithm converge ?
Definition at line 378 of file grainvar.h.
Referenced by p_clear1().
was quantum heating used in any zone ?
Definition at line 409 of file grainvar.h.
Referenced by p_clear1().
were PAHs present in the ionized region ?
Definition at line 311 of file grainvar.h.
Referenced by p_clear1().
bool GrainBin::lgQHeat |
quantum heating physics is quantum heating turned on ?
Definition at line 409 of file grainvar.h.
Referenced by p_clear1().
is probability distribution too wide to fit in NQGRID array elements ?
Definition at line 409 of file grainvar.h.
Referenced by p_clear1().
is dust temperature converged ?
Definition at line 367 of file grainvar.h.
Referenced by p_clear1().
bool GrainBin::lgUseQHeat |
should quantum heating be used for this zone ?
Definition at line 409 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::LowestPot |
lowest potential a grain can ever have, in Ryd
Definition at line 383 of file grainvar.h.
Referenced by p_clear1().
long GrainBin::LowestZg |
lowest charge a grain can ever have, in e
Definition at line 379 of file grainvar.h.
Referenced by p_clear1().
material type, 1 = carbonaceous, 2 = silicate, 3 = PAH, etc...
Definition at line 332 of file grainvar.h.
long GrainBin::nChrg |
number of charge states used for the current zone
Definition at line 435 of file grainvar.h.
Referenced by p_clear1().
long GrainBin::nChrgOrg |
number of charge states at the start of the iteration
Definition at line 434 of file grainvar.h.
Referenced by p_clear1().
grain logic has user requested custom grain abundance function ?
Definition at line 310 of file grainvar.h.
Referenced by p_clear1().
long GrainBin::nfill |
remember how far the flex_arr's in the ShellData were filled in
Definition at line 380 of file grainvar.h.
Referenced by p_clear1().
vector<double> GrainBin::pure_sc1 |
scattering cross section per grain species, for default depl
Definition at line 359 of file grainvar.h.
Referenced by p_clear0().
counter for number of times qheat algorithm failed
Definition at line 413 of file grainvar.h.
Referenced by p_clear1().
long GrainBin::qnflux |
like rfield.nflux, but may point to higher energy, for phiTilde and Phi
Definition at line 413 of file grainvar.h.
Referenced by p_clear1().
long GrainBin::qnflux2 |
like rfield.nflux, only for max electron energy, for phiTilde and Phi
Definition at line 413 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::qtmin |
lowest grain temperature used in calculations, set per zone
Definition at line 417 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::qtmin_zone1 |
lowest grain temperature used in calculations, initial zone
Definition at line 417 of file grainvar.h.
Referenced by p_clear1().
H2 formation rate, Cazaux & Tielens 02, units S^-1, actual depl
Definition at line 426 of file grainvar.h.
Referenced by p_clear1().
H2 physics - each has units s-1 H2 formation rate, Hollenbach & McKee 79, units S^-1, actual depl
Definition at line 425 of file grainvar.h.
Referenced by p_clear1().
H2 rate actually used, evaluated in hmole.c, units s^-1, actual depl when multiplied with hden, this is formation rate in H2-molecules/cm^3/s
Definition at line 427 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::RateDn |
total charging rate down, used for balance check, in e/cm^2/s
Definition at line 383 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::RateUp |
total charging rate up, used for balance check, in e/cm^2/s
Definition at line 383 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::RSFCheck |
grain opacities save resolution scale factor for later check
Definition at line 354 of file grainvar.h.
Referenced by p_clear1().
vector<ShellData*> GrainBin::sd |
specific data for each atomic shell in this grain material
Definition at line 381 of file grainvar.h.
Referenced by p_clear0(), and p_clear1().
double GrainBin::StickElecNeg |
sticking efficiency for electrons on negative or neutral grains
Definition at line 383 of file grainvar.h.
Referenced by p_clear1().
double GrainBin::StickElecPos |
sticking efficiency for electrons on positive grains
Definition at line 383 of file grainvar.h.
Referenced by p_clear1().
equilibrium temperature for this zone
Definition at line 368 of file grainvar.h.
Referenced by p_clear1().
highest equilibrium temperature as a function of radius
Definition at line 368 of file grainvar.h.
Referenced by p_clear1().
efficiency of thermionic emission, between 0 and 1
Definition at line 318 of file grainvar.h.
double GrainBin::thermionic |
heating due to thermionic emission
Definition at line 398 of file grainvar.h.
Referenced by p_clear1().
sublimation temperature
Definition at line 318 of file grainvar.h.
vector<realnum> GrainBin::y0b06 |
bulk yield for band according to Eq. 9 of WDB06
Definition at line 382 of file grainvar.h.
Referenced by p_clear0().