/home66/gary/public_html/cloudy/c08_branch/source/mole_co_priv.h

Go to the documentation of this file.
00001 /* This file is part of Cloudy and is copyright (C)1978-2008 by Gary J. Ferland and
00002  * others.  For conditions of distribution and use see copyright notice in license.txt */
00003 
00004 #ifndef _MOLE_CO_PRIV_H_
00005 #define _MOLE_CO_PRIV_H_
00006 
00007 /* mole_co_priv.h */
00008 
00009 #include "hash.h"
00010 
00011 extern struct mole_priv_s {
00012         hashtab *spectab, *reactab, *elemtab;
00013 } mole_priv;
00014 
00015 EXTERN struct t_coreactions {
00016         struct COmole_rate_s **list;
00017         long int n;
00018 } coreactions;
00019 
00020 #define MAXREACTANTS 3
00021 #define MAXPRODUCTS  4
00022 
00023 /* Structure containing reaction data */
00024 struct COmole_rate_s {
00025         int index;
00026         char *label;
00027         int nreactants, nrates, nproducts,photon;
00028         struct molecule *reactants[MAXREACTANTS];
00029         struct molecule *rate_species[MAXREACTANTS];
00030         struct molecule *products[MAXPRODUCTS];
00031         double rk, reduced_mass, a, b, c;
00032         double (*fun)(struct COmole_rate_s *rate);
00033 };
00034 
00035 enum {CHARS_ELEMENT=3};
00036 extern struct chem_element_s {
00037         int ipCl; /* Index of element in external arrays */
00038         int
00039           ipMl,   /* Index of atomic species in molecule arrays */
00040                 ipMlP,
00041                 ipZ;  /* Index of + ions in molecule arrays */
00042         char chName[3]; /* Chemical symbols for elements */
00043 } **chem_element;
00044 
00045 extern int32 *ipiv;
00046 extern realnum *tot_ion;
00049 extern void CO_step(void);
00054 extern void CO_solve(
00055         bool *lgNegPop, 
00056         bool *lgZerPop );
00057 
00058 #endif /* _MOLE_CO_PRIV_H_ */

Generated on Mon Feb 16 12:01:18 2009 for cloudy by  doxygen 1.4.7