cloudy trunk
|
#include <mole.h>
Public Types | |
typedef vector< count_ptr< molecule > > | MoleculeList |
Public Member Functions | |
void | init (void) |
void | make_species (void) |
void | zero (void) |
Static Public Member Functions | |
static void | sort (MoleculeList::iterator start, MoleculeList::iterator end) |
static void | sort (molecule **start, molecule **end) |
Data Fields | |
bool | lgNoMole |
bool | lgNoHeavyMole |
bool | lgH2Ozer |
bool | lgLeidenHack |
bool | lgFederman |
bool | lgStancil |
bool | lgNonEquilChem |
bool | lgProtElim |
bool | lgNeutrals |
bool | lgGrain_mole_deplete |
vector< bool > | lgTreatIsotopes |
int | num_total |
int | num_calc |
int | num_compacted |
MoleculeList | list |
>>chng 03 feb 09, rm ipH3P_hev, since not used, and decrement NUM_HEAVY_MOLEC to 17 >>chng 03 aug 04, rm ipCTWO and ipC2P from den since not included in balance, and always finds zero column density, so NUM_HEAVY_MOLEC from 17 to 15 >>chng 03 aug 05, rm ch2 and ch3, so n from 15 to 13 >>chng 03 nov 14 add Si chemistry & CH3+, so that now every reaction that is in the TH85 chemical network is also included in Cloudy. Additionally, there are also reactions taken from other papers (mostly Hollenbach and McKee...see co.c). In all 20 molecular species are calculated, along with the atomic and first ionization stages of C, O, and Si >>chng 04 May 13, Nick Abel. Add CH3, CH4, CH4+, and CH5+ to network in order to get the same chemical abundances vs. depth as other PDR codes in the Leiden meeting. With changes we now can predict molecular abundances for 24 C, O, and Si bearing molecules. >>chng 04 jul 13, Nick Abel. Add nitrogen and sulphur bearing molecules to the chemical network. First added to generate a chemical model for eta carinae, but is applicable to all molecular clouds >>chng 05 mar 11, Nick Abel. Add C2 and C2+ to chemistry, reactions involving these species affects the abundance of C >>chng 05 mar 23, Nick Abel. Add Chlorine to chemistry
this includes the atomic and first ionized species of each element that can combine to form molecules.
This is the number of molecules, ions, and atoms that the co network uses This is used in comole to improve the calculation, as deep in molecular regions reactions with molecules can be important to the ionization balance
typedef vector<count_ptr<molecule> > t_mole_global::MoleculeList |
void t_mole_global::init | ( | void | ) |
Definition at line 11 of file mole.cpp.
References DEBUG_ENTRY, make_species(), mole, mole_global, mole_make_groups(), and mole_make_list().
void t_mole_global::make_species | ( | void | ) |
Definition at line 140 of file mole_species.cpp.
References ASSERT, molecule::charge, CHARS_ION_STAGE, CHARS_ISOTOPE_SYM, co, DEBUG_ENTRY, dense, deut, ELECTRON_MASS, element_list, elementnames, findatom(), findspecies(), fixit(), gv, h2, hmi, InitDeuteriumIonization(), ipCARBON, ipHYDROGEN, KJMOL1CM, lgTreatIsotopes, LIMELM, MeanMassOfElement(), MOLE_ACTIVE, mole_global, molecule::mole_mass, MOLE_NULL, MOLE_PASSIVE, MOLECULE, newelement(), newisotope(), newspecies(), null_atom, null_element, null_mole, null_molezone, OTHER, read_species_file(), ReadIsotopeFractions(), SDIV(), SetDeuteriumFractionation(), SetGasPhaseDeuterium(), and unresolved_atom_list.
Referenced by init().
Definition at line 99 of file mole_species.cpp.
References start().
|
static |
References start().
Referenced by canonicalize_reaction(), mole_make_list(), and parse_udfa().
void t_mole_global::zero | ( | void | ) |
mole_zero allocate + initialize workspace
Definition at line 36 of file mole.cpp.
References cdEXIT, DEBUG_ENTRY, EXIT_FAILURE, ioQQQ, mole, and mole_global.
bool t_mole_global::lgGrain_mole_deplete |
bool t_mole_global::lgH2Ozer |
bool t_mole_global::lgNeutrals |
bool t_mole_global::lgNoHeavyMole |
bool t_mole_global::lgNoMole |
bool t_mole_global::lgNonEquilChem |
bool t_mole_global::lgProtElim |
vector<bool> t_mole_global::lgTreatIsotopes |
Definition at line 311 of file mole.h.
Referenced by make_species().
MoleculeList t_mole_global::list |
int t_mole_global::num_total |