Cloudy
Spectral Synthesis Code for Astrophysics
Loading...
Searching...
No Matches
opacity.h
Go to the documentation of this file.
1/* This file is part of Cloudy and is copyright (C)1978-2025 by Gary J. Ferland and
2 * others. For conditions of distribution and use see copyright notice in license.txt */
3
4#ifndef OPACITY_H_
5#define OPACITY_H_
6
9
10#include "module.h"
11#include "vectorize.h"
12
14extern bool lgOpacAllocated;
15
17void OpacityCreateAll(void);
18
27 long int ipOpac,
28 long int ipLowLim,
29 long int ipUpLim,
30 realnum abundance,
31 char chStat );
32
34void OpacityAddTotal(void);
35
41 long int ipZ);
42
45void OpacityZero(void);
46
48void OpacityZeroOld(void);
49
59 long int ipOpac,
60 long int low,
61 long int ihi,
62 double a,
63 double b,
64 char chStat );
65
66struct t_opac : public module {
67
68 const char *chName() const
69 {
70 return "opac";
71 }
72 void zero();
76
79 vector<realnum> TauAbsGeo[2];
80 vector<realnum> TauScatGeo[2];
81
84 vector<realnum> TauTotalGeo[2];
85
88 vector<realnum> TauAbsFace, TauScatFace;
89
91 vector<double> opacity_abs;
92
94 vector<double> opacity_sct;
95
97 vector<double> OldOpacSave;
98
100 vector<double> albedo;
101
104 vector<double> opacity_abs_savzon1;
106 vector<double> opacity_sct_savzon1;
107
110 vector<double> OpacStatic;
111
113 vector<double> FreeFreeOpacity;
114 vector<double> eeFreeFreeOpacity;
115
118
121
124 vector<realnum> E2TauAbsFace;
126 vector<realnum> E2TauAbsTotal;
127 vector<realnum> E2TauAbsOut;
129 vector<realnum> TauAbsTotal;
130
132 vector<realnum> ExpmTau;
133
136 vector<realnum> tmn;
137
141
148
151 vector<double> OpacStack;
152
155
159
162
166
170
173
177
180
184
187
193
197
201 long int nOpacTot;
202
208
210 long int ipRayScat,
211
214
218
221
224
227
231 /* excited state versions of above H2+ variables */
234
237
240
273
275 in1[3],
276
281
283 double o3exc;
284 double o3exc3;
285
287 long iopo2d,
288
292
296
298 long int ipCKshell;
299
302
305
306 };
307extern t_opac opac;
308
309
310
311#endif /* OPACITY_H_ */
const int LIMELM
Definition cddefines.h:318
float realnum
Definition cddefines.h:127
bool lgOpacAllocated
Definition cdinit.cpp:42
module()
Definition module.h:29
Definition warnings.h:11
t_opac opac
Definition opacity.cpp:5
void OpacityZero(void)
Definition opacity_zero.cpp:8
void OpacityAddTotal(void)
Definition opacity_addtotal.cpp:27
void OpacityAdd1SubshellInduc(long int ipOpac, long int low, long int ihi, double a, double b, char chStat)
Definition opacity_add1subshell.cpp:65
void OpacityAdd1Element(long int ipZ)
Definition opacity_add1element.cpp:12
void OpacityAdd1Subshell(long int ipOpac, long int ipLowLim, long int ipUpLim, realnum abundance, char chStat)
Definition opacity_add1subshell.cpp:10
void OpacityCreateAll(void)
Definition opacity_createall.cpp:114
void OpacityZeroOld(void)
Definition opacity_zero.cpp:37
Definition opacity.h:66
long int ipRayScat
Definition opacity.h:210
long int ioppr
Definition opacity.h:217
long int ioptri
Definition opacity.h:239
double eeFreeFreeTemp
Definition opacity.h:117
vector< realnum > E2TauAbsTotal
Definition opacity.h:126
long int ipo3exc3[3]
Definition opacity.h:279
long int ipElement[LIMELM][LIMELM][7][3]
Definition opacity.h:272
vector< realnum > tmn
Definition opacity.h:136
bool lgCaseB_HummerStorey
Definition opacity.h:165
bool lgCompileOpac
Definition opacity.h:192
const char * chName() const
Definition opacity.h:68
long ipmgex
Definition opacity.h:290
long int iophe1
Definition opacity.h:236
long iopo2d
Definition opacity.h:287
vector< realnum > ExpmTau
Definition opacity.h:132
vector< double > opacity_sct_savzon1
Definition opacity.h:106
vector_avx< double > ExpZone
Definition opacity.h:120
vector< realnum > TauAbsGeo[2]
Definition opacity.h:79
void zero()
Definition opacity.cpp:7
bool lgCaseB_no_photo
Definition opacity.h:169
long ica2op
Definition opacity.h:295
vector< realnum > E2TauAbsFace
Definition opacity.h:124
bool lgOpacNeg
Definition opacity.h:179
bool lgUseFileOpac
Definition opacity.h:196
vector< realnum > TauAbsTotal
Definition opacity.h:129
long int ipCKshell
Definition opacity.h:298
long int ipo3exc[3]
Definition opacity.h:278
bool lgOpacStatic
Definition opacity.h:140
realnum otsmin
Definition opacity.h:301
vector< realnum > E2TauAbsOut
Definition opacity.h:127
vector< realnum > TauTotalGeo[2]
Definition opacity.h:84
vector< realnum > TauScatFace
Definition opacity.h:88
vector< realnum > TauScatGeo[2]
Definition opacity.h:80
double o3exc
Definition opacity.h:283
vector< double > OpacStack
Definition opacity.h:151
long int ipo1exc[3]
Definition opacity.h:280
realnum tlamin
Definition opacity.h:158
long int ih2pnt_ex[2]
Definition opacity.h:232
vector< double > albedo
Definition opacity.h:100
vector< realnum > TauAbsFace
Definition opacity.h:88
bool lgScatON
Definition opacity.h:183
vector< double > opacity_abs
Definition opacity.h:91
long int ih2pof_ex
Definition opacity.h:233
long int iphmop
Definition opacity.h:226
realnum stimax[2]
Definition opacity.h:304
long int iopcom
Definition opacity.h:213
long int ih2pof
Definition opacity.h:230
realnum telec
Definition opacity.h:175
long ipOpMgEx
Definition opacity.h:291
bool lgRedoStatic
Definition opacity.h:147
vector< double > opacity_abs_savzon1
Definition opacity.h:104
long int ih2pnt[2]
Definition opacity.h:229
long ica2ex[2]
Definition opacity.h:294
double o3exc3
Definition opacity.h:284
vector< double > opacity_sct
Definition opacity.h:94
bool lgCaseB
Definition opacity.h:161
vector< double > OldOpacSave
Definition opacity.h:97
realnum thmin
Definition opacity.h:176
bool lgCaseB_no_pdest
Definition opacity.h:172
bool lgNegOpacIO
Definition opacity.h:186
long int ipBrems
Definition opacity.h:220
void comment(t_warnings &)
Definition opacity.h:73
long int ippr
Definition opacity.h:216
realnum taumin
Definition opacity.h:154
long int in1[3]
Definition opacity.h:275
long int nOpacTot
Definition opacity.h:201
vector< double > eeFreeFreeOpacity
Definition opacity.h:114
vector< double > OpacStatic
Definition opacity.h:110
long int iphmra
Definition opacity.h:223
vector< double > FreeFreeOpacity
Definition opacity.h:113
typename std::vector< T, allocator_avx< T > > vector_avx
Definition vectorize.h:331