cloudy
trunk
Main Page
Related Pages
Data Structures
Files
File List
Globals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
source
h2_priv.h
Go to the documentation of this file.
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 _H2_PRIV_H_
5
#define _H2_PRIV_H_
6
7
/*H2_Read_Cosmicray_distribution read distribution function for H2 population following cosmic ray collisional excitation
8
void H2_Read_Cosmicray_distribution(void); */
9
13
/* >> chng 05 jul 15, TE, H2g = sum (v=0, J=0,1) */
14
/* >>chng 05 jul 29, to 0.5 eV, this goes up to J=8 for v=0 */
15
/* >>chng 05 aug 03, slight upward change in energy to include the J=8 level,
16
* also give energy in waveumbers for simplicity (punch h2 levels give energy in ryd) */
17
/*#define ENERGY_H2_STAR (0.5/EVRYD/WAVNRYD)*/
18
/* energy of v=0, J=8 is 4051.73, J=9 is 5001.97
19
* v=1, J=0 is 4161.14 */
20
const
double
ENERGY_H2_STAR
= 4100.;
21
28
double
H2_He_coll
(
int
init,
int
final
,
double
temp);
29
35
long
int
H2_He_coll_init
(
const
char
FILE_NAME_IN[]);
36
40
void
H2_ReadEnergies
(
long
int
nelec );
41
45
void
H2_ReadDissprob
(
long
int
nelec );
46
48
void
H2_CollidRateEvalAll
(
void
);
49
53
void
H2_CollidRateRead
(
long
int
nColl );
54
58
void
H2_ReadTransprob
(
long
int
nelec );
59
61
void
H2_Read_hminus_distribution
(
void
);
62
64
void
mole_H2_form
(
void
);
65
67
void
mole_H2_LTE
(
void
);
68
71
void
H2_Solomon_rate
(
void
);
72
74
void
H2_gs_rates
(
void
);
75
78
void
H2_zero_pops_too_low
(
void
);
79
80
const
bool
CR_PRINT
=
false
;
81
const
int
CR_X
= 1;
82
const
int
CR_VIB
= 15;
83
const
int
CR_J
= 10;
84
const
int
CR_EXIT
= 3;
85
88
const
int
N_X_COLLIDER
= 5;
89
91
const
int
chN_X_COLLIDER
= 10;
92
EXTERN
char
chH2ColliderLabels
[
N_X_COLLIDER
][
chN_X_COLLIDER
];
93
95
const
int
VIB_COLLID
= 3;
96
98
const
int
nTE_HMINUS
= 7;
99
100
/* these vars are private for H2 but uses same style as all other header files -
101
* the EXTERN is extern in all except cddefines */
102
104
EXTERN
long
int
nEner_H2_ground
;
105
106
EXTERN
multi_arr<double,3>
H2_populations
;
107
EXTERN
multi_arr<double,3>
H2_rad_rate_out
;
108
110
EXTERN
multi_arr<double,2>
pops_per_vib
;
111
113
EXTERN
double
H2_renorm_chemistry
,
114
H2_sum_excit_elec_den
;
115
117
EXTERN
multi_arr<realnum,2>
H2_X_colden
;
118
120
EXTERN
multi_arr<double,2>
H2_X_rate_from_elec_excited
;
121
123
EXTERN
multi_arr<double,2>
H2_X_rate_to_elec_excited
;
124
126
EXTERN
multi_arr<realnum,2>
H2_X_coll_rate
;
127
129
EXTERN
multi_arr<realnum,2>
H2_X_colden_LTE
;
130
132
EXTERN
long
int
nLevels_per_elec
[
N_H2_ELEC
];
133
135
EXTERN
double
pops_per_elec
[
N_H2_ELEC
];
136
138
EXTERN
multi_arr<double,3>
energy_wn
;
139
142
EXTERN
multi_arr<realnum,6>
CollRateFit
;
143
145
EXTERN
multi_arr<realnum,3>
H2_dissprob
;
146
EXTERN
multi_arr<realnum,3>
H2_disske
;
147
EXTERN
multi_arr<realnum,5>
H2_CollRate
;
148
150
EXTERN
multi_arr<double,3>
H2_old_populations
;
151
EXTERN
multi_arr<double,3>
H2_Boltzmann
;
152
EXTERN
multi_arr<double,3>
H2_populations_LTE
;
154
EXTERN
multi_arr<realnum,3>
H2_stat
;
156
EXTERN
multi_arr<bool,3>
H2_lgOrtho
;
157
158
EXTERN
long
int
nzoneAsEval
,
iterationAsEval
;
159
160
EXTERN
multi_arr<int,2>
H2_ipPhoto
;
161
/*EXTERN realnum **H2_col_rate_in_old;
162
EXTERN realnum **H2_col_rate_out_old;*/
163
EXTERN
multi_arr<double,2>
H2_col_rate_in
;
164
EXTERN
multi_arr<double,2>
H2_col_rate_out
;
165
EXTERN
multi_arr<double,2>
H2_rad_rate_in
;
166
EXTERN
realnum
*
H2_X_source
;
167
EXTERN
realnum
*
H2_X_sink
;
168
171
EXTERN
multi_arr<realnum,3>
H2_X_grain_formation_distribution
;
172
175
EXTERN
multi_arr<realnum,2>
H2_X_formation
;
176
178
EXTERN
multi_arr<realnum,2>
H2_X_Hmin_back
;
179
181
EXTERN
multi_arr<realnum,2>
H2_coll_dissoc_rate_coef
;
182
184
EXTERN
multi_arr<realnum,2>
H2_coll_dissoc_rate_coef_H2
;
185
187
EXTERN
double
H2_den_s
,
H2_den_g
;
188
190
EXTERN
multi_arr<realnum,3>
H2_X_hminus_formation_distribution
;
191
194
EXTERN
realnum
*
H2_energies
;
196
EXTERN
long
int
nH2_energies
;
197
EXTERN
long
int
*
H2_ipX_ener_sort
;
198
EXTERN
long
int
*
ipVib_H2_energy_sort
, *
ipElec_H2_energy_sort
;
199
EXTERN
long
int
*
ipRot_H2_energy_sort
;
200
EXTERN
multi_arr<long int,3>
ipEnergySort
;
201
204
EXTERN
long
int
nXLevelsMatrix
;
205
207
EXTERN
multi_arr<realnum,6>
H2_SaveLine
;
208
211
EXTERN
multi_arr<bool,6>
lgH2_line_exists
;
212
214
EXTERN
long
int
nH2_pops
;
215
EXTERN
long
int
nH2_zone
;
216
218
EXTERN
long
int
nzone_nlevel_set
;
219
223
EXTERN
long
int
nCallH2_this_iteration
;
224
226
extern
int
H2_nRot_add_ortho_para
[
N_H2_ELEC
];
227
228
extern
double
H2_DissocEnergies
[
N_H2_ELEC
];
229
231
extern
realnum
H2_te_hminus
[
nTE_HMINUS
];
232
233
typedef
multi_arr<transition,6>::iterator
mt6i
;
234
typedef
multi_arr<transition,6>::const_iterator
mt6ci
;
235
236
#endif
/* _H2_PRIV_H_ */
Generated for cloudy by
1.8.1.2