GrainVar Class Reference

#include <grainvar.h>

Collaboration diagram for GrainVar:
[legend]

Public Member Functions

 GrainVar ()
 ~GrainVar ()
void clear ()
bool lgDustOn () const

Data Fields

bool lgWD01
bool lgReevaluate
bool lgGrainPhysicsOn
bool lgAnyDustVary
bool lgAnyNegCharge
bool lgBakesPAH_heat
bool lgNegGrnDrg
bool lgDHetOn
bool lgQHeatOn
bool lgDColOn
bool lgGrainElectrons
vector< string > ReadRecord
string chPAH_abundance
realnum GrainMetal
realnum elmSumAbund [LIMELM]
enth_type which_enth [MAT_TOP]
zmin_type which_zmin [MAT_TOP]
pot_type which_pot [MAT_TOP]
ial_type which_ial [MAT_TOP]
pe_type which_pe [MAT_TOP]
strg_type which_strg [MAT_TOP]
H2_type which_H2distr [MAT_TOP]
vector< realnumanumin
vector< realnumanumax
long nfill
long nzone
vector< double > dstab
vector< double > dstsc
double TotalEden
realnum GrnElecDonateMax
realnum GrnElecHoldMax
double GrnRecomTe
long HighestIon
long nChrgRequested
AEInfoAugerData [LIMELM]
realnum GrainChTrRate [LIMELM][LIMELM+1][LIMELM+1]
double GasCoolColl
double GasHeatPhotoEl
double GasHeatTherm
double GasHeatNet
double GrainHeatSum
double GrainHeatLya
double GrainHeatDif
double GrainHeatInc
double GrainHeatCollSum
double GrainHeatChem
double dHeatdT
realnum GrainHeatScaleFactor
realnum TotalDustHeat
realnum dphmax
realnum dclmax
double dsttmp [NDEMS]
realnum dstAbundThresholdNear
realnum dstAbundThresholdFar
bool lgQHeatAll
bool lgQHPunLast
FILE * QHSaveFile
double rate_h2_form_grains_used_total
vector< realnumGrainEmission
vector< realnumGraphiteEmission
vector< realnumSilicateEmission
vector< GrainBin * > bin

Private Member Functions

void p_clear0 ()
void p_clear1 ()

Detailed Description

NB NB NB NB NB NB

this is the master data structure for grain physics, it is statically allocated

all entries that depend on grain type should go in the GrainBin structure above

NB NB NB NB NB NB

Definition at line 447 of file grainvar.h.


Constructor & Destructor Documentation

GrainVar::GrainVar (  )  [inline]

Definition at line 453 of file grainvar.h.

References p_clear1().

Here is the call graph for this function:

GrainVar::~GrainVar (  )  [inline]

Definition at line 457 of file grainvar.h.

References p_clear0().

Here is the call graph for this function:


Member Function Documentation

void GrainVar::clear (  )  [inline]

Definition at line 461 of file grainvar.h.

References p_clear0(), and p_clear1().

Referenced by GrainZero(), grid_do(), and ParseAbundances().

Here is the call graph for this function:

bool GrainVar::lgDustOn (  )  const [inline]
void GrainVar::p_clear0 (  )  [private]

Definition at line 369 of file grains.cpp.

References anumax, anumin, AugerData, bin, dstab, dstsc, GrainEmission, GraphiteEmission, LIMELM, ReadRecord, and SilicateEmission.

Referenced by clear(), and ~GrainVar().

void GrainVar::p_clear1 (  )  [private]

Field Documentation

anumax[i] = sqrt(anu[i]*anu[i+1])

Definition at line 518 of file grainvar.h.

Referenced by GrainsInit(), p_clear0(), and qheat_init().

anumin[i] = sqrt(anu[i-1]*anu[i])

Definition at line 517 of file grainvar.h.

Referenced by GrainsInit(), p_clear0(), and qheat_init().

store data about energy spectrum of Auger electrons

Definition at line 535 of file grainvar.h.

Referenced by GrainsInit(), InitBinAugerData(), p_clear0(), p_clear1(), and ReadAugerData().

which functions describes the PAH abundances, changed with SET PAH

Definition at line 496 of file grainvar.h.

Referenced by GrnStdDpth(), p_clear1(), and ParseSet().

largest local cooling of gas by collisions with grains

Definition at line 558 of file grainvar.h.

Referenced by GrainDrive(), GrainStartIter(), lines_grains(), and PrtComment().

gas heating derivative for all grains, in erg/cm^3/s/K

Definition at line 554 of file grainvar.h.

Referenced by GrainChargeTemp(), and p_clear1().

largest fraction of local heating due to grain PE heating

Definition at line 558 of file grainvar.h.

Referenced by GrainDrive(), GrainStartIter(), lines_grains(), and PrtComment().

vector<double> GrainVar::dstab

total absorption cross section, current depl is factored in

Definition at line 523 of file grainvar.h.

Referenced by ContRate(), GrainsInit(), GrainUpdateRadius2(), OpacityAddTotal(), p_clear0(), and SaveDo().

