Cloudy
Spectral Synthesis Code for Astrophysics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
t_atmdat Struct Reference

#include <atmdat.h>

Inheritance diagram for t_atmdat:
Collaboration diagram for t_atmdat:

Public Types

enum  { NCX =2 }
 
enum  CollIonRC { DIMA, HYBRID }
 

Public Member Functions

const char * chName () const
 
void zero ()
 
void comment (t_warnings &)
 
double getIonPot (long int nelem, long int ion)
 
 t_atmdat ()
 
- Public Member Functions inherited from module
 module ()
 
virtual ~module ()
 

Public Attributes

double EIonPot [LIMELM][LIMELM]
 
double CharExcIonOf [NCX][LIMELM][LIMELM+1]
 
double CharExcRecTo [NCX][LIMELM][LIMELM+1]
 
double HCharHeatMax
 
double HCharCoolMax
 
double HCharHeatOn
 
double HCharExcRecTo_N0_2D
 
double CharExcIonTotal [NCX]
 
double CharExcRecTotal [NCX]
 
double HIonFrac
 
double HIonFracMax
 
double HCTAlex
 
bool lgCTOn
 
double Density [2][HS_NZ][NHSDIM]
 
double ElecTemp [2][HS_NZ][NHSDIM]
 
double Emiss [2][HS_NZ][NHSDIM][NHSDIM][NLINEHS]
 
long int nDensity [2][HS_NZ]
 
long int ntemp [2][HS_NZ]
 
long int ncut [2][HS_NZ]
 
bool lgHCaseBOK [2][HS_NZ]
 
long int nsbig
 
bool lgCollIonOn
 
realnum WaveLengthCaseB [8][25][24]
 
vector< realnumCaseBWlHeI
 
const long nDefaultPhotoLevelsFe
 
const long nDefaultPhotoLevels
 
const long nDefaultCollLevelsFe
 
const long nDefaultCollLevels
 
const long nDefaultMolLevels
 
bool lgChiantiOn
 
bool lgChiantiLvl2Hybrid
 
bool lgChiantiPrint
 
bool lgChiantiExp
 
char chCloudyChiantiFile [FILENAME_PATH_LENGTH]
 
long nChiantiMaxLevelsFe
 
long nChiantiMaxLevels
 
bool lgChiantiLevelsSet
 
bool lgLamdaOn
 
bool lgLamdaPrint
 
char chLamdaFile [FILENAME_PATH_LENGTH]
 
long nLamdaMaxLevels
 
bool lgLamdaLevelsSet
 
bool lgStoutOn
 
bool lgStoutLvl2Hybrid
 
bool lgStoutPrint
 
char chStoutFile [FILENAME_PATH_LENGTH]
 
long nStoutMaxLevelsFe
 
long nStoutMaxLevels
 
bool lgStoutLevelsSet
 
bool lgCalpgmOn
 
bool lgGbarOn
 
double collstrDefault
 
bool lgInnerShellLine_on
 
bool lgInnerShell_Kisielius
 
bool lgUTAprint
 
CollIonRC CIRCData
 
string chVersion
 
char chdBaseSources [LIMELM][LIMELM+1][10]
 
bool lgdBaseSourceExists [LIMELM][LIMELM+1]
 
multi_arr< long, 2 > ipSpecIon
 

Static Public Attributes

static const double aulThreshold = 1e-29
 

Member Enumeration Documentation

anonymous enum

ion, nelem these arrays save the charge transfer ionization and recombination rates for the heavy elements onto hydrogen. ionization is of the heavy element, and so is a recombination for hydrogen

CharExcIonOf[ipHYDROGEN]( ion , nelem ), CharExcRecTo[ipHYDROGEN]( ion , nelem ) charge transfer ionization of atomic oxygen = CharExcIonOf[ipHYDROGEN][ipOXYGEN][0]*hii charge transfer recombination of ionized oxygen = CharExcRecTo[ipHYDROGEN][ipOXYGEN][0]*hi HCharHeatMax, HCharCoolMax are largest fractions of local heating or cooling due to ct HCharHeatOn usually 1, set to 0 with no CTHeat command

