cloudy  trunk
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Data Fields | Private Member Functions
ChargeBin Class Reference

#include <grainvar.h>

Collaboration diagram for ChargeBin:
Collaboration graph
[legend]

Public Member Functions

 ChargeBin ()
 
 ~ChargeBin ()
 
void clear ()
 

Data Fields

long DustZ
 
long ipThresInf
 
long ipThresInfVal
 
long nfill
 
double FracPop
 
double Emin
 
double EminInc
 
double PotSurf
 
double PotSurfInc
 
double ThresInf
 
double ThresInfInc
 
double ThresInfVal
 
double ThresSurf
 
double ThresSurfInc
 
double ThresSurfVal
 
double ThermRate
 
flex_arr< realnumyhat
 
flex_arr< realnumyhat_primary
 
flex_arr< realnumehat
 
flex_arr< double > cs_pdt
 
long RecomZ0 [LIMELM][LIMELM+1]
 
double eta [LIMELM+2]
 
double xi [LIMELM+2]
 
double RSum1
 
double RSum2
 
double ESum1a
 
double ESum1b
 
double ESum2
 
realnum tedust
 
double hcon1
 
double hots1
 
double bolflux1
 
double pe1
 
flex_arr< double > fac1
 
flex_arr< double > fac2
 
realnum RecomEn [LIMELM][LIMELM+1]
 
realnum ChemEn [LIMELM][LIMELM+1]
 
double BolFlux
 
double GrainHeat
 
double GrainHeatColl
 
double GasHeatPhotoEl
 
double GasHeatTherm
 
double GrainCoolTherm
 
double ChemEnIon
 
double ChemEnH2
 
double HeatingRate2
 

Private Member Functions

void p_clear0 ()
 
void p_clear1 ()
 

Detailed Description

NB NB NB NB NB NB

this is the data structure for all grain data that depends on the charge state (i.e. all data that used to have an [NCHS] dependance in days of old),

each data item will be referenced as: gv.bin[nd]->chrg[nz]->data_item

this structure is allocated for each charge state at run time.

Data items that do not depend on charge state, or are summed over all charge states, should go in gv or gv.bin[nd] below !!

NB NB !! every field that is in ChargeBin should be initialized or invalidated in UpdatePot1/2 !! NB NB

Definition at line 203 of file grainvar.h.

Constructor & Destructor Documentation

ChargeBin::ChargeBin ( )
inline

Definition at line 209 of file grainvar.h.

References p_clear1().

Here is the call graph for this function:

ChargeBin::~ChargeBin ( )
inline

Definition at line 213 of file grainvar.h.

References p_clear0().

Here is the call graph for this function:

Member Function Documentation

void ChargeBin::clear ( )
inline

Definition at line 217 of file grainvar.h.

References p_clear0(), and p_clear1().

Here is the call graph for this function:

void ChargeBin::p_clear0 ( )
private

Definition at line 228 of file grains.cpp.

References flex_arr< T, lgBC >::clear(), cs_pdt, ehat, fac1, fac2, yhat, and yhat_primary.

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

Here is the call graph for this function:

void ChargeBin::p_clear1 ( )
private

Definition at line 238 of file grains.cpp.

References DustZ, FracPop, nfill, and tedust.

Referenced by ChargeBin(), and clear().

Field Documentation

double ChargeBin::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 269 of file grainvar.h.

double ChargeBin::bolflux1

reminder of heating integral over all fields, Ryd/H/s at default depl

Definition at line 260 of file grainvar.h.

Referenced by GrainTemperature().

realnum ChargeBin::ChemEn[LIMELM][LIMELM+1]

net contribution of ion recomb to grain heating, in Ryd

Definition at line 266 of file grainvar.h.

Referenced by GrainCollHeating().

double ChargeBin::ChemEnH2

net amount of energy donated by H2 formation on grain surface

Definition at line 269 of file grainvar.h.

double ChargeBin::ChemEnIon

net amount of energy donated by recombining ions

Definition at line 269 of file grainvar.h.

flex_arr<double> ChargeBin::cs_pdt

photo-detachment cross section, for default depl

Definition at line 243 of file grainvar.h.

Referenced by GrainElecEmis1(), GrainTemperature(), GrainUpdateRadius2(), p_clear0(), and PE_init().

long ChargeBin::DustZ

grain charging grain charge, in e

Definition at line 224 of file grainvar.h.

Referenced by GrainCollHeating(), GrainElecEmis1(), GrainTemperature(), GrainUpdateRadius2(), p_clear1(), PE_init(), and qheat_init().

flex_arr<realnum> ChargeBin::ehat

average energy per photo-electron (incl. Auger and secondary electrons), Ryd

Definition at line 242 of file grainvar.h.

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

double ChargeBin::Emin

negative threshold to be overcome by outgoing electron, in Ryd

Definition at line 228 of file grainvar.h.

double ChargeBin::EminInc

same as Emin, but for incoming electrons (using Zg instead of Zg+1), in Ryd

Definition at line 228 of file grainvar.h.

double ChargeBin::ESum1a

cache for PE rate from band and inner shells (incl. Auger elec. & secondaries)

Definition at line 252 of file grainvar.h.

Referenced by GrainElecEmis1().

double ChargeBin::ESum1b

cache for PE rate from conduction band

Definition at line 253 of file grainvar.h.

Referenced by GrainElecEmis1().

double ChargeBin::ESum2

cache for electron loss due to recombination with colliding ions

Definition at line 254 of file grainvar.h.

Referenced by GrainElecEmis1().

double ChargeBin::eta[LIMELM+2]

cache for GrainScreen results

Definition at line 247 of file grainvar.h.

flex_arr<double> ChargeBin::fac1

auxiliary data for GrainTemperature

