root/branches/newmole/source/abund.h
| Revision 1739, 2.4 kB (checked in by rjrw, 12 months ago) | |
|---|---|
|
|
| Line | |
|---|---|
| 1 | /* This file is part of Cloudy and is copyright (C)1978-2008 by Gary J. Ferland and |
| 2 | * others. For conditions of distribution and use see copyright notice in license.txt */ |
| 3 | |
| 4 | #ifndef _ABUND_H_ |
| 5 | #define _ABUND_H_ |
| 6 | |
| 7 | |
| 8 | /** |
| 9 | AbundancesSet sets initial abundances after parameters are entered by reading input |
| 10 | */ |
| 11 | void AbundancesSet(void); |
| 12 | |
| 13 | /** |
| 14 | AbundancesPrt print all abundances, both gas phase and grains |
| 15 | */ |
| 16 | void AbundancesPrt( void ); |
| 17 | |
| 18 | /** |
| 19 | AbundancesZero set initial abundances for different mixes |
| 20 | */ |
| 21 | void AbundancesZero(void); |
| 22 | |
| 23 | /** |
| 24 | generate abundance set from Fred Hamann's starburst evolution grid |
| 25 | \param chCard |
| 26 | */ |
| 27 | void abund_starburst(char*); |
| 28 | |
| 29 | /** |
| 30 | AbundancesTable interpolate on table of points to do 'element table' command, |
| 31 | \param r0 |
| 32 | \param depth |
| 33 | \param iel |
| 34 | */ |
| 35 | double AbundancesTable(double r0, |
| 36 | double depth, |
| 37 | long int iel); |
| 38 | |
| 39 | /** abund.h */ |
| 40 | EXTERN struct t_abund { |
| 41 | |
| 42 | /** logical flag saying whether to include this element in punch output for AGN tables */ |
| 43 | bool lgAGN[LIMELM]; |
| 44 | |
| 45 | realnum SolarSave[LIMELM], |
| 46 | OldSolar84[LIMELM], |
| 47 | anova[LIMELM], |
| 48 | apn[LIMELM], |
| 49 | ahii[LIMELM], |
| 50 | camern[LIMELM], |
| 51 | aprim[LIMELM], |
| 52 | aism[LIMELM]; |
| 53 | |
| 54 | bool lgAbnSolar; |
| 55 | |
| 56 | /** solar abundances for the current calculation */ |
| 57 | realnum solar[LIMELM]; |
| 58 | |
| 59 | /**lgAbunTabl says whether this element is to have its abundance |
| 60 | *determined from a table (true) or stored constant (false) |
| 61 | *set true with element table command */ |
| 62 | bool lgAbunTabl[LIMELM], |
| 63 | |
| 64 | /** lgAbTaDepth says whether depth or radius, true is depth */ |
| 65 | lgAbTaDepth[LIMELM], |
| 66 | |
| 67 | /** general flag saying this option turned on */ |
| 68 | lgAbTaON; |
| 69 | |
| 70 | # define LIMTABD 500 |
| 71 | |
| 72 | /**AbTabFac abundances for element table*/ |
| 73 | realnum AbTabFac[LIMTABD][LIMELM], |
| 74 | |
| 75 | /**AbTabRad depth scale |
| 76 | *parameters for dlaw table command*/ |
| 77 | AbTabRad[LIMTABD][LIMELM]; |
| 78 | |
| 79 | long int nAbunTabl; |
| 80 | |
| 81 | /** indices so that abundances can be in any order */ |
| 82 | long int ipSolar[LIMELM], |
| 83 | npSolar; |
| 84 | |
| 85 | /** scale factors to alter abundances of elements, set with element scale */ |
| 86 | realnum ScaleElement[LIMELM]; |
| 87 | |
| 88 | /** Depletion is set of stored scale factors for depletion of general ism */ |
| 89 | realnum Depletion[LIMELM], |
| 90 | |
| 91 | /** depset is unity unless depletion is used */ |
| 92 | depset[LIMELM]; |
| 93 | |
| 94 | /** lgDepln is true if depln used */ |
| 95 | bool lgDepln; |
| 96 | |
| 97 | /** scale factor for metals, set with metals command */ |
| 98 | realnum ScaleMetals; |
| 99 | |
| 100 | } abund; |
| 101 | |
| 102 | |
| 103 | |
| 104 | #endif /* _ABUND_H_ */ |
Note: See TracBrowser
for help on using the browser.
