Cloudy
Spectral Synthesis Code for Astrophysics
Loading...
Searching...
No Matches
yield.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 YIELD_H_
5#define YIELD_H_
6
7/* yield.h */
8
10#define MEWE_FLUOR 12000
11
12class t_yield : public Singleton<t_yield>
13{
14 friend class Singleton<t_yield>;
15protected:
16 t_yield();
17private:
26 long int n_elec_eject[LIMELM][LIMELM][7];
27
39
41 long int nfl_lines;
42
45public:
46 void init_yield();
47
48 realnum elec_eject_frac( long n, long i, long ns, long ne ) const
49 {
50 if( lgKillAuger )
51 return ( ne == 0 ) ? 1.f : 0.f;
52 else
53 return frac_elec_eject[n][i][ns][ne];
54 }
55 long nelec_eject( long n, long i, long ns ) const
56 {
57 return lgKillAuger ? 1 : n_elec_eject[n][i][ns];
58 }
59 int nelem( long n ) const { return nfl_nelem[n]; }
60 int ion( long n ) const { return nfl_ion[n]; }
61 int nshell( long n ) const { return nfl_nshell[n]; }
62 int ion_emit( long n ) const { return nfl_ion_emit[n]; }
63 realnum energy( long n ) const { return fl_energy[n]; }
64
65 realnum yield( long n ) const
66 {
67 if( lgKillAuger )
68 return 0.;
69 else
70 return fl_yield[n];
71 }
72
73 void set_ipoint( long n, long val ) { nfl_ipoint[n] = val; }
74 int ipoint( long n ) const { return nfl_ipoint[n]; }
75
76 int nlines() const { return nfl_lines; }
77
78 void kill_yield() { lgKillAuger = true; }
79 void reset_yield() { lgKillAuger = false; }
80};
81
82#endif /* YIELD_H_ */
const int LIMELM
Definition cddefines.h:318
float realnum
Definition cddefines.h:127
Definition cddefines.h:214
realnum frac_elec_eject[LIMELM][LIMELM][7][10]
Definition yield.h:25
long int n_elec_eject[LIMELM][LIMELM][7]
Definition yield.h:26
void init_yield()
Definition atmdat_readin.cpp:886
int nfl_ion_emit[MEWE_FLUOR]
Definition yield.h:33
void set_ipoint(long n, long val)
Definition yield.h:73
realnum yield(long n) const
Definition yield.h:65
int ion_emit(long n) const
Definition yield.h:62
int nfl_nshell[MEWE_FLUOR]
Definition yield.h:32
long nelec_eject(long n, long i, long ns) const
Definition yield.h:55
realnum energy(long n) const
Definition yield.h:63
t_yield()
Definition atmdat_readin.cpp:863
int nfl_ion[MEWE_FLUOR]
Definition yield.h:31
int nfl_nLine[MEWE_FLUOR]
Definition yield.h:34
realnum fl_yield[MEWE_FLUOR]
Definition yield.h:37
void reset_yield()
Definition yield.h:79
long int nfl_lines
Definition yield.h:41
int nlines() const
Definition yield.h:76
realnum elec_eject_frac(long n, long i, long ns, long ne) const
Definition yield.h:48
realnum fl_energy[MEWE_FLUOR]
Definition yield.h:35
int nfl_nelem[MEWE_FLUOR]
Definition yield.h:30
void kill_yield()
Definition yield.h:78
int nshell(long n) const
Definition yield.h:61
int nelem(long n) const
Definition yield.h:59
bool lgKillAuger
Definition yield.h:44
int ipoint(long n) const
Definition yield.h:74
long int nfl_ipoint[MEWE_FLUOR]
Definition yield.h:38
int ion(long n) const
Definition yield.h:60
#define MEWE_FLUOR
Definition yield.h:10