min grain abundance for enabling quantum heating in molecular regions

Definition at line 567 of file grainvar.h.

Referenced by GrainMakeDiffuse(), and p_clear1().

quantum heating physics min grain abundance for enabling quantum heating near I-front

Definition at line 566 of file grainvar.h.

Referenced by GrainMakeDiffuse(), and p_clear1().

vector<double> GrainVar::dstsc

total scattering cross section, current depl and asymmetry factored in

Definition at line 524 of file grainvar.h.

Referenced by GrainsInit(), GrainUpdateRadius2(), OpacityAddTotal(), p_clear0(), and SaveDo().

equilibrium temperature grain temperature grid for dstems (in GrainBin)

Definition at line 563 of file grainvar.h.

Referenced by GetProbDistr_HighLimit(), GetProbDistr_LowLimit(), GrainChargeTemp(), GrainTemperature(), InitEmissivities(), InitEnthalpy(), inv_ufunct(), qheat(), RebinQHeatResults(), TryDoubleStep(), and ufunct().

number density of elements summed over all grain bins, at actual depl

Definition at line 504 of file grainvar.h.

Referenced by AbundancesPrt(), GrainsInit(), GrainUpdateRadius1(), and IonIron().

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 543 of file grainvar.h.

Referenced by CoolEvaluate(), GrainChargeTemp(), GrainDrive(), GrainMakeDiffuse(), GrainsInit(), lines_grains(), and SaveDo().

net heating of the gas: PhotoEl + Therm - CoolColl

Definition at line 543 of file grainvar.h.

Referenced by GrainChargeTemp().

heating of the gas by photoelectric effect of all grains

Definition at line 543 of file grainvar.h.

Referenced by CoolEvaluate(), GrainChargeTemp(), and GrainDrive().

heating of the gas by thermionic emissions of all grains

Definition at line 543 of file grainvar.h.

Referenced by CoolEvaluate(), and GrainChargeTemp().

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 540 of file grainvar.h.

Referenced by ele_ion_ladder(), fill_array(), GrainChargeTemp(), GrainChrgTransferRates(), GrainDrive(), ion_recomb(), iso_level(), p_clear1(), and PrintRates().

grain emission total emission from this zone, per unit vol, for add outward in metfic

Definition at line 577 of file grainvar.h.

Referenced by ContRate(), GrainMakeDiffuse(), GrainsInit(), p_clear0(), RT_diffuse(), and SaveDo().

net amount of energy donated by recombining ions to all grains

Definition at line 543 of file grainvar.h.

Referenced by GrainChargeTemp(), GrainDrive(), and GrainMakeDiffuse().

collisional heating of all grains, added in GraC 0

Definition at line 543 of file grainvar.h.

Referenced by GrainChargeTemp(), GrainDrive(), GrainsInit(), and lines_grains().

heating of all grains by all diffuse fields (incl Lya), added in GraD 0

Definition at line 543 of file grainvar.h.

Referenced by GrainChargeTemp(), GrainDrive(), GrainsInit(), and lines_grains().

heating of all grains by incident continuum, added in GraI 0

Definition at line 543 of file grainvar.h.

Referenced by GrainChargeTemp(), GrainDrive(), GrainsInit(), and lines_grains().

heating of all grains by Lya, added in GraL 1216

Definition at line 543 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 556 of file grainvar.h.

Referenced by GrainDrive(), GrainMakeDiffuse(), GrainTemperature(), p_clear1(), and ParseSet().

total heating of all grain types, added in GraT 0

Definition at line 543 of file grainvar.h.

Referenced by GrainChargeTemp(), GrainDrive(), GrainMakeDiffuse(), GrainsInit(), and lines_grains().

grain depletion 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 504 of file grainvar.h.

Referenced by GrainsInit(), GrainUpdateRadius1(), p_clear1(), and ParseMetal().

graphite emission from this zone only

Definition at line 578 of file grainvar.h.

Referenced by GrainMakeDiffuse(), GrainsInit(), p_clear0(), and SaveDo().

largest local fraction of electrons donated by grains

Definition at line 529 of file grainvar.h.

Referenced by GrainDrive(), GrainStartIter(), lines_grains(), and PrtComment().

largest local fraction of electrons contained by grains

Definition at line 529 of file grainvar.h.

Referenced by GrainDrive(), GrainStartIter(), lines_grains(), and PrtComment().

the electron temperature that was used to calculate the recom rates

Definition at line 531 of file grainvar.h.

Referenced by GrainChargeTemp(), GrainsInit(), and NewChargeData().

highest ionization stage with non-zero abundance present in the gas

Definition at line 532 of file grainvar.h.

Referenced by GrainChargeTemp(), and UpdateRecomZ0().

do any of the grain abundances vary with depth

Definition at line 472 of file grainvar.h.

Referenced by GrainDrive(), GrainsInit(), GrainUpdateRadius2(), and p_clear1().

are any of the grain charges negative ?

Definition at line 472 of file grainvar.h.

Referenced by GrainDrive(), GrainsInit(), and GrainUpdateRadius2().

turn on simple formula for PAH heating of gas

