Cloudy
Spectral Synthesis Code for Astrophysics
|
#include "cddefines.h"
#include "abund.h"
#include "conv.h"
#include "phycon.h"
#include "dense.h"
#include "rfield.h"
#include "taulines.h"
#include "iso.h"
#include "trace.h"
#include "hyperfine.h"
#include "lines_service.h"
#include "service.h"
Classes | |
struct | t_ColStr |
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 (size_t i) |
double | HyperfineTspin (const TransitionProxy &t) |
Variables | |
static int | Ntemp = -1 |
static vector< double > | csTemp |
static vector< t_ColStr > | colstr |
void H21_cm_pops | ( | void | ) |
H21_cm_pops - fine level populations for 21 cm with Lya pumping included
References ASSERT, t_hyperfine::CONSTANT, conv, dense, e1(), e2(), t_hyperfine::EXCITATION, fixit, fprintf(), HFLines, hyperfine, HyperfineTspin(), ioQQQ, ipH1s, ipH2p, ipH_LIKE, ipHYDROGEN, iso_sp, t_hyperfine::KINETIC, OccupationNumberLine(), phycon, powi(), rfield, SDIV(), set_xIntensity(), sexp(), TexcLine(), and TotalInsanity().
Referenced by CoolHyperfine().
STATIC double h21_t_ge_10 | ( | double | temp | ) |
References MIN2, pow(), pow2, and STATIC.
Referenced by H21cm_H_atom().
STATIC double h21_t_lt_10 | ( | double | temp | ) |
References MAX2, pow2, and STATIC.
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
- Parameters
temp
References exp10(), MIN2, powpq(), and sexp().
Referenced by CoolHyperfine(), 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
- Parameters
temp temperature
References h21_t_ge_10(), and h21_t_lt_10().
Referenced by CoolHyperfine(), 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
- Parameters
temp temperature
Referenced by CoolHyperfine().
void HyperfineCreate | ( | void | ) |
HyperfineCreate - read in data files and create space for hyperfine lines, called by atmdat_readin at start of calculation
References abund, AllTransitions, ASSERT, cdEXIT, colstr, csTemp, DEBUG_ENTRY, dense, EXIT_FAILURE, FFmtRead(), fprintf(), GetGF(), HFLines, hyperfine, HyperfineCS(), ioQQQ, LIMELM, MakeCS(), Ntemp, open_data(), phycon, read_whole_line(), rfield, spline(), Split(), SPM_STRICT, trace, and wavelength.
Referenced by atmdat_readin().
double HyperfineCS | ( | size_t | i | ) |
HyperfineCS - returns interpolated collision strength for element nelem and ion ion
i |
References ASSERT, colstr, csTemp, DEBUG_ENTRY, exp10(), HFLines, Ntemp, phycon, and splint().
Referenced by CoolHyperfine(), and HyperfineCreate().
double HyperfineTspin | ( | const TransitionProxy & | t | ) |
HyperfineTspin
Compute spin (excitation) temperature for HFS line. The spin temperature is always finite (> 0, or < 0 if masing). The kinetic temperature is used if the spin temperature evaluates to 0, or if the upper limit has a population that is too small (~< 2e-36 cm^-3) to reliably compute the spin temperature.
t | [in] Transition |
References ASSERT, DEBUG_ENTRY, TransitionProxy::Hi(), phycon, SMALLFLOAT, and TexcLine().
Referenced by H21_cm_pops().
|
static |
Referenced by HyperfineCreate(), and HyperfineCS().
|
static |
Referenced by HyperfineCreate(), and HyperfineCS().
|
static |
Referenced by HyperfineCreate(), and HyperfineCS().