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
atmdat.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 _ATMDAT_H_
5
#define _ATMDAT_H_
6
7
14
double
atmdat_2phot_shapefunction
(
double
EbyE2nu,
long
ipISO,
long
nelem );
15
21
void
atmdat_2phot_rate
(
22
long
ipZ ,
23
long
ipISO );
24
28
void
atmdat_readin
(
void
);
29
34
void
atmdat_Chianti_readin
(
long
intNS );
35
40
void
atmdat_lamda_readin
(
long
intNS );
41
42
53
void
atmdat_outer_shell
(
54
long
int
iz,
55
long
int
in,
56
long
int
*imax,
57
long
int
*ig0,
58
long
int
*ig1);
59
65
void
ChargTranEval
(
double
*O_HIonRate );
66
71
double
ChargTranSumHeat
(
void
);
72
73
/*ChargTranPun punch charge transfer rate coefficients */
79
void
ChargTranPun
( FILE* ipPnunit ,
char
* chPunch );
80
86
double
atmdat_dielrec_fe
(
long
int
ion,
double
t);
87
90
void
atmdat_H_phot_cs
(
void
);
91
93
void
atmdat_3body
(
void
);
94
105
double
atmdat_HS_caseB
(
106
long
int
iHi,
long
int
iLo,
long
int
iZ,
double
TempIn,
107
double
DenIn,
108
char
chCase
109
);
110
112
void
atmdat_DielSupres
(
void
);
113
114
/* these are the vectors that store the original Hummer and Storey case B
115
* line data for H and He - the declaration for the interpolator follows */
116
#define NHSDIM 15
117
#define NLINEHS 300
118
#define HS_NZ 8
119
#define NHCSTE 8
121
EXTERN struct t_atmdat {
122
142
double
HCharExcIonOf[
LIMELM
][
LIMELM
+1],
//(cm3 s-1)
143
HCharExcRecTo[
LIMELM
][
LIMELM
+1],
//(cm3 s-1)
144
HCharHeatMax,
145
HCharCoolMax,
146
HCharHeatOn
;
147
148
/* rate coefficient (cm3 s-1) for N+(3P) + H+ -> N(2D) + H+ charge transfer*/
149
double
HCharExcRecTo_N0_2D
;
150
152
double
HCharExcIonTotal,
153
HCharExcRecTotal
;
154
156
double
HeCharExcIonTotal,
157
HeCharExcRecTotal
;
158
160
double
HIonFrac
;
161
163
double
HIonFracMax
;
164
171
double
HeCharExcIonOf[
LIMELM
][
LIMELM
],
172
HeCharExcRecTo[
LIMELM
][
LIMELM
];
173
176
double
HCTAlex
;
177
180
bool
lgCTOn
;
181
184
double
Density[2][
HS_NZ
][
NHSDIM
],
185
ElecTemp[2][
HS_NZ
][
NHSDIM
],
187
Emiss[2][
HS_NZ
][
NHSDIM
][
NHSDIM
][
NLINEHS
];
188
191
long
int
nDensity[2][
HS_NZ
] , ntemp[2][
HS_NZ
] , ncut[2][
HS_NZ
];
192
196
bool
lgHCaseBOK[2][
HS_NZ
];
197
199
long
int
nsbig
;
200
203
bool
lgCollIonOn
;
204
206
realnum
WaveLengthCaseB[8][25][24];
207
209
realnum
*
CaseBWlHeI
;
211
long
int
nCaseBHeI
;
212
213
}
atmdat
;
214
215
typedef
enum
{
PHFIT_UNDEF
,
PHFIT95
,
PHFIT96
}
phfit_version
;
216
217
class
t_ADfA
:
public
Singleton
<t_ADfA>
218
{
219
friend
class
Singleton
<
t_ADfA
>;
220
protected
:
221
t_ADfA
();
222
private
:
223
phfit_version
version
;
224
/* phfit.dat */
225
long
int
L
[7];
226
long
int
NINN
[30];
227
long
int
NTOT
[30];
228
realnum
PH1
[7][30][30][6];
229
realnum
PH2
[30][30][7];
230
/* hpfit.dat */
231
realnum
PHH
[
NHYDRO_MAX_LEVEL
][5];
232
/* rec_lines.dat */
233
realnum
P
[8][110];
234
realnum
ST
[9][405];
235
/* rad_rec.dat */
236
realnum
rrec
[30][30][2];
237
realnum
rnew
[30][30][4];
238
realnum
fe
[13][3];
239
/* h_rad_rec */
240
realnum
HRF
[
NHYDRO_MAX_LEVEL
][9];
241
/* h_phot_cs.dat */
244
realnum
STH
[
NHYDRO_MAX_LEVEL
];
245
/* coll_ion.dat */
246
double
CF
[30][30][5];
247
/* h_coll_str.dat */
250
/* >>refer H1 cs Anderson, H., Ballance, C.P., Badnell, N.R., & Summers, H.P.,
251
* >>refercon 2000, J Phys B, 33, 1255; erratum, 2002 */
252
double
HCS
[14][10][8];
253
public
:
257
void
set_version
(
phfit_version
val) {
version
= val; }
258
260
phfit_version
get_version
()
const
{
return
version
; }
261
268
realnum
ph1
(
int
i,
int
j,
int
k,
int
l)
const
{
return
PH1
[i][j][k][l]; }
269
274
realnum
sth
(
int
i)
const
{
return
STH
[i]; }
275
284
double
phfit
(
long
int
nz,
long
int
ne,
long
int
is,
double
e);
285
292
double
hpfit
(
long
int
iz,
long
int
n,
double
e);
293
300
double
hpfit_rel
(
long
int
iz,
long
int
n,
double
e);
301
307
void
rec_lines
(
double
t,
realnum
r[][471]);
308
315
double
rad_rec
(
long
int
iz,
long
int
in,
double
t);
316
323
double
H_rad_rec
(
long
int
iz,
long
int
n,
double
t);
324
331
double
coll_ion
(
long
int
iz,
long
int
in,
double
t);
332
338
realnum
h_coll_str
(
long
ipLo,
long
ipHi,
long
ipTe );
339
};
340
341
#endif
/* _ATMDAT_H_ */
Generated for cloudy by
1.8.4