Enumerator
NCX 
Enumerator
DIMA 
HYBRID 

Constructor & Destructor Documentation

t_atmdat::t_atmdat ( )
inline

set atmdat.ipSpecIon to uninit flag

References multi_arr< T, d, ALLOC, lgBC >::alloc(), chdBaseSources, ipHYDROGEN, ipSpecIon, lgdBaseSourceExists, and LIMELM.

Here is the call graph for this function:

Member Function Documentation

const char* t_atmdat::chName ( ) const
inlinevirtual

Implements module.

void t_atmdat::comment ( t_warnings )
inlinevirtual

Implements module.

double t_atmdat::getIonPot ( long int  nelem,
long int  ion 
)
inline

getIonPot – get ionization potential, in Ryd

Parameters
nelem[in] element index (0 for H, 29 for Zn)
ion[in] ion charge (0 for neutral, nelem for H-like)
Returns
double ionization potential, in Ry

References EIonPot.

Referenced by ContCreatePointers(), t_ADfA::getEthresh(), iso_init_energies(), and Opacity_iso_photo_cs().

Member Data Documentation

const double t_atmdat::aulThreshold = 1e-29
static

The threshold for Aul. For species where the highest level has no transitions with Aul > aulThreshold, the highest levels will be trimmed until a real Aul is found.

Referenced by atmdat_STOUT_readin(), and trim_levels().

vector<realnum> t_atmdat::CaseBWlHeI

wavelengths for HeI case b

Referenced by GetStandardHeLines(), lgCheckMonitors(), and lines_helium().

double t_atmdat::CharExcIonOf[NCX][LIMELM][LIMELM+1]

CharExcIon is ionization, [0] is Atom^0 + H+ => Atom+1 + H0 [n] is Atom^+n + H+ => Atom^+n-1 + H0 CharExcRec is recombination [0] is Atom^+1 + H0 => Atom^0 + H^+ [n] is Atom^+n+1 + H0 => Atom^+n + H^+

Referenced by ChargTranEval(), ChargTranPun(), ChargTranSumHeat(), ConvBase(), fill_array(), ion_photo(), iso_charge_transfer_update(), iso_level(), PrintRates(), and zero().

double t_atmdat::CharExcIonTotal[NCX]

this is total rate (s-1) for ct ionization and recombination of nelem

Referenced by fill_array(), IonHydro(), iso_charge_transfer_update(), iso_level(), PrintRates(), and zero().

double t_atmdat::CharExcRecTotal[NCX]
char t_atmdat::chCloudyChiantiFile[FILENAME_PATH_LENGTH]

CloudyChianti filename variable

Referenced by database_readin(), InitDefaultsPreparse(), and ParseDatabase().

char t_atmdat::chdBaseSources[LIMELM][LIMELM+1][10]

Array of Data Sources

Referenced by database_readin(), iso_create(), and t_atmdat().

char t_atmdat::chLamdaFile[FILENAME_PATH_LENGTH]

LAMDA filename variable

Referenced by database_readin(), InitDefaultsPreparse(), and ParseDatabase().

char t_atmdat::chStoutFile[FILENAME_PATH_LENGTH]

Stout filename variable

Referenced by database_readin(), InitDefaultsPreparse(), and ParseDatabase().

string t_atmdat::chVersion

Chianti version read from /data/chianti/VERSION

Referenced by database_readin(), and DatabasePrintReference().

CollIonRC t_atmdat::CIRCData
double t_atmdat::collstrDefault

The default collision strength used for dBaseTrans no collision or radiative data are available so conventional g-bar is unavailable

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

double t_atmdat::Density[2][HS_NZ][NHSDIM]

these are the density and temperature mesh points on the original Hummer & Storey data, for H[0] and He[1],

Referenced by atmdat_HS_caseB(), and read_Hummer_Storey().

double t_atmdat::EIonPot[LIMELM][LIMELM]
double t_atmdat::ElecTemp[2][HS_NZ][NHSDIM]
double t_atmdat::Emiss[2][HS_NZ][NHSDIM][NHSDIM][NLINEHS]

