Cloudy
Spectral Synthesis Code for Astrophysics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
lines_service.h
Go to the documentation of this file.
1 /* This file is part of Cloudy and is copyright (C)1978-2023 by Gary J. Ferland and
2  * others. For conditions of distribution and use see copyright notice in license.txt */
3 
4 #ifndef LINES_SERVICE_H_
5 #define LINES_SERVICE_H_
6 
7 class LinSv;
8 
10  double xInten,
12  const char *chLab,
13  char chInfo ,
14  const char *chComment );
15 
16 /*outline_base - adds line photons to reflin and outlin */
17 void outline_base(double dampXvel, double damp, bool lgTransStackLine, long int ip, double phots, realnum inwd,
18  double nonScatteredFraction);
19 
20 /*outline_base_bin - adds line photons to bins of reflin and outlin */
21 void outline_base_bin(bool lgTransStackLine, long int ip, double phots, realnum inwd,
22  double nonScatteredFraction);
23 
33 void lindst(double xInten,
35  const char *chLab,
36  long int ipnt,
37  char chInfo,
38  bool lgOutToo,
39  const char *chComment);
40 
52 void lindst(double dampXvel,
53  double damp,
54  double xInten,
56  const char *chLab,
57  long int ipnt,
58  char chInfo,
59  bool lgOutToo,
60  const char *chComment);
61 
71 class TransitionProxy;
72 class ExtraInten;
73 void lindst(
74  const TransitionProxy &t,
75  const ExtraInten &extra,
76  const char *chLab,
77  char chInfo,
78  bool lgOutToo,
79  const char *chComment);
80 
86 double emergent_line(
87  /* emissivity [erg cm-3 s-1] in inward direction */
88  double emissivity_in ,
89  /* emissivity [erg cm-3 s-1] in outward direction */
90  double emissivity_out ,
91  /* array index for continuum frequency */
92  long int ipCont );
93 
100 void PntForLine(double wavelength,
101  const char *chLabel,
102  long int *ipnt);
103 
109 double GetGF(double eina,
110  double enercm,
111  double gup);
112 
119 double S2Aul(double S,
120  double EnergyAng,
121  double gup,
122  const string& transType);
123 
129 double eina(double gf,
130  double enercm,
131  double gup);
132 
138 double abscf(double gf,
139  double enercm,
140  double gl);
141 
143 #define LOWDEN_LYMAN 0
144 
150 realnum wlAirVac( double wlAir );
151 
156 double RefIndex(double EnergyWN);
157 
158 
166 realnum WavlenErrorGet( realnum wavelength, long sig_figs );
167 
172 double ConvRate2CS( realnum gHi , realnum rate );
173 
180 double ConvCrossSect2CollStr( double CrsSectCM2, double gLo, double E_ProjectileRyd, double reduced_mass_grams );
181 
188 double totlin(
189  int chInfo);
190 
191 
195 const TransitionProxy FndLineHt(long int *level);
196 
198 void set_xIntensity( const TransitionProxy &t );
199 
204 inline double wn2ang( double fenergyWN )
205 {
206  return safe_div( 1e+8, fenergyWN * RefIndex( fenergyWN ) );
207 }
208 
209 #endif /* LINES_SERVICE_H_ */
double wn2ang(double fenergyWN)
Definition: lines_service.h:204
realnum WavlenErrorGet(realnum wavelength, long sig_figs)
Definition: lines_service.cpp:341
realnum wlAirVac(double wlAir)
Definition: lines_service.cpp:280
LinSv * linadd(double xInten, realnum wavelength, const char *chLab, char chInfo, const char *chComment)
Definition: lines_service.cpp:473
void outline_base(double dampXvel, double damp, bool lgTransStackLine, long int ip, double phots, realnum inwd, double nonScatteredFraction)
Definition: lines_service.cpp:552
double eina(double gf, double enercm, double gup)
Definition: lines_service.cpp:139
double phots(const TransitionProxy &t)
Definition: transition.h:659
string chComment() const
Definition: lines.cpp:310
double emergent_line(double emissivity_in, double emissivity_out, long int ipCont)
Definition: lines_service.cpp:492
double totlin(int chInfo)
Definition: lines_service.cpp:866
float realnum
Definition: cddefines.h:127
double ConvCrossSect2CollStr(double CrsSectCM2, double gLo, double E_ProjectileRyd, double reduced_mass_grams)
Definition: lines_service.cpp:841
sys_float safe_div(sys_float x, sys_float y, sys_float res_0by0)
Definition: cddefines.h:1017
void PntForLine(double wavelength, const char *chLabel, long int *ipnt)
Definition: lines_service.cpp:757
void lindst(double xInten, realnum wavelength, const char *chLab, long int ipnt, char chInfo, bool lgOutToo, const char *chComment)
Definition: lines_service.cpp:683
double ConvRate2CS(realnum gHi, realnum rate)
Definition: lines_service.cpp:822
static vector< realnum > wavelength
Definition: monitor_results.cpp:79
double RefIndex(double EnergyWN)
Definition: lines_service.cpp:312
const TransitionProxy FndLineHt(long int *level)
Definition: lines_service.cpp:905
Definition: transition.h:23
#define S(I_, J_)
Definition: optimize_subplx.cpp:1826
Definition: transition.h:615
void outline_base_bin(bool lgTransStackLine, long int ip, double phots, realnum inwd, double nonScatteredFraction)
Definition: lines_service.cpp:599
void set_xIntensity(const TransitionProxy &t)
Definition: lines_service.cpp:966
Definition: lines.h:172
double abscf(double gf, double enercm, double gl)
Definition: lines_service.cpp:258
double GetGF(double eina, double enercm, double gup)
Definition: lines_service.cpp:156
double S2Aul(double S, double EnergyAng, double gup, const string &transType)
Definition: lines_service.cpp:177