Cloudy
Spectral Synthesis Code for Astrophysics
|
#include <lines.h>
Public Member Functions | |
const char * | chName () const |
void | zero () |
void | comment (t_warnings &) |
long | findline (const LineID &line) |
void | clear () |
void | resize (long nlines) |
void | setSortWL () |
void | init (long index, char chSumTyp, const char *chComment, const char *label, bool lgAdd, realnum wavelength, const TransitionProxy &tr) |
realnum | wavelength (long index) |
void | resetWavelength (long index, realnum wl) |
Public Member Functions inherited from module | |
module () | |
virtual | ~module () |
Public Attributes | |
long int | nsum |
long int | nComment |
long int | ipass |
string | chHoldComments [NHOLDCOMMENTS] |
long int | ipNormWavL |
realnum | WavLNorm |
long int | sig_figs |
int | wl_length |
double | ScaleNormLine |
char | chNormLab [NCHLAB] |
bool | lgNormSet |
realnum | RecCoefCNO [4][NRECCOEFCNO] |
vector< LinSv > | lines |
vector< realnum > | m_wavelength |
vector< size_t > | SortWL |
bool | lgIsoContSubSignif |
Static Public Attributes | |
static const long | sig_figs_max = 6 |
this struc is different from following since they are only pointer here, will be allocated to form a large array after number of lines is counted, but this is the final form
|
inlinevirtual |
Implements module.
|
inline |
References lines, and m_wavelength.
Referenced by LineStackCreate().
|
inlinevirtual |
Implements module.
long t_LineSave::findline | ( | const LineID & | line | ) |
References ASSERT, BIGFLOAT, caps(), cdEXIT, LineID::chLabel, DEBUG_ENTRY, LineID::ELo, EXIT_FAILURE, fp_equal(), fprintf(), LineID::indHi, LineID::indLo, ioQQQ, ipass, lines, NCHLAB, nsum, prt_line_err(), prt_wl(), sig_figs, SortWL, sprt_wl(), TotalInsanity(), trimTrailingWhiteSpace(), LineID::wave, wavelength(), wavelength_compare_realnum(), and WavlenErrorGet().
Referenced by LinSv::addComponent(), cdEmis(), cdLine(), getTransition(), IterStart(), lines_table(), optimize_func(), PrtLineSum(), save_line(), SaveDo(), and SaveSpeciesBands().
|
inline |
References lines, m_wavelength, and wavelength().
Referenced by lincom().
|
inline |
References m_wavelength.
Referenced by LinSv::setBlendWavl().
|
inline |
References lines, and m_wavelength.
Referenced by LineStackCreate().
void t_LineSave::setSortWL | ( | ) |
References DEBUG_ENTRY, nsum, SortWL, and wavelength_compare().
Referenced by lines().
|
inline |
References m_wavelength.
Referenced by LinSv::checkEmergent(), findline(), init(), LinSv::makeBlend(), LinSv::wavelength(), and wavelength_compare_realnum().
|
virtual |
Implements module.
References chNormLab, DEBUG_ENTRY, Hbeta_WavLen, ipNormWavL, lgNormSet, ScaleNormLine, sig_figs, sig_figs_max, and WavLNorm.
string t_LineSave::chHoldComments[NHOLDCOMMENTS] |
holds comment strings associated with various blocks of output lines
Referenced by PrintSpectrum(), prt_LineLabels(), and StuffComment().
char t_LineSave::chNormLab[NCHLAB] |
chNormLab is optional label
Referenced by IterStart(), ParseNorm(), and zero().
long int t_LineSave::ipass |
there are three types of calls to lines() ipass = -1, first call, only count number off lines ipass = 0, second pass, save labels and wavelengths ipass = 1, integrate intensity
Referenced by LinSv::addComponent(), LinSv::addComponentID(), findline(), FindStrongestLineLabels(), getTransition(), diatomics::H2_LinesAdd(), lincom(), lindst(), lindst1(), lines(), lines_continuum(), lines_general(), lines_helium(), lines_hydro(), LineStackCreate(), LinSv::makeBlend(), PntForLine(), PrtLineSum(), PutLine(), LinSv::setBlendWavl(), setup_multiplet(), SpeciesPseudoContAccum(), and StuffComment().
long int t_LineSave::ipNormWavL |
NormWL is array index for emission line on normalize command
Referenced by cdLine_ip(), diatomics::getLine(), diatomics::H2_PunchDo(), IterStart(), optimize_func(), PrintSpectrum(), and zero().
bool t_LineSave::lgIsoContSubSignif |
Referenced by IterStart(), prt_smooth_predictions(), and set_xIntensity().
bool t_LineSave::lgNormSet |
flag saying whether norm has been set
Referenced by IterStart(), ParseNorm(), and zero().
vector<LinSv> t_LineSave::lines |
number of lines allocated in emission line stack must not change between iterations or grid points
Referenced by LinSv::addComponent(), LinSv::addComponentID(), badprt(), cdEmis(), cdEmis_ip(), cdLine_ip(), clear(), debugLine(), LinSv::emslin(), findline(), FindStrongestLineLabels(), LinSv::getComponent(), diatomics::getLine(), getTransition(), diatomics::H2_PunchDo(), init(), iter_end_check(), IterEnd(), IterStart(), lgCheckMonitors(), lincom(), lindst(), lines(), lines_continuum(), lines_hydro(), LineStackCreate(), LinSv::makeBlend(), optimize_func(), PrintSpectrum(), prt_LineLabels(), PrtComment(), PrtFinal(), resize(), save_line(), SaveDo(), SaveLineIntensity(), SaveResults(), SaveSpeciesBands(), LinSv::setBlendWavl(), LinSv::SumLine(), totlin(), and wavelength_compare().
vector<realnum> t_LineSave::m_wavelength |
Referenced by clear(), init(), resetWavelength(), resize(), and wavelength().
long int t_LineSave::nComment |
index to number of comments printed within the block of lines
Referenced by lines(), and StuffComment().
long int t_LineSave::nsum |
number of emission lines in main stack nsum is current index, to last line entered in the array linadd increments nsum before doing anything else
Referenced by badprt(), cdEmis_ip(), cdLine_ip(), debugLine(), findline(), FindStrongestLineLabels(), diatomics::H2_PunchDo(), IterEnd(), IterStart(), lgCheckMonitors(), lincom(), lindst(), lines(), lines_continuum(), lines_helium(), lines_hydro(), LineStackCreate(), LinSv::makeBlend(), PrintSpectrum(), prt_LineLabels(), PrtFinal(), SaveDo(), SaveLineIntensity(), SaveResults(), setSortWL(), and totlin().
realnum t_LineSave::RecCoefCNO[4][NRECCOEFCNO] |
save rec coefficient data for recombination lines of C, N, O
Referenced by GetLineRec(), lines(), and SaveLineData().
double t_LineSave::ScaleNormLine |
ScaleNormLine is the scale factor for its appearance
Referenced by cdLine_ip(), diatomics::getLine(), diatomics::H2_PunchDo(), optimize_func(), ParseNorm(), PrintSpectrum(), and zero().
long int t_LineSave::sig_figs |
number of significant figures for lines this affects all aspects of reading and writing lines
Referenced by debugLine(), findline(), GetOptLineInt(), lgCheckMonitors(), ParsePrint(), ParseTest(), PrintSpectrum(), PrtFinal(), SetPrintLineCol(), sprt_wl(), and zero().
|
static |
Referenced by lgCheckMonitors(), ParsePrint(), WavlenErrorGet(), and zero().
vector<size_t> t_LineSave::SortWL |
Referenced by findline(), FindStrongestLineLabels(), and setSortWL().
realnum t_LineSave::WavLNorm |
WavLNorm is wavelength of emission line on normalize command
Referenced by IterStart(), lines_helium(), ParseNorm(), and zero().
int t_LineSave::wl_length |
length of string wl not including units typically, sig_figs+2 (dot & unit)
Referenced by lgCheckMonitors(), prt_wl(), PrtOneMonitor(), SetPrintLineCol(), and sprt_wl().