emiss[ipTemp][ipDens][ipLevel]

Referenced by atmdat_HS_caseB(), and read_Hummer_Storey().

double t_atmdat::HCharCoolMax
double t_atmdat::HCharExcRecTo_N0_2D

Referenced by ChargTranEval(), and lines().

double t_atmdat::HCharHeatMax
double t_atmdat::HCharHeatOn

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

double t_atmdat::HCTAlex

Dalgarno H charge transfer rate coefficient for high stages of ionization default is 1.92e-9 in zero, reset with 'set charge transfer' command

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

double t_atmdat::HIonFrac

this is the current ratio of ct ionization of H, relative to total dest rate

Referenced by IonHydro(), lines_hydro(), and zero().

double t_atmdat::HIonFracMax

this is the largest ratio of ct ionization of H, relative to total dest rate

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

multi_arr<long,2> t_atmdat::ipSpecIon

Array to store species labels and ipSpecies values

Referenced by chkCaHeps(), database_prep(), dBase_solve(), ion_photo(), RT_line_driving(), states_nelemfill(), and t_atmdat().

bool t_atmdat::lgCalpgmOn

Default number of iron levels when not using the coronal command true if CDMS/JPL database is enabled

Referenced by database_readin(), and InitDefaultsPreparse().

bool t_atmdat::lgChiantiExp

true if Cloudy will use no theoretical energy levels from Chianti, only experimental. False means that only theoretical energy levels are used

Referenced by atmdat_CHIANTI_readin(), InitDefaultsPreparse(), and ParseDatabase().

bool t_atmdat::lgChiantiLevelsSet

Flag to determine whether nChiantiMaxLevelsFe has been set by the user

Referenced by InitDefaultsPreparse(), ParseCoronal(), and ParseDatabase().

bool t_atmdat::lgChiantiLvl2Hybrid

true if CHIANTI database is supplemented by opacity project lines

Referenced by atmdat_readin(), CoolDima(), InitDefaultsPreparse(), ParseDatabase(), RT_line_all(), and states_nelemfill().

bool t_atmdat::lgChiantiOn

true if CHIANTI database is enabled

Referenced by atmdat_readin(), CoolEvaluate(), database_readin(), InitDefaultsPreparse(), and ParseDatabase().

bool t_atmdat::lgChiantiPrint

true if Cloudy will print which Chianti species are being used as well as number of levels

Referenced by atmdat_CHIANTI_readin(), InitDefaultsPreparse(), ParseDatabase(), and trim_levels().

bool t_atmdat::lgCollIonOn

by default, include collisional ionization, option to not include it, with "no collisional ionization" command

Referenced by t_ADfA::coll_ion(), InitDefaultsPreparse(), and ParseDont().

bool t_atmdat::lgCTOn

variable to turn on or off ct ionization-recombination of all elements - set off with no charge transfer command

Referenced by ChargTranEval(), fill_array(), GrainChrgTransferRates(), iso_level(), mole_eval_sources(), ParseDont(), and zero().

bool t_atmdat::lgdBaseSourceExists[LIMELM][LIMELM+1]

this indicates that a model atom has been set up for this ion

Referenced by chkCaHeps(), database_readin(), iso_create(), lines(), PrtFinal(), and t_atmdat().

bool t_atmdat::lgGbarOn

true if dBase transitions have collision strengths supplemented by gbar

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

bool t_atmdat::lgHCaseBOK[2][HS_NZ]

following will be set false if we ever stop over bounds of HS table for any element. first index is case A [0] or case B [1] - second is element number

Referenced by IterStart(), lines_hydro(), PrtComment(), and PrtFinal().

bool t_atmdat::lgInnerShell_Kisielius

says whether to include the new Romas data set

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

bool t_atmdat::lgInnerShellLine_on

this says whether to include inner shell absorption lines

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

bool t_atmdat::lgLamdaLevelsSet

Flag to determine whether nLamdaMaxLevels has been set by the user

Referenced by InitDefaultsPreparse(), and ParseDatabase().

bool t_atmdat::lgLamdaOn

true if LAMDA database is enabled

