Cloudy
Spectral Synthesis Code for Astrophysics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
taulines.cpp File Reference
#include "cddefines.h"
#include "taulines.h"
#include "atmdat.h"
Include dependency graph for taulines.cpp:

Functions

void checkTransitionListOfLists (vector< TransitionList > &list)
 
TransitionList::iterator findTrans_byQuantNumb (const string speciesLabel, const long n_hi, const long l_hi, const long S_hi, const long n_lo, const long l_lo, const long S_lo)
 
TransitionList::iterator findTrans_byWLAng (string speciesLabel, const double wl_Ang, double &wl_err)
 

Variables

vector< TransitionListAllTransitions
 
bool lgStatesAdded = false
 
bool lgLinesAdded = false
 
multi_arr< qList, 2 > StatesElemNEW
 
char ** chSpecies
 
vector< speciesdBaseSpecies
 
vector< qListdBaseStates
 
vector< multi_arr< int, 2 > > ipdBaseTrans
 
vector< TransitionListdBaseTrans
 
multi_arr< CollRateCoeffArray, 2 > AtmolCollRateCoeff
 
vector< multi_arr
< CollSplinesArray, 3 > > 
AtmolCollSplines
 
vector< StoutCollArrayStoutCollData
 
long int nSpecies
 
qList AnonStates ("AnonStates", 1)
 
multi_arr< int, 3 > ipExtraLymanLines
 
vector< vector< TransitionList > > ExtraLymanLines
 
TransitionList UTALines ("UTALines",&AnonStates)
 
long int nLevel1
 
TransitionList HFLines ("HFLines",&AnonStates)
 
vector< vector< TransitionList > > Transitions
 
multi_arr< int, 2 > ipFe2LevN
 
static qList Fe2LevNStates
 
TransitionList Fe2LevN ("Fe2LevN",&Fe2LevNStates)
 
multi_arr< int, 3 > ipSatelliteLines
 
vector< vector< TransitionList > > SatelliteLines
 
TransitionList TauLine2 ("TauLine2",&AnonStates)
 
vector< realnumcs1_flag_lev2
 
TransitionProxy::iterator TauDummy
 
EmissionProxy DummyEmis
 

Function Documentation

void checkTransitionListOfLists ( vector< TransitionList > &  list)

Referenced by ContCreatePointers().

TransitionList::iterator findTrans_byQuantNumb ( const string  speciesLabel,
const long  n_hi,
const long  l_hi,
const long  S_hi,
const long  n_lo,
const long  l_lo,
const long  S_lo 
)

findTrans_byQuantNumb Identify transition of a given species by its quantum numbers.

Parameters
speciesLabel(in) label of species, e.g., "H 1"
n_hi(in) principal quantum number of upper level in transition
l_hi(in) orbital angular momentum of upper level
S_hi(in) multiplicity of upper level
n_lo(in) principal quantum number of lower level
l_lo(in) orbital angular momentum of lower level
S_lo(in) multiplicity of lower level
Returns
pointer to transition in species list of transitions. If no match is found, return value is past the end of the entire list.

References AllTransitions.

TransitionList::iterator findTrans_byWLAng ( string  speciesLabel,
const double  wl_Ang,
double &  wl_err 
)

findTrans_byWLAng Identify transition of a given species by wavelength.

Parameters
speciesLabel(in) label of species, e.g., "H 1"
wavelength(in) transition wavelength, in Angstrom
wl_err(out) error in wavelength match
Returns
pointer to transition in species list of transitions. If no match is found, return value is past the end of the entire list.

References AllTransitions.

Variable Documentation

qList AnonStates("AnonStates", 1)

Referenced by iso_allocate().

vector< multi_arr<CollSplinesArray,3> > AtmolCollSplines
char** chSpecies
vector<realnum> cs1_flag_lev2

Referenced by CoolDima(), and read_level2_lines().

EmissionProxy DummyEmis
Todo:
2 bring these two together.

AddLine2Stack add generic emission line to GenericLines and return pointer to that state.

Referenced by TransitionProxy::Emis(), and InitDefaultsPreparse().

TransitionList Fe2LevN("Fe2LevN",&Fe2LevNStates)
qList Fe2LevNStates
static
TransitionList HFLines("HFLines",&AnonStates)

extern transition TauLines[NTAULINES+1]; these are the public parts of the hyperfine structure line transfer info data gathered from hyperfine.dat using routines in hyperfine.c the structure containing the hfs line information

Referenced by cdTemp(), ContCreatePointers(), CoolHyperfine(), FindNeg(), FndLineHt(), H21_cm_pops(), HyperfineCreate(), HyperfineCS(), iter_end_check(), lines(), lines_setup(), PresTotCurrent(), PrtComment(), PrtFinal(), PrtLinePres(), prtmet(), radius_increment(), RT_diffuse(), RT_line_all(), RT_line_driving(), RT_tau_inc(), RT_tau_init(), RT_tau_reset(), SaveDo(), and SaveLineData().

multi_arr<int,3> ipExtraLymanLines

this is the set of extra lines, ExtraLymanLines[ipISO][ipZ][n]

Referenced by ContCreatePointers(), iso_allocate(), iso_create(), lines(), RT_line_all(), RT_line_driving(), RT_tau_inc(), RT_tau_init(), RT_tau_reset(), and SaveLineStuff().

multi_arr<int,2> ipFe2LevN
bool lgLinesAdded = false
bool lgStatesAdded = false
long int nLevel1

this is the number of level 1 lines, and is set in atmdat_readin by counter number of data lines in level1.dat

multi_arr<qList,2> StatesElemNEW
vector< StoutCollArray > StoutCollData

this is a dummy optical depth array for non-existant lines

vector<vector<TransitionList> > Transitions

main line arrays for hydrogenic ions<br>

first dimension is atomic number
second dim is upper level
third dim is lower level
nta dim is set of pointers for quantities within line transfer arrays
in the forc translation, the upper level was too low by 1, since the
fortran was starting at 1. the lower dim was not changed by translation
since it started from ip1s = 0
any place where the third dim has -1 is probably a remnant from forc and is wrong

Referenced by iso_allocate().