cloudy  trunk
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
opacity.h
Go to the documentation of this file.
1 /* This file is part of Cloudy and is copyright (C)1978-2017 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 
10 #include "module.h"
11 
13 extern bool lgOpacMalloced;
14 
16 void OpacityCreateAll(void);
17 
26  long int ipOpac,
27  long int ipLowLim,
28  long int ipUpLim,
29  realnum abundance,
30  char chStat );
31 
33 void OpacityAddTotal(void);
34 
40  long int ipZ);
41 
44 void OpacityZero(void);
45 
47 void OpacityZeroOld(void);
48 
58  long int ipOpac,
59  long int low,
60  long int ihi,
61  double a,
62  double b,
63  char chStat );
64 
65 /* limit to number of opacity cells available in the opacity stack
66 #define NOPSV 1300000L*/
67 
68 /*lowest level where hydrogenic nu^-3 photo cross sect used*/
69 /*#define NHPLPHOT 400*/
70 
71 /* limit to number of cells in frequency array */
72 /* >>chng 00 oct 13, increase from 2000 to 2200 due to increase in FIR resolution */
73 /* >>chng 01 aug 19, increase from 2000 to 4000 due to increase in mid-range resolution */
74 /* >>chng 01 sep 24, get rid of NC ELL from code, totally MALLOC */
75 /*#define NC ELL 4000L*/
76 
77 struct t_opac : public module {
78 
79  const char *chName() const
80  {
81  return "opac";
82  }
83  void zero();
84  void comment(t_warnings&) {}
92 
96 
100  *TauScatFace;
101 
103  double *opacity_abs;
104 
106  double *opacity_sct;
107 
109  double *OldOpacSave;
110 
112  double *albedo;
113 
119 
122  double *OpacStatic;
123 
127 
130 
132  double *ExpZone;
133 
142 
145 
149 
153 
160 
163  double *OpacStack;
164 
167 
171 
173  bool lgCaseB;
174 
178 
182 
185 
188  thmin;
189 
191  bool lgOpacNeg;
192 
195  bool lgScatON;
196 
199 
205 
209 
213  long int nOpacTot;
214 
222  long int ipRayScat,
223 
225  iopcom,
226 
228  ippr,
229  ioppr,
230 
232  ipBrems,
233 
235  iphmra,
236 
238  iphmop,
239 
241  ih2pnt[2],
242  ih2pof,
243  /* excited state versions of above H2+ variables */
244  ih2pnt_ex[2],
245  ih2pof_ex,
246 
248  iophe1[9],
249 
251  ioptri,
252 
284  ipElement[LIMELM][LIMELM][7][3],
285 
287  in1[3],
288 
290  ipo3exc[3],
291  ipo3exc3[3],
292  ipo1exc[3];
293 
295  double o3exc;
296  double o3exc3;
297 
299  long iopo2d,
300 
302  ipmgex,
303  ipOpMgEx,
304 
306  ica2ex[2],
307  ica2op;
308 
310  long int ipCKshell;
311 
314 
317 
318  };
319 extern t_opac opac;
320 
321 
322 
323 #endif /* OPACITY_H_ */
void OpacityAdd1Element(long int ipZ)
long iopo2d
Definition: opacity.h:299
realnum otsmin
Definition: opacity.h:313
double * opacity_abs_savzon1
Definition: opacity.h:116
long int ipElement[LIMELM][LIMELM][7][3]
Definition: opacity.h:222
void comment(t_warnings &)
Definition: opacity.h:84
long int ipRayScat
Definition: opacity.h:222
bool lgCaseB_no_photo
Definition: opacity.h:181
double * OpacStack
Definition: opacity.h:163
double * opacity_abs
Definition: opacity.h:103
double * albedo
Definition: opacity.h:112
bool lgOpacMalloced
Definition: cdinit.cpp:40
double o3exc
Definition: opacity.h:295
t_opac opac
Definition: opacity.cpp:5
double * OpacStatic
Definition: opacity.h:122
void OpacityCreateAll(void)
long int ipo1exc[3]
Definition: opacity.h:222
long ipmgex
Definition: opacity.h:299
bool lgUseFileOpac
Definition: opacity.h:208
long int ih2pof
Definition: opacity.h:222
bool lgScatON
Definition: opacity.h:195
realnum stimax[2]
Definition: opacity.h:316
long int ipo3exc[3]
Definition: opacity.h:222
double * opacity_sct
Definition: opacity.h:106
realnum * E2TauAbsTotal
Definition: opacity.h:138
realnum * TauScatFace
Definition: opacity.h:99
void OpacityAdd1Subshell(long int ipOpac, long int ipLowLim, long int ipUpLim, realnum abundance, char chStat)
long int ipBrems
Definition: opacity.h:222
double * eeFreeFreeOpacity
Definition: opacity.h:126
bool lgNegOpacIO
Definition: opacity.h:198
double * ExpZone
Definition: opacity.h:132
double o3exc3
Definition: opacity.h:296
long int ih2pof_ex
Definition: opacity.h:222
long int iphmra
Definition: opacity.h:222
bool lgOpacNeg
Definition: opacity.h:191
bool lgCaseB_no_pdest
Definition: opacity.h:184
void zero()
Definition: opacity.cpp:7
double * OldOpacSave
Definition: opacity.h:109
realnum ** TauScatGeo
Definition: opacity.h:91
void OpacityZeroOld(void)
long int ipCKshell
Definition: opacity.h:310
realnum * E2TauAbsOut
Definition: opacity.h:139
long int iophe1[9]
Definition: opacity.h:222
void OpacityAddTotal(void)
bool lgCaseB
Definition: opacity.h:173
float realnum
Definition: cddefines.h:124
realnum thmin
Definition: opacity.h:187
long int iopcom
Definition: opacity.h:222
long ipOpMgEx
Definition: opacity.h:299
realnum telec
Definition: opacity.h:187
bool lgCompileOpac
Definition: opacity.h:204
realnum * TauAbsFace
Definition: opacity.h:99
double eeFreeFreeTemp
Definition: opacity.h:129
const char * chName() const
Definition: opacity.h:79
long int iphmop
Definition: opacity.h:222
long int ioppr
Definition: opacity.h:222
realnum * TauAbsTotal
Definition: opacity.h:141
realnum tlamin
Definition: opacity.h:170
bool lgOpacStatic
Definition: opacity.h:152
realnum ** TauTotalGeo
Definition: opacity.h:95
long int nOpacTot
Definition: opacity.h:213
long int ipo3exc3[3]
Definition: opacity.h:222
double * opacity_sct_savzon1
Definition: opacity.h:118
long int ippr
Definition: opacity.h:222
const int LIMELM
Definition: cddefines.h:307
realnum * E2TauAbsFace
Definition: opacity.h:136
double * FreeFreeOpacity
Definition: opacity.h:125
long int in1[3]
Definition: opacity.h:222
bool lgRedoStatic
Definition: opacity.h:159
long int ioptri
Definition: opacity.h:222
realnum ** TauAbsGeo
Definition: opacity.h:90
realnum * ExpmTau
Definition: opacity.h:144
Definition: opacity.h:77
void OpacityAdd1SubshellInduc(long int ipOpac, long int low, long int ihi, double a, double b, char chStat)
long ica2ex[2]
Definition: opacity.h:299
long int ih2pnt[2]
Definition: opacity.h:222
realnum * tmn
Definition: opacity.h:148
Definition: module.h:26
long int ih2pnt_ex[2]
Definition: opacity.h:222
bool lgCaseB_HummerStorey
Definition: opacity.h:177
realnum taumin
Definition: opacity.h:166
long ica2op
Definition: opacity.h:299
void OpacityZero(void)
Definition: opacity_zero.cpp:8