Referenced by atmdat_readin(), database_readin(), InitDefaultsPreparse(), and ParseDatabase().

bool t_atmdat::lgLamdaPrint

true if Cloudy will print which Lamda species are being used as well as number of levels

Referenced by atmdat_LAMDA_readin(), InitDefaultsPreparse(), ParseDatabase(), and trim_levels().

bool t_atmdat::lgStoutLevelsSet

Flag to determine whether nStoutMaxLevelsFe has been set by the user

Referenced by InitDefaultsPreparse(), ParseCoronal(), and ParseDatabase().

bool t_atmdat::lgStoutLvl2Hybrid

true if Stout database supplements opacity project (Level 2) lines

Referenced by atmdat_readin(), CoolDima(), InitDefaultsPreparse(), ParseDatabase(), RT_line_all(), and states_nelemfill().

bool t_atmdat::lgStoutOn

true if Stout database is enabled

Referenced by atmdat_readin(), CoolEvaluate(), database_readin(), InitDefaultsPreparse(), and ParseDatabase().

bool t_atmdat::lgStoutPrint

true if Cloudy will print which Stout species are being used as well as number of levels

Referenced by atmdat_STOUT_readin(), InitDefaultsPreparse(), ParseDatabase(), and trim_levels().

bool t_atmdat::lgUTAprint

flag to print out the UTA data

Referenced by read_UTA_lines(), and zero().

long t_atmdat::nChiantiMaxLevels

The maximum number of chianti energy levels used for all other species

Referenced by atmdat_CHIANTI_readin(), InitDefaultsPreparse(), ParseCoronal(), and ParseDatabase().

long t_atmdat::nChiantiMaxLevelsFe

The maximum number of chianti energy levels used for Fe

Referenced by atmdat_CHIANTI_readin(), InitDefaultsPreparse(), ParseCoronal(), and ParseDatabase().

long int t_atmdat::ncut[2][HS_NZ]

highest principal quantum number they report, usually 25, their paper says 50

Referenced by atmdat_HS_caseB(), lines_hydro(), and read_Hummer_Storey().

const long t_atmdat::nDefaultCollLevels

Default number of non-iron levels for collisional ionization cases using the coronal command

Referenced by ParseCoronal().

const long t_atmdat::nDefaultCollLevelsFe

Default number of iron levels for collisional ionization cases using the coronal command

Referenced by ParseCoronal().

const long t_atmdat::nDefaultMolLevels

Default number of molecular levels

Referenced by InitDefaultsPreparse().

const long t_atmdat::nDefaultPhotoLevels

Default number of non-iron levels when not using the coronal command

Referenced by InitDefaultsPreparse().

const long t_atmdat::nDefaultPhotoLevelsFe

Referenced by InitDefaultsPreparse().

long int t_atmdat::nDensity[2][HS_NZ]

the number of density temperature mesh points for H&S Case A, B

Referenced by atmdat_HS_caseB(), and read_Hummer_Storey().

long t_atmdat::nLamdaMaxLevels

maximum number of lamda energy levels

Referenced by atmdat_LAMDA_readin(), InitDefaultsPreparse(), and ParseDatabase().

long int t_atmdat::nsbig

related to highest stage of ionization needed for Cota recom

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

long t_atmdat::nStoutMaxLevels

default maximum number of stout energy levels used for other species

Referenced by atmdat_STOUT_readin(), InitDefaultsPreparse(), ParseCoronal(), and ParseDatabase().

long t_atmdat::nStoutMaxLevelsFe

The default maximum number of stout energy levels for Fe

Referenced by atmdat_STOUT_readin(), InitDefaultsPreparse(), ParseCoronal(), and ParseDatabase().

long int t_atmdat::ntemp[2][HS_NZ]
realnum t_atmdat::WaveLengthCaseB[8][25][24]

wavelengths of Hummer & Storey case B lines for H - O first dimension is atomic number of C scale, H is 0 next two are upper and lower configurations on physics scale - Lya is 2-1, Lyb is 3-1, Ha is 3-2, etc

Referenced by lgCheckMonitors(), and lines_hydro().


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