#include "cddefines.h"
#include "conv.h"
#include "lines_service.h"
#include "phycon.h"
#include "dense.h"
#include "rfield.h"
#include "taulines.h"
#include "iso.h"
#include "trace.h"
#include "hyperfine.h"
#include "physconst.h"
Go to the source code of this file.
Data Structures | |
struct | Ion |
Defines | |
#define | N_TE_TABLE 12 |
Functions | |
void | H21_cm_pops (void) |
double | H21cm_electron (double temp) |
STATIC double | h21_t_ge_10 (double temp) |
STATIC double | h21_t_lt_10 (double temp) |
double | H21cm_H_atom (double temp) |
double | H21cm_proton (double temp) |
void | HyperfineCreate (void) |
double | HyperfineCS (long i) |
Variables | |
static Ion * | Strengths |
#define N_TE_TABLE 12 |
Referenced by HyperfineCS().
void H21_cm_pops | ( | void | ) |
H21_cm_pops - fine level populations for 21 cm with Lya pumping included
Definition at line 25 of file atom_hyperfine.cpp.
References ASSERT, t_dense::cdsqte, col_str, t_rfield::ContBoltz, conv, dense, TransitionList::Emis(), g, HFLines, hyperfine, ioQQQ, ipH1s, ipH2p, ipH_LIKE, ipHYDROGEN, iso_sp, t_hyperfine::lgLya_pump_21cm, t_conv::lgSearch, OccupationNumberLine(), phycon, rfield, SDIV(), sexp(), SMALLFLOAT, t_iso_sp::st, T1CM, t_phycon::te, TexcLine(), TotalInsanity(), and t_hyperfine::Tspin21cm.
Referenced by CoolEvaluate().
STATIC double h21_t_ge_10 | ( | double | temp | ) |
Definition at line 264 of file atom_hyperfine.cpp.
References MIN2, pow(), pow2(), and x2.
Referenced by H21cm_H_atom().
STATIC double h21_t_lt_10 | ( | double | temp | ) |
Definition at line 290 of file atom_hyperfine.cpp.
Referenced by H21cm_H_atom().
double H21cm_electron | ( | double | temp | ) |
H21cm_electron computes rate for H 21 cm from upper to lower excitation by electrons >>refer H1 cs Smith, F.J., 1966, Planet. Space Sci 14, 929
temp |
Definition at line 206 of file atom_hyperfine.cpp.
References MIN2, pow(), and sexp().
Referenced by CoolEvaluate(), and radius_increment().
double H21cm_H_atom | ( | double | temp | ) |
H21cm_H_atom computes rate for H 21 cm from upper to lower excitation by atomic hydrogen from >>refer H1 cs Allison, A.C. & Dalgarno, A., 1969, ApJ 158, 423
temp | temperature |
Definition at line 306 of file atom_hyperfine.cpp.
References h21_t_ge_10(), and h21_t_lt_10().
Referenced by CoolEvaluate(), and radius_increment().
double H21cm_proton | ( | double | temp | ) |
H21cm_proton - evaluate proton spin changing H atom collision rate, from >>refer 21cm p coll Furlanetto, S.R. & Furlanetto, M.R. 2007, >>refcon MNRAS, doi:10.1111/j.1365-2966.2007.11921.x
temp | temperature |
Definition at line 323 of file atom_hyperfine.cpp.
References MAX2, MIN2, and x2.
Referenced by CoolEvaluate().
void HyperfineCreate | ( | void | ) |
HyperfineCreate - read in data files and create space for hyperfine lines, called by atmdat_readin at start of calculation
Definition at line 392 of file atom_hyperfine.cpp.
References AllTransitions, ASSERT, cdEXIT, COLL_CONST, DEBUG_ENTRY, dense, t_dense::eden, TransitionList::Emis(), EXIT_FAILURE, FFmtRead(), g, GetGF(), t_hyperfine::HFLabundance, HFLines, hyperfine, HyperfineCS(), INPUT_LINE_LENGTH, ioQQQ, t_trace::lgTrace, MALLOC, N, nHFLines, open_data(), phycon, read_whole_line(), TransitionList::resize(), t_phycon::sqrte, t_phycon::te, trace, wavelength, and t_dense::xIonDense.
Referenced by atmdat_readin().
double HyperfineCS | ( | long | i | ) |
HyperfineCS - returns interpolated collision strength for element nelem and ion ion
i |
Definition at line 581 of file atom_hyperfine.cpp.
References ASSERT, DEBUG_ENTRY, fp_equal(), N_TE_TABLE, nHFLines, phycon, pow(), Ion::strengths, and t_phycon::te.
Referenced by CoolEvaluate(), and HyperfineCreate().
Definition at line 389 of file atom_hyperfine.cpp.