cloudy trunk
Loading...
Searching...
No Matches
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
mole.h File Reference
#include "count_ptr.h"
#include "elementnames.h"
#include "transition.h"
Include dependency graph for mole.h:

Go to the source code of this file.

Data Structures

class  chem_element
 
class  chem_atom
 
class  element_pointer_value_less
 
class  molecule
 
class  t_mole_global
 
class  molezone
 
class  t_mole_local
 

Macros

#define SMALLABUND   1e-24
 

Typedefs

typedef map< int, count_ptr< chem_atom > >::iterator isotopes_i
 
typedef vector< count_ptr< chem_atom > > ChemAtomList
 
typedef molecule::nAtomsMap::iterator nAtoms_i
 
typedef molecule::nAtomsMap::reverse_iterator nAtoms_ri
 
typedef molecule::nAtomsMap::const_reverse_iterator nAtoms_cri
 

Enumerations

enum  mole_state { MOLE_NULL , MOLE_PASSIVE , MOLE_ACTIVE }
 

Functions

bool operator< (const chem_atom &a, const chem_atom &b)
 
bool operator> (const chem_atom &a, const chem_atom &b)
 
bool operator<= (const chem_atom &a, const chem_atom &b)
 
bool operator>= (const chem_atom &a, const chem_atom &b)
 
bool operator== (const chem_atom &a, const chem_atom &b)
 
bool operator!= (const chem_atom &a, const chem_atom &b)
 
void mole_drive (void)
 
void mole_create_react (void)
 
mole_reactionmole_findrate_s (const char buf[])
 
void mole_print_species_reactions (molecule *speciesToPrint)
 
moleculefindspecies (const char buf[])
 
molezonefindspecieslocal (const char buf[])
 
void mole_punch (FILE *punit, const char speciesname[], const char args[], bool lgHeader, bool lgData, double depth)
 
void total_molecule_elems (realnum total[LIMELM])
 
void total_molecule_deut (realnum &total)
 
realnum total_molecules (void)
 
realnum total_molecules_gasphase (void)
 
void mole_make_list (void)
 
void mole_make_groups (void)
 
void mole_cmp_num_in_out_reactions (void)
 
bool lgDifferByExcitation (const molecule &mol1, const molecule &mol2)
 
void mole_update_species_cache (void)
 
void mole_update_sources (void)
 
void mole_rk_bigchange (void)
 
void create_isotopologues_one (ChemAtomList &atoms, vector< int > &numAtoms, string atom_old, string atom_new, string embellishments, vector< string > &newLabels)
 
bool parse_species_label (const char label[], ChemAtomList &atomsLeftToRight, vector< int > &numAtoms, string &embellishments)
 
bool parse_species_label (const char mylab[], ChemAtomList &atomsLeftToRight, vector< int > &numAtoms, string &embellishments, bool &lgExcit, int &charge, bool &lgGas_Phase)
 

Variables

ChemAtomList atom_list
 
ChemAtomList unresolved_atom_list
 
chem_elementnull_element
 
chem_atomnull_atom
 
moleculenull_mole
 
t_mole_global mole_global
 
molezonenull_molezone
 
t_mole_local mole
 

Macro Definition Documentation

◆ SMALLABUND

#define SMALLABUND   1e-24

Definition at line 13 of file mole.h.

Typedef Documentation

◆ ChemAtomList

typedef vector< count_ptr<chem_atom> > ChemAtomList

Definition at line 115 of file mole.h.

◆ isotopes_i

typedef map<int,count_ptr<chem_atom>>::iterator isotopes_i

Definition at line 35 of file mole.h.

◆ nAtoms_cri

typedef molecule::nAtomsMap::const_reverse_iterator nAtoms_cri

Definition at line 216 of file mole.h.

◆ nAtoms_i

typedef molecule::nAtomsMap::iterator nAtoms_i

Definition at line 214 of file mole.h.

◆ nAtoms_ri

typedef molecule::nAtomsMap::reverse_iterator nAtoms_ri

Definition at line 215 of file mole.h.

Enumeration Type Documentation

◆ mole_state

enum mole_state
Enumerator
MOLE_NULL 
MOLE_PASSIVE 
MOLE_ACTIVE 

Definition at line 15 of file mole.h.

Function Documentation

◆ create_isotopologues_one()

void create_isotopologues_one ( ChemAtomList atoms,
vector< int > &  numAtoms,
string  atom_old,
string  atom_new,
string  embellishments,
vector< string > &  newLabels 
)

Definition at line 387 of file mole_species.cpp.

References ASSERT, atoms, and fixit().

Referenced by mole_generate_isotopologue_reactions(), and newspecies().

Here is the call graph for this function:

◆ findspecies()

molecule * findspecies ( const char  buf[])

◆ findspecieslocal()

molezone * findspecieslocal ( const char  buf[])

◆ lgDifferByExcitation()

