/home66/gary/public_html/cloudy/c10_branch/source/mole_co_etc.cpp File Reference

#include "cddefines.h"
#include "physconst.h"
#include "mole.h"
#include "mole_co_priv.h"
#include "hmi.h"
#include "rfield.h"
#include "dense.h"
#include "ionbal.h"
#include "grainvar.h"
#include "timesc.h"
Include dependency graph for mole_co_etc.cpp:

Go to the source code of this file.

Enumerations

enum  spectype { MOLECULE, OTHER }
enum  molstate { ACTIVE, PASSIVE }

Functions

STATIC void newelement (const char label[], int ipion, int priority)
STATIC struct moleculenewspecies (const char label[7], enum spectype type, enum molstate state, realnum *location, double frac0)
STATIC struct chem_element_sfindelement (const char buf[])
STATIC int isactive (data_u *dat)
STATIC int ispassive (data_u *dat)
STATIC int isCOnet (data_u *dat)
void CO_Init (void)
struct moleculefindspecies (const char buf[])
struct COmole_rate_sCO_findrate_s (const char buf[])
double CO_findrk (const char buf[])
double CO_findrate (const char buf[])
void CO_update_species_cache (void)
double CO_sink_rate (const char chSpecies[7])
void CO_update_rks (void)
double CO_dissoc_rate (const char chSpecies[7])
double CO_source_rate (const char chSpecies[7])
void CO_punch_mol (FILE *punit, const char chSpecies[], char header[], double depth)
void CO_zero (void)

Variables

struct chem_element_s ** chem_element
struct chem_element_selement_list [LIMELM]
int32 * ipiv
realnumtot_ion
struct mole_priv_s mole_priv
struct molecule null_mole

Enumeration Type Documentation

enum molstate
Enumerator:
ACTIVE 
PASSIVE 

Definition at line 21 of file mole_co_etc.cpp.

enum spectype
Enumerator:
MOLECULE 
OTHER 

Definition at line 20 of file mole_co_etc.cpp.


Function Documentation

double CO_dissoc_rate ( const char  chSpecies[7]  ) 
double CO_findrate ( const char  buf[]  ) 

Definition at line 569 of file mole_co_etc.cpp.

References CO_findrate_s(), DEBUG_ENTRY, molecule::hevmol, COmole_rate_s::nrates, COmole_rate_s::rate_species, and COmole_rate_s::rk.

Referenced by CO_solve(), CoolOxyg(), and lines_lv1_li_ne().

Here is the call graph for this function:

struct COmole_rate_s* CO_findrate_s ( const char  buf[]  )  [read]

Definition at line 540 of file mole_co_etc.cpp.

References DEBUG_ENTRY, lookup(), mole_priv, data_u::p, and mole_priv_s::reactab.

Referenced by CO_drive(), CO_findrate(), and CO_findrk().

Here is the call graph for this function:

double CO_findrk ( const char  buf[]  ) 

Definition at line 553 of file mole_co_etc.cpp.

References ASSERT, CO_findrate_s(), DEBUG_ENTRY, isnan, and COmole_rate_s::rk.

Referenced by hmole_step(), IonIron(), IonMagne(), and SaveDo().

Here is the call graph for this function:

void CO_Init ( void   ) 
void CO_punch_mol ( FILE *  punit,
const char  chSpecies[],
char  header[],
double  depth 
)
double CO_sink_rate ( const char  chSpecies[7]  ) 
double CO_source_rate ( const char  chSpecies[7]  ) 
void CO_update_rks ( void   ) 

CO_update_rks update rate coefficients, only temp part

Definition at line 671 of file mole_co_etc.cpp.

References COmole_rate_s::a, coreactions, DEBUG_ENTRY, COmole_rate_s::fun, t_coreactions::list, t_coreactions::n, and COmole_rate_s::rk.

Referenced by CO_drive(), and ConvBase().

void CO_update_species_cache ( void   ) 
void CO_zero ( void   ) 
STATIC struct chem_element_s * findelement ( const char  buf[]  )  [read]

Definition at line 526 of file mole_co_etc.cpp.

References DEBUG_ENTRY, mole_priv_s::elemtab, lookup(), mole_priv, and data_u::p.

Referenced by newspecies().

Here is the call graph for this function:

struct molecule* findspecies ( const char  buf[]  )  [read]
STATIC int isactive ( data_u dat  ) 

Definition at line 489 of file mole_co_etc.cpp.

References molecule::active, DEBUG_ENTRY, and data_u::p.

Referenced by CO_Init().

STATIC int isCOnet ( data_u dat  ) 

Definition at line 502 of file mole_co_etc.cpp.

References data_u::p.

Referenced by CO_Init().

STATIC int ispassive ( data_u dat  ) 

Definition at line 498 of file mole_co_etc.cpp.

References data_u::p.

Referenced by CO_Init().

STATIC void newelement ( const char  label[],
int  ipion,
int  priority 
)
STATIC struct molecule * newspecies ( const char  label[7],
enum spectype  type,
enum molstate  state,
realnum location,
double  frac0 
) [read]

Variable Documentation

Definition at line 32 of file mole_co_etc.cpp.

Referenced by CO_solve(), and lgMolecAver().

Definition at line 35 of file mole_co_etc.cpp.

int32* ipiv
>>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 hevmol 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

Definition at line 40 of file mole_co_etc.cpp.

Referenced by cdColm(), CO_Init(), CO_punch_mol(), database_readin(), dBase_solve(), findspecies(), and newreact().

Definition at line 37 of file mole_co_etc.cpp.

Referenced by CO_Init(), and CO_solve().

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 15 Nov 2012 for cloudy by  doxygen 1.6.1