#include "cddefines.h"#include "transition.h"#include "version.h"#include "dense.h"#include "elementnames.h"#include "lines.h"#include "lines_service.h"#include "opacity.h"#include "phycon.h"#include "radius.h"#include "rfield.h"#include "rt.h"#include "taulines.h"#include "conv.h"Go to the source code of this file.
Functions | |
| INSTANTIATE_MULTI_ARR (transition, lgBOUNDSCHECKVAL) | |
| double | emit_frac (const transition *t) |
| void | DumpLine (const transition *t) |
| double | OccupationNumberLine (const transition *t) |
| double | TexcLine (const transition *t) |
| void | chIonLbl (char *chIonLbl_v, const transition *t) |
| char * | chLineLbl (const transition *t) |
| void | PutCS (double cs, transition *t) |
| void | GenerateTransitionConfiguration (const transition *t, char *chComment) |
| STATIC void | PutLine_base (const transition *t, const char *chComment, const char *chLabelTemp, bool lgLabel) |
| void | PutLine (const transition *t, const char *chComment, const char *chLabelTemp) |
| void | PutLine (const transition *t, const char *chComment) |
| void | PutExtra (double Extra) |
| void | LineConvRate2CS (transition *t, realnum rate) |
| STATIC void | gbar0 (double ex, realnum *g) |
| STATIC void | gbar1 (double ex, realnum *g) |
| void | MakeCS (transition *t) |
Variables | |
| static realnum | ExtraInten |
| void chIonLbl | ( | char * | , | |
| const transition * | t | |||
| ) |
generate null terminated line label from contents of line trans array
| *t |
Definition at line 198 of file transition.cpp.
References ASSERT, t_elementnames::chElementNameShort, t_elementnames::chElementSym, t_elementnames::chIonStage, t_quantumState::chLabel, DEBUG_ENTRY, elementnames, transition::Hi, t_quantumState::IonStg, LIMELM, and t_quantumState::nelem.
Referenced by atom_level2(), atom_level3(), AtomSeqBeryllium(), ContCreatePointers(), lines_continuum(), lines_helium(), lines_hydro(), lines_setup(), PrtLinePres(), PutLine_base(), and Save1LineData().
| char* chLineLbl | ( | const transition * | t | ) |
chLineLbl use information in line transfer arrays to generate a line label
this label is null terminated
| *t |
Definition at line 244 of file transition.cpp.
References ASSERT, t_elementnames::chElementSym, t_elementnames::chIonStage, t_quantumState::chLabel, DEBUG_ENTRY, elementnames, transition::Hi, t_quantumState::IonStg, t_species::lgMolecular, t_quantumState::nelem, t_quantumState::sp, and transition::WLAng.
Referenced by atom_level3(), ContCreatePointers(), DumpLine(), PresTotCurrent(), prme(), PrtComment(), radius_next(), RT_line_one_tau_reset(), Save1Line(), Save_Line_RT(), and SaveHeat().
| void DumpLine | ( | const transition * | t | ) |
DumpLine print various information about an emission line vector, used in debugging
| *t |
Definition at line 103 of file transition.cpp.
References t_opac::albedo, ASSERT, t_emission::Aul, chLineLbl(), t_collision::col_str, transition::Coll, t_collision::cool, DEBUG_ENTRY, dense, t_dense::eden, transition::Emis, t_collision::heat, transition::Hi, ioQQQ, transition::ipCont, transition::Lo, opac, t_opac::opacity_abs, t_emission::ots, t_emission::Pdest, t_emission::Pelec_esc, t_emission::Pesc, phycon, t_quantumState::Pop, t_emission::PopOpc, t_emission::pump, t_emission::TauIn, t_emission::TauTot, t_phycon::te, and TexcLine().
Referenced by ConvBase(), CoolCarb(), CoolIron(), CoolNitr(), CoolOxyg(), CoolSili(), CoolSulf(), CoolSum(), FeIIRadPress(), FindNeg(), RT_diffuse(), RT_line_all(), and RT_line_escape().
| double emit_frac | ( | const transition * | t | ) |
returns fraction of populations the produce emission
| *t |
Definition at line 87 of file transition.cpp.
References ASSERT, t_emission::Aul, t_dense::cdsqte, t_collision::col_str, transition::Coll, DEBUG_ENTRY, dense, transition::Emis, transition::ipCont, t_emission::Pdest, t_emission::Pelec_esc, and t_emission::Pesc.
Referenced by lines_lv1_li_ne(), and lines_lv1_na_ar().
| STATIC void gbar0 | ( | double | ex, | |
| realnum * | g | |||
| ) |
Definition at line 560 of file transition.cpp.
References DEBUG_ENTRY, phycon, POW2, and t_phycon::te.
Referenced by MakeCS().
| STATIC void gbar1 | ( | double | ex, | |
| realnum * | g | |||
| ) |
Definition at line 609 of file transition.cpp.
References DEBUG_ENTRY, phycon, POW2, and t_phycon::te.
Referenced by MakeCS().
| void GenerateTransitionConfiguration | ( | const transition * | t, | |
| char * | chComment | |||
| ) |
GenerateTransitionConfiguration - given transition *t, writes a label t->Lo->chConfig - t->Hi->chConfig (i.e., 2^3S - 2^3P)
| t | *chComment |
Definition at line 349 of file transition.cpp.
References t_quantumState::chConfig, transition::Hi, and transition::Lo.
Referenced by lines_hydro().
| INSTANTIATE_MULTI_ARR | ( | transition | , | |
| lgBOUNDSCHECKVAL | ||||
| ) |
| void LineConvRate2CS | ( | transition * | t, | |
| realnum | rate | |||
| ) |
convert down coll rate back into electron cs in case other parts of code need this for reference
| *t | - line struct collision strength is stored in t->cs | |
| rate | - deexcitation rate, units s-1 |
Definition at line 543 of file transition.cpp.
References ASSERT, t_dense::cdsqte, t_collision::col_str, transition::Coll, DEBUG_ENTRY, dense, t_quantumState::g, and transition::Hi.
Referenced by CoolChlo(), CoolIron(), CoolNick(), CoolSili(), and CoolSulf().
| void MakeCS | ( | transition * | t | ) |
MakeCS compute collision strength by g-bar approximations
| *t |
Definition at line 635 of file transition.cpp.
References t_collision::col_str, transition::Coll, DEBUG_ENTRY, dense, transition::Emis, transition::EnergyK, transition::EnergyWN, gbar0(), gbar1(), t_emission::gf, transition::Hi, t_quantumState::IonStg, t_quantumState::nelem, WAVNRYD, and t_dense::xIonDense.
Referenced by CoolAlum(), CoolCalc(), CoolIron(), CoolMagn(), and CoolSili().
| double OccupationNumberLine | ( | const transition * | t | ) |
OccupationNumberLine - derive the photon occupation number at line center for any line
| *t |
Definition at line 145 of file transition.cpp.
References ASSERT, DEBUG_ENTRY, transition::Emis, t_quantumState::g, transition::Hi, transition::ipCont, transition::Lo, t_emission::Pesc, t_quantumState::Pop, t_emission::PopOpc, and SMALLFLOAT.
Referenced by H21_cm_pops(), and SaveDo().
| void PutCS | ( | double | cs, | |
| transition * | t | |||
| ) |
PutCS enter a collision strength into an individual line struc
| cs | ||
| *t | the line struc |
Definition at line 336 of file transition.cpp.
References ASSERT, t_collision::col_str, transition::Coll, and DEBUG_ENTRY.
Referenced by CoolAlum(), CoolArgo(), CoolCalc(), CoolCarb(), CoolChlo(), CoolChro(), CoolCoba(), CoolDima(), CoolEvaluate(), CoolFluo(), CoolIron(), CoolMagn(), CoolMang(), CoolNeon(), CoolNick(), CoolNitr(), CoolOxyg(), CoolPhos(), CoolPota(), CoolScan(), CoolSili(), CoolSodi(), CoolSulf(), CoolTita(), CoolVana(), CoolZinc(), Fe2_cooling(), Fe7Lev8(), and oi_level_pops().
| void PutExtra | ( | double | Extra | ) |
PutExtra enter and 'extra' intensity source for some line
| Extra |
Definition at line 487 of file transition.cpp.
References DEBUG_ENTRY, and ExtraInten.
Referenced by lines(), lines_lv1_k_zn(), lines_lv1_li_ne(), and lines_lv1_na_ar().
| void PutLine | ( | const transition * | t, | |
| const char * | chComment | |||
| ) |
enter lines into the line storage array, called once per zone for each line
| xInten | xInten - local emissivity per unit vol, no fill fac | |
| wavelength | lam integer wavelength | |
| *chLab | string label for ion | |
| chInfo | character type of entry for line - 'c' cooling, 'h' heating, 'i' info only, 'r' recom line | |
| *chComment | string explaining line PutLine enter local line intensity into the intensity stack for eventual printout | |
| *t | transition structure for line | |
| *chComment | a description of the line |
Definition at line 476 of file transition.cpp.
References DEBUG_ENTRY, and PutLine_base().
| void PutLine | ( | const transition * | t, | |
| const char * | chComment, | |||
| const char * | chLabel | |||
| ) |
PutLine enter local line intensity into the intensity stack for eventual printout
| *t | transition structure for line | |
| *chComment | a description of the line | |
| *chLabel | the line label |
Definition at line 468 of file transition.cpp.
References DEBUG_ENTRY, and PutLine_base().
Referenced by DoSatelliteLines(), H2_LinesAdd(), lines(), lines_helium(), lines_hydro(), lines_lv1_k_zn(), lines_lv1_li_ne(), and lines_lv1_na_ar().
| STATIC void PutLine_base | ( | const transition * | t, | |
| const char * | chComment, | |||
| const char * | chLabelTemp, | |||
| bool | lgLabel | |||
| ) |
Definition at line 360 of file transition.cpp.
References ASSERT, t_emission::Aul, AulEscp, chIonLbl(), chLabel, transition::Coll, t_emission::ColOvTot, t_collision::ColUL, t_collision::cool, DEBUG_ENTRY, transition::Emis, transition::EnergyErg, ExtraInten, t_rt::fracin, t_emission::FracInwd, t_collision::heat, t_LineSave::ipass, transition::ipCont, linadd(), lindst(), LineSave, transition::Lo, t_emission::Pdest, t_emission::Pelec_esc, t_emission::Pesc, t_quantumState::Pop, t_emission::pump, rt, transition::WLAng, and t_emission::xIntensity.
Referenced by PutLine().
| double TexcLine | ( | const transition * | t | ) |
TexcLine derive excitation temperature of line from contents of line array
| *t |
Definition at line 172 of file transition.cpp.
References DEBUG_ENTRY, transition::EnergyK, t_quantumState::g, transition::Hi, transition::Lo, t_quantumState::Pop, and SMALLFLOAT.
Referenced by DumpLine(), H21_cm_pops(), radius_increment(), and SaveDo().
realnum ExtraInten [static] |
Definition at line 357 of file transition.cpp.
Referenced by PutExtra(), and PutLine_base().
1.6.1