cloudy  trunk
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
emission.cpp
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 #include "cddefines.h"
5 #include "emission.h"
6 #include "opacity.h"
7 
8 /*EmLineJunk set all elements of transition struc to dangerous values */
9 /*EmLineZero set all elements of transition struc to zero */
10 
11 /*EmLineJunk set all elements of transition struc to dangerous values */
13 {
14 
15  DEBUG_ENTRY( "EmLineJunk()" );
16 
17  /* optical depth in continuum to ill face */
18  t.TauCon() = -FLT_MAX;
19 
20  /* inward and total line optical depths */
21  t.TauIn() = -FLT_MAX;
22  t.TauInSpecific() = -FLT_MAX;
23  t.TauTot() = -FLT_MAX;
24 
25  /* type of redistribution function, */
26  t.iRedisFun() = INT_MIN;
27 
28  /* array offset for line within fine opacity */
29  t.ipFine() = -10000;
30 
31  /* inward fraction */
32  t.FracInwd() = -FLT_MAX;
33 
34  /* continuum pumping rate */
35  t.pump() = -FLT_MAX;
36 
37  /* line intensity */
38  t.xIntensity() = -FLT_MAX;
39  t.xObsIntensity() = -FLT_MAX;
40 
41  /* gf value */
42  t.gf() = -FLT_MAX;
43 
44  /* escape and destruction probs */
45  t.Pesc() = -FLT_MAX;
46  t.Pdest() = -FLT_MAX;
47  t.Pelec_esc() = -FLT_MAX;
48 
49  /* damping constant */
50  t.damp() = -FLT_MAX;
51 
52  /* ratio of collisional to radiative excitation*/
53  t.ColOvTot() = -FLT_MAX;
54 
55  /* auto-ionization fraction */
56  t.AutoIonizFrac() = -FLT_MAX;
57 
58  /* line opacity */
59  t.opacity() = -FLT_MAX;
60  t.mult_opac() = -FLT_MAX;
61 
62  t.PopOpc() = -FLT_MAX;
63 
64  /* transition prob, Einstein A upper to lower */
65  t.Aul() = -FLT_MAX;
66 
67  /* ots rate */
68  t.ots() = -FLT_MAX;
69  return;
70 }
71 
72 /*TauZero set initial values of inward, outward, and local-to-continuum-source optical depths */
74 {
75  DEBUG_ENTRY( "TauZero()" );
76 
77  /* total optical depth in all overlapping lines to illuminated face,
78  * used for pumping */
79  t.TauCon() = opac.taumin;
80 
81  /* inward and total line optical depths */
82  /* >>chng 03 feb 14, from 0 to opac.taumin */
83  t.TauIn() = opac.taumin;
85 
86  /* total optical depths */
87  t.TauTot() = 1e20f;
88 
89  return;
90 }
91 
92 /*EmLineZero zeros out the emission line structure */
94 {
95  DEBUG_ENTRY( "EmLineZero()" );
96 
97  /* inward fraction */
98  /* >>chng 03 feb 14, from 0 to 1 */
99  t.FracInwd() = 1.;
100 
101  /* continuum pumping rate */
102  t.pump() = 0.;
103 
104  /* line intensity */
105  t.xIntensity() = 0.;
106  t.xObsIntensity() = 0.;
107 
108  /* escape and destruction probs */
109  /* >>chng 03 feb 14, change from 0 to 1 */
110  t.Pesc() = 1.;
111  t.Pdest() = 0.;
112  t.Pelec_esc() = 0.;
113 
114  /* ratio of collisional to radiative excitation*/
115  t.ColOvTot() = 1.;
116 
117  /* pop that enters net opacity */
118  t.PopOpc() = 0.;
119  t.mult_opac() = 0.;
120 
121  /* ots rate */
122  t.ots() = 0.;
123  return;
124 }
long int & ipFine() const
Definition: emission.h:448
realnum & TauInSpecific() const
Definition: emission.h:468
double & ots() const
Definition: emission.h:678
int & iRedisFun() const
Definition: emission.h:438
realnum & opacity() const
Definition: emission.h:638
realnum & Pelec_esc() const
Definition: emission.h:578
t_opac opac
Definition: opacity.cpp:5
realnum & TauTot() const
Definition: emission.h:478
realnum & gf() const
Definition: emission.h:558
double & xIntensity() const
Definition: emission.h:528
void EmLineJunk(EmissionList::reference t)
Definition: emission.cpp:12
realnum & Pesc() const
Definition: emission.h:568
realnum & Pdest() const
Definition: emission.h:588
void EmLineZero(EmissionList::reference t)
Definition: emission.cpp:93
realnum & TauCon() const
Definition: emission.h:498
double & mult_opac() const
Definition: emission.h:648
#define DEBUG_ENTRY(funcname)
Definition: cddefines.h:729
double & PopOpc() const
Definition: emission.h:658
void TauZero(EmissionList::reference t)
Definition: emission.cpp:73
realnum & damp() const
Definition: emission.h:608
double & ColOvTot() const
Definition: emission.h:618
double & xObsIntensity() const
Definition: emission.h:533
realnum & AutoIonizFrac() const
Definition: emission.h:628
realnum & FracInwd() const
Definition: emission.h:508
realnum & Aul() const
Definition: emission.h:668
realnum & TauIn() const
Definition: emission.h:458
realnum taumin
Definition: opacity.h:166
double & pump() const
Definition: emission.h:518