bool lgDifferByExcitation ( const molecule mol1,
const molecule mol2 
)

Definition at line 804 of file mole_species.cpp.

References molecule::label.

Referenced by register_reaction_vectors().

◆ mole_cmp_num_in_out_reactions()

void mole_cmp_num_in_out_reactions ( void  )

◆ mole_create_react()

void mole_create_react ( void  )

◆ mole_drive()

void mole_drive ( void  )

mole_drive main driver for chemical equilibrium routines

Definition at line 41 of file mole_drive.cpp.

References DEBUG_ENTRY, mole_effects(), mole_ion_trim(), mole_solve(), mole_update_limiting_reactants(), mole_update_rks(), mole_update_species_cache(), and MOLETOLER.

Referenced by ConvBase().

Here is the call graph for this function:

◆ mole_findrate_s()

mole_reaction * mole_findrate_s ( const char  buf[])

◆ mole_make_groups()

void mole_make_groups ( void  )

◆ mole_make_list()

void mole_make_list ( void  )

◆ mole_print_species_reactions()

void mole_print_species_reactions ( molecule speciesToPrint)

◆ mole_punch()

void mole_punch ( FILE *  punit,
const char  speciesname[],
const char  args[],
bool  lgHeader,
bool  lgData,
double  depth 
)

◆ mole_rk_bigchange()

void mole_rk_bigchange ( void  )

◆ mole_update_sources()

void mole_update_sources ( void  )

Definition at line 106 of file mole_drive.cpp.

References DEBUG_ENTRY, mole_eval_sources(), mole_global, mole_update_species_cache(), and t_mole_global::num_total.

Referenced by ConvBase().

Here is the call graph for this function:

◆ mole_update_species_cache()

void mole_update_species_cache ( void  )

◆ operator!=()

bool operator!= ( const chem_atom a,
const chem_atom b 
)
inline

Definition at line 110 of file mole.h.

◆ operator<()

bool operator< ( const chem_atom a,
const chem_atom b 
)
inline

Definition at line 90 of file mole.h.

References chem_atom::compare().

Here is the call graph for this function:

◆ operator<=()

bool operator<= ( const chem_atom a,
const chem_atom b 
)
inline

Definition at line 98 of file mole.h.

References chem_atom::compare().

Here is the call graph for this function:

◆ operator==()

bool operator== ( const chem_atom a,
const chem_atom b 
)
inline

Definition at line 106 of file mole.h.

References chem_atom::compare().

Here is the call graph for this function:

◆ operator>()

bool operator> ( const chem_atom a,
const chem_atom b 
)
inline

Definition at line 94 of file mole.h.

References chem_atom::compare().

Here is the call graph for this function:

◆ operator>=()

bool operator>= ( const chem_atom a,
const chem_atom b 
)
inline

Definition at line 102 of file mole.h.

References chem_atom::compare().

Here is the call graph for this function:

◆ parse_species_label() [1/2]

bool parse_species_label ( const char  label[],
ChemAtomList atomsLeftToRight,
vector< int > &  numAtoms,
string &  embellishments 
)

Definition at line 678 of file mole_species.cpp.

References parse_species_label().

Referenced by mole_generate_isotopologue_reactions(), newspecies(), and parse_species_label().

Here is the call graph for this function:

◆ parse_species_label() [2/2]

bool parse_species_label ( const char  mylab[],
ChemAtomList atomsLeftToRight,
vector< int > &  numAtoms,
string &  embellishments,
bool lgExcit,
int &  charge,
bool lgGas_Phase 
)

Definition at line 685 of file mole_species.cpp.

References ASSERT, CHARS_ISOTOPE_SYM, CHARS_SPECIES, dense, findatom(), count_ptr< T >::get_ptr(), ioQQQ, t_dense::lgElmtOn, t_trace::lgTraceMole, and trace.

Here is the call graph for this function:

◆ total_molecule_deut()

void total_molecule_deut ( realnum total)

◆ total_molecule_elems()

void total_molecule_elems ( realnum  total[LIMELM])

◆ total_molecules()

realnum total_molecules ( void  )

◆ total_molecules_gasphase()

realnum total_molecules_gasphase ( void  )

Variable Documentation

◆ atom_list

ChemAtomList atom_list
extern

◆ mole

t_mole_local mole
extern

◆ mole_global

t_mole_global mole_global
extern

◆ null_atom

chem_atom* null_atom
extern

Definition at line 68 of file mole_species.cpp.

Referenced by molecule::heavyAtom(), t_mole_global::make_species(), and molcol().

◆ null_element

chem_element* null_element
extern

Definition at line 67 of file mole_species.cpp.

Referenced by t_mole_global::make_species().

◆ null_mole

molecule* null_mole
extern

◆ null_molezone

molezone* null_molezone
extern

◆ unresolved_atom_list

ChemAtomList unresolved_atom_list
extern