Definition at line 472 of file grainvar.h.

Referenced by CoolEvaluate(), GrainDrive(), GrainMakeDiffuse(), GrainTemperature(), p_clear1(), and ParseSet().

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 488 of file grainvar.h.

Referenced by GrainCollHeating(), GrainMakeDiffuse(), p_clear1(), ParseCommands(), ParseDont(), and ParseGrain().

test logic default true, turned off with GRAIN NO HEATING

Definition at line 483 of file grainvar.h.

Referenced by CoolEvaluate(), GrainMakeDiffuse(), GrainTemperature(), p_clear1(), and ParseGrain().

should electrons from/to grains be included in the total electron sum? del true, set false with no grain electrons command

Definition at line 492 of file grainvar.h.

Referenced by ConvBase(), eden_sum(), p_clear1(), 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 472 of file grainvar.h.

Referenced by ContRate(), ConvPresTempEdenIoniz(), CoolEvaluate(), fill_array(), GrainDrive(), GrainRestartIter(), GrainStartIter(), hmole_step(), lines_grains(), p_clear1(), ParseDont(), PrtFinal(), PrtZone(), and RT_diffuse().

flag set if negative grin drag force encountered

Definition at line 480 of file grainvar.h.

Referenced by GrainDrift(), GrainStartIter(), p_clear1(), and PrtComment().

use quantum heating for all grains, WILL BECOME DEFAULT

Definition at line 568 of file grainvar.h.

Referenced by GrainsInit(), and p_clear1().

default true, turned off with GRAIN NO QHEAT

Definition at line 483 of file grainvar.h.

Referenced by GrainsInit(), p_clear1(), and ParseDont().

only save quantum heating information on last iteration

Definition at line 568 of file grainvar.h.

Referenced by ParseSave(), and qheat().

reevaluate keyword on grains cmd => always reevalutae grain conditions during calculation

Definition at line 472 of file grainvar.h.

Referenced by GrainDrive(), p_clear1(), and ParseGrain().

use physics as described in Weingartner & Draine (2001)

Definition at line 472 of file grainvar.h.

Referenced by GrainsInit(), InitBinAugerData(), IonIron(), p_clear1(), ParseDont(), qheat_init(), y0b(), and y2s().

number of charge states requested by user, default value is 2

Definition at line 532 of file grainvar.h.

Referenced by p_clear1(), GrainBin::p_clear1(), and SetNChrgStates().

grain opacities remember how far dstab and dstsc were filled in

Definition at line 521 of file grainvar.h.

Referenced by GrainsInit(), and GrainUpdateRadius2().

remember in what zone dstab and dstsc where calculated

Definition at line 521 of file grainvar.h.

Referenced by GrainChargeTemp(), GrainsInit(), and NewChargeData().

file pointer for PUNCH QHEAT command

Definition at line 570 of file grainvar.h.

Referenced by CloseSaveFiles(), ParseSave(), qheat(), and SaveFilesInit().

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 573 of file grainvar.h.

Referenced by H2_PunchDo(), hmole_step(), lgCheckMonitors(), and SaveDo().

vector<string> GrainVar::ReadRecord

record of all the files read by mie_read_opc

Definition at line 494 of file grainvar.h.

Referenced by mie_read_opc(), and p_clear0().

silicate emission from this zone only

Definition at line 579 of file grainvar.h.

Referenced by GrainMakeDiffuse(), GrainsInit(), p_clear0(), and SaveDo().

total PE heating integrated over model, erg/s or erg/cm^2/s, actual depl

Definition at line 558 of file grainvar.h.

Referenced by GrainDrive(), GrainStartIter(), lines_grains(), and PrtComment().

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 527 of file grainvar.h.

Referenced by ConvBase(), eden_sum(), GrainChargeTemp(), GrainDrive(), lines_grains(), p_clear1(), and SaveDo().

these arrays define the physical properties of material MAT_PAH, MAT_CAR, MAT_SIL, etc... they are initialized in the constructor defines expression for the enthalpy function

Definition at line 509 of file grainvar.h.

Referenced by p_clear1(), and uderiv().

defines expression for H2 ro-vib distribution at formation

Definition at line 515 of file grainvar.h.

Referenced by GrainCollHeating(), mole_H2_form(), and p_clear1().

defines expression for the inverse attenuation length

Definition at line 512 of file grainvar.h.

Referenced by mie_write_opc(), and p_clear1().

defines expression for the photo-electric effect

Definition at line 513 of file grainvar.h.

Referenced by p_clear1(), y0b01(), and Yfunc().

defines expression for the ionization potential

Definition at line 511 of file grainvar.h.

Referenced by GetPotValues(), and p_clear1().

defines where the emitted spectrum is stored

Definition at line 514 of file grainvar.h.

Referenced by GrainMakeDiffuse(), and p_clear1().

defines expression for Z_min

Definition at line 510 of file grainvar.h.

Referenced by GrainsInit(), and p_clear1().


The documentation for this class was generated from the following files:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 15 Nov 2012 for cloudy by  doxygen 1.6.1