cloudy trunk
Loading...
Searching...
No Matches
atoms.h
Go to the documentation of this file.
1/* This file is part of Cloudy and is copyright (C)1978-2013 by Gary J. Ferland and
2 * others. For conditions of distribution and use see copyright notice in license.txt */
3
4#ifndef ATOMS_H_
5#define ATOMS_H_
6
15void AtomSeqBeryllium(double cs12,
16 double cs13,
17 double cs23,
18 const TransitionProxy & t,
19 double a30);
20
37void AtomSeqBoron(
38 const TransitionProxy & t21,
39 const TransitionProxy & t31,
40 const TransitionProxy & t41,
41 const TransitionProxy & t32,
42 const TransitionProxy & t42,
43 const TransitionProxy & t52,
44 double cs51,
45 double cs43,
46 double cs53,
47 double cd54,
48 double pump_rate ,
49 const char *chLabel
50);
51
55void atom_level2(const TransitionProxy & t );
56
63void atom_level3(const TransitionProxy & t10,
64 const TransitionProxy & t21,
65 const TransitionProxy & t20);
66
76double atom_pop2(double omega,
77 double g1,
78 double g2,
79 double a21,
80 double bltz,
81 double abund);
82
102double atom_pop3(
103 double g1, double g2, double g3,
104 double o12, double o13, double o23,
105 double a21, double a31, double a32,
106 double Tex12, double Tex23,
107 realnum *pop2,
108 double abund,
109 double gam2,
110 double r12,
111 double r13 );
112
146void atom_pop5(const double g[],
147 const double ex[],
148 double cs12,
149 double cs13,
150 double cs14,
151 double cs15,
152 double cs23,
153 double cs24,
154 double cs25,
155 double cs34,
156 double cs35,
157 double cs45,
158 double a21,
159 double a31,
160 double a41,
161 double a51,
162 double a32,
163 double a42,
164 double a52,
165 double a43,
166 double a53,
167 double a54,
168 double p[],
170 double *Cooling,
171 double *CoolingDeriv,
172 double pump12,
173 double pump13,
174 double pump14,
175 double pump15
176 );
177
204void atom_levelN(
205 long int nlev,
206 realnum abund,
207 const double g[],
208 const double ex[],
209 char chExUnits,
210 double pops[],
211 double depart[],
212 double ***AulEscp,
213 double ***col_str,
214 double ***AulDest,
215 double ***AulPump,
216 double ***CollRate,
217 const double create[],
218 const double destroy[],
219 bool lgCollRateDone,
220 double *cooltl,
221 double *coolder,
222 const char *chLabel,
223 int *nNegPop,
224 bool *lgZeroPop,
225 bool lgDeBug,
226 bool lgLTE=false,
227 multi_arr<double,2> *Cool=NULL,
228 multi_arr<double,2> *dCooldT=NULL);
229
233void atom_oi_calc(double *coloi);
234
236const int N_OI_LEVELS = 6;
237const long LIMLEVELN = 20L;
238
239struct t_atoms {
240
243
245 double c12, c13;
246
249 long int ipoiex[5];
250
252 long int nNegOI;
253
256
258
263
272
273 };
274extern t_atoms atoms;
275
276#endif /* ATOMS_H_ */
t_abund abund
Definition abund.cpp:5
t_atoms atoms
Definition atoms.cpp:5
void atom_pop5(const double g[], const double ex[], double cs12, double cs13, double cs14, double cs15, double cs23, double cs24, double cs25, double cs34, double cs35, double cs45, double a21, double a31, double a41, double a51, double a32, double a42, double a52, double a43, double a53, double a54, double p[], realnum abund, double *Cooling, double *CoolingDeriv, double pump12, double pump13, double pump14, double pump15)
Definition atom_pop5.cpp:13
void AtomSeqBeryllium(double cs12, double cs13, double cs23, const TransitionProxy &t, double a30)
void atom_level2(const TransitionProxy &t)
const int N_OI_LEVELS
Definition atoms.h:236
double atom_pop2(double omega, double g1, double g2, double a21, double bltz, double abund)
Definition atom_pop2.cpp:9
double atom_pop3(double g1, double g2, double g3, double o12, double o13, double o23, double a21, double a31, double a32, double Tex12, double Tex23, realnum *pop2, double abund, double gam2, double r12, double r13)
Definition atom_pop3.cpp:10
void AtomSeqBoron(const TransitionProxy &t21, const TransitionProxy &t31, const TransitionProxy &t41, const TransitionProxy &t32, const TransitionProxy &t42, const TransitionProxy &t52, double cs51, double cs43, double cs53, double cd54, double pump_rate, const char *chLabel)
void atom_oi_calc(double *coloi)
Definition atom_oi.cpp:23
const long LIMLEVELN
Definition atoms.h:237
void atom_level3(const TransitionProxy &t10, const TransitionProxy &t21, const TransitionProxy &t20)
void atom_levelN(long int nlev, realnum abund, const double g[], const double ex[], char chExUnits, double pops[], double depart[], double ***AulEscp, double ***col_str, double ***AulDest, double ***AulPump, double ***CollRate, const double create[], const double destroy[], bool lgCollRateDone, double *cooltl, double *coolder, const char *chLabel, int *nNegPop, bool *lgZeroPop, bool lgDeBug, bool lgLTE=false, multi_arr< double, 2 > *Cool=NULL, multi_arr< double, 2 > *dCooldT=NULL)
float realnum
Definition cddefines.h:103
static double ** AulEscp
Definition species2.cpp:29
static double * ex
Definition species2.cpp:28
static double * pops
Definition species2.cpp:28
static double ** col_str
Definition species2.cpp:29
static double * depart
Definition species2.cpp:28
static double ** AulPump
Definition species2.cpp:29
static double * g
Definition species2.cpp:28
static double ** AulDest
Definition species2.cpp:29
static double ** CollRate
Definition species2.cpp:29
double c12
Definition atoms.h:245
double DepLTELevels[LIMLEVELN+1]
Definition atoms.h:271
realnum pmpo51
Definition atoms.h:257
realnum p2nit
Definition atoms.h:242
realnum xMg2Max
Definition atoms.h:260
realnum d5200r
Definition atoms.h:242
realnum popmg2
Definition atoms.h:262
double c13
Definition atoms.h:245
long int ipoiex[5]
Definition atoms.h:249
long int nNegOI
Definition atoms.h:252
double PopLevels[LIMLEVELN+1]
Definition atoms.h:270
double popoi[N_OI_LEVELS]
Definition atoms.h:255
realnum pmpo15
Definition atoms.h:257