Definition at line 262 of file grainvar.h.

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

flex_arr<double> ChargeBin::fac2

auxiliary data for GrainTemperature

Definition at line 263 of file grainvar.h.

Referenced by GrainTemperature(), and p_clear0().

double ChargeBin::FracPop

fractional population for lower and upper charge state

Definition at line 228 of file grainvar.h.

Referenced by GrainChrgTransferRates(), GrainCollHeating(), GrainTemperature(), GrainUpdateRadius2(), p_clear1(), and qheat_init().

double ChargeBin::GasHeatPhotoEl

photoelectric heating of the gas, added in GrGH 0

Definition at line 269 of file grainvar.h.

double ChargeBin::GasHeatTherm

heating due to thermionic emission

Definition at line 269 of file grainvar.h.

double ChargeBin::GrainCoolTherm

grain cooling due to thermionic emissions, summed over charge states

Definition at line 269 of file grainvar.h.

double ChargeBin::GrainHeat

total heating of current grain type

Definition at line 269 of file grainvar.h.

double ChargeBin::GrainHeatColl

collisional heating of current grain type

Definition at line 269 of file grainvar.h.

double ChargeBin::hcon1

reminder of heating integral over incident flux, Ryd/H/s at default depl

Definition at line 258 of file grainvar.h.

Referenced by GrainTemperature().

double ChargeBin::HeatingRate2

quantum heating quantum heating by electron recomb - thermionic cooling, erg/H/s, default depl

Definition at line 279 of file grainvar.h.

Referenced by GrainCollHeating(), and qheat_init().

double ChargeBin::hots1

reminder of heating integral over diffuse fields, Ryd/H/s at default depl

Definition at line 259 of file grainvar.h.

Referenced by GrainTemperature().

long ChargeBin::ipThresInf

pointer to ThresInf in anu array

Definition at line 224 of file grainvar.h.

Referenced by GrainElecEmis1(), GrainTemperature(), GrainUpdateRadius2(), PE_init(), and qheat_init().

long ChargeBin::ipThresInfVal

pointer to ThresInfVal in anu array

Definition at line 224 of file grainvar.h.

Referenced by GrainElecEmis1(), PE_init(), and qheat_init().

long ChargeBin::nfill

remember how far the flex_arr's were filled in

Definition at line 224 of file grainvar.h.

Referenced by p_clear1(), and qheat_init().

double ChargeBin::pe1

reminder of photoelectric heating integral, Ryd/H/s at default depl

Definition at line 261 of file grainvar.h.

Referenced by GrainTemperature().

double ChargeBin::PotSurf

potential difference between grain surface and infinity (phi_g), in Ryd

Definition at line 228 of file grainvar.h.

Referenced by GrainCollHeating(), GrainTemperature(), PE_init(), and qheat_init().

double ChargeBin::PotSurfInc

same as PotSurf, but for incoming electrons (using Zg instead of Zg+1), in Ryd

Definition at line 228 of file grainvar.h.

Referenced by GrainCollHeating(), and qheat_init().

realnum ChargeBin::RecomEn[LIMELM][LIMELM+1]

chemical energy released into grain upon impact, in Ryd

Definition at line 265 of file grainvar.h.

Referenced by GrainCollHeating().

long ChargeBin::RecomZ0[LIMELM][LIMELM+1]

ionization stage the atom/ion recombines to upon impact

Definition at line 245 of file grainvar.h.

Referenced by GrainChrgTransferRates(), GrainCollHeating(), and GrainElecEmis1().

double ChargeBin::RSum1

cache for electron gain from colliding electrons

Definition at line 250 of file grainvar.h.

double ChargeBin::RSum2

cache for electron gain from colliding ions

Definition at line 251 of file grainvar.h.

realnum ChargeBin::tedust

grain heating equilibrium temperature for this zone

Definition at line 257 of file grainvar.h.

Referenced by p_clear1().

double ChargeBin::ThermRate

thermionic rate, in e/cm^2/s

Definition at line 228 of file grainvar.h.

Referenced by GrainTemperature().

double ChargeBin::ThresInf

threshold for removing electron from grain well to infinity (phi), in Ryd

Definition at line 228 of file grainvar.h.

double ChargeBin::ThresInfInc

same as ThresInf, but for incoming electrons (using Zg instead of Zg+1), in Ryd

Definition at line 228 of file grainvar.h.

Referenced by qheat_init().

double ChargeBin::ThresInfVal

threshold for removing electron from valence band to infinity (phi^v), in Ryd

Definition at line 228 of file grainvar.h.

double ChargeBin::ThresSurf

threshold for removing electron from grain well to surface (phi_s), in Ryd

Definition at line 228 of file grainvar.h.

Referenced by GrainTemperature(), PE_init(), and qheat_init().

double ChargeBin::ThresSurfInc

same as ThresSurf, but for incoming electrons (using Zg instead of Zg+1), in Ryd

Definition at line 228 of file grainvar.h.

Referenced by GrainCollHeating().

double ChargeBin::ThresSurfVal

threshold for removing electron from valence band to surface (phi_s^v), in Ryd

Definition at line 228 of file grainvar.h.

Referenced by PE_init(), and qheat_init().

double ChargeBin::xi[LIMELM+2]

cache for GrainScreen results

Definition at line 247 of file grainvar.h.

flex_arr<realnum> ChargeBin::yhat

electron yield per absorbed photon (incl. Auger and secondary electrons)

Definition at line 240 of file grainvar.h.

Referenced by GrainElecEmis1(), p_clear0(), PE_init(), and qheat_init().

flex_arr<realnum> ChargeBin::yhat_primary

electron yield per absorbed photon (only primary electrons)

Definition at line 241 of file grainvar.h.

Referenced by p_clear0(), and qheat_init().


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