Cloudy
Spectral Synthesis Code for Astrophysics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
hydro_vs_rates.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

double CS_VS80 (long ipISO, long nHi, double IP_Ryd_Hi, long nLo, double IP_Ryd_Lo, double Aul, long nelem, long Collider, double temp)
 
double hydro_vs_coll_recomb (double ionization_energy_Ryd, double Te, double stat_level, double stat_ion)
 
double hydro_vs_ioniz (double ionization_energy_Ryd, double Te)
 
double Hion_coll_ioniz_ratecoef (long int ipISO, long int nelem, long int n, double ionization_energy_Ryd, double temperature)
 
double hydro_vs_deexcit (long nHi, long gHi, double IP_Ryd_Hi, long nLo, long gLo, double IP_Ryd_Lo, double Aul)
 
double hydro_Lebedev_deexcit (long ipISO, long nelem, long nHi, long nLo, double IP_Ryd_Lo)
 
double hydro_Fujimoto_deexcit (long ipISO, long nHi, long nLo, double Aul, double ip_Ryd_Hi, double ip_Ryd_Lo)
 
double hydro_vanRegemorter_deexcit (long ipISO, const long nelem, const long nHi, const long lHi, const long lLo, const double EnerWN, const double deltaE_eV, const double Aul, const long ipCollider)
 
double CS_ThermAve_PR78 (long ipISO, long nelem, long nHi, long nLo, double deltaE, double temp)
 
double Therm_ave_coll_str_int_PR78 (double EOverKT)
 
double C2_PR78 (double x, double y)
 
double CS_PercivalRichards78 (double Ebar)
 

Function Documentation

double C2_PR78 ( double  x,
double  y 
)
inline

C2_PR78

Parameters
x
y

References pow2().

Referenced by CS_PercivalRichards78().

Here is the call graph for this function:

double CS_PercivalRichards78 ( double  Ebar)

CS_PercivalRichards78 calculates collision strength from Percival & Richards (1978) MNRAS 183, 329

Parameters
Ebar

References ASSERT, C2_PR78(), cross_section(), DEBUG_ENTRY, get_iso_statw(), global_deltaE, global_ipISO, global_nelem, global_nHi, global_nLo, h2, pow2(), pow3(), and powi().

Referenced by CS_ThermAve_PR78(), and Therm_ave_coll_str_int_PR78().

Here is the call graph for this function:

double CS_ThermAve_PR78 ( long  ipISO,
long  nelem,
long  nHi,
long  nLo,
double  deltaE,
double  temp 
)

CS_ThermAve_PR78 - Calculate thermal averaged Percival and Richard excitation rates

Parameters
ipISO[in] iso-sequence (0 for H-like, 1 for He-like)
nelem[in] element (0 for H)
nHi[in] upper level principal quantum number
deltaE[in]energy difference between levels, in Rydberg
temp[in] gas temparature
Returns
n-n' collision strength

References CS_PercivalRichards78(), DEBUG_ENTRY, global_deltaE, global_ipISO, global_nelem, global_nHi, global_nLo, iso_ctrl, kTRyd, t_isoCTRL::lgCS_therm_ave, qg32(), and Therm_ave_coll_str_int_PR78().

Referenced by GetHelikeCollisionStrength(), and GetHlikeCollisionStrength().

Here is the call graph for this function:

double CS_VS80 ( long  ipISO,
long  nHi,
double  IP_Ryd_Hi,
long  nLo,
double  IP_Ryd_Lo,
double  Aul,
long  nelem,
long  Collider,
double  temp 
)

VS80 stands for Vriens and Smeets 1980
This routine calculates thermally-averaged collision strengths.

Parameters
ipISO
nHi
IP_Ryd_Hi
nLo
IP_Ryd_Lo
Aul
nelem
Collider
temp

References ASSERT, get_iso_statw(), hydro_vs_coll_str(), hydro_vs_deexcit(), ipELECTRON, iso_ctrl, t_isoCTRL::lgCollStrenThermAver, and Integrator< Integrand, Method >::sum().

Referenced by GetHelikeCollisionStrength(), and GetHlikeCollisionStrength().

Here is the call graph for this function:

double Hion_coll_ioniz_ratecoef ( long int  ipISO,
long int  nelem,
long int  n,
double  ionization_energy_Ryd,
double  temperature 
)

Hion_coll_ioniz_ratecoef calculate hydrogenic ionization rates for all n, and Z

Parameters
ipISOthe isoelectronic sequence
nelemelement, >=1 since only used for ions
nelem = 1 is helium the least possible charge
nprincipal quantum number, > 1
since only used for excited states
ionization_energy_Ryd
temperature

References ASSERT, DEBUG_ENTRY, dsexp(), e1(), e2(), expn(), MAX2, MIN2, and powi().

Referenced by iso_collisional_ionization().

Here is the call graph for this function:

double hydro_Fujimoto_deexcit ( long  ipISO,
long  nHi,
long  nLo,
double  Aul,
double  ip_Ryd_Hi,
double  ip_Ryd_Lo 
)

hydro_Fujimoto_deexcit - Collisional de-excitation rates from original equation (6-12) from Fujimoto (1978) IPPJ-AM-8, Institute of Plasma Physics, Nagoya University, Nagoya.

Parameters
ipISO[in] iso-sequence (0 for H-like, 1 for He-like)
nHi[in] upper level principal quantum number
lHi[in] upper level orbital angular momentum
Aul[in] Einstein A for transition between levels
ip_Ryd_Hi[in]upper level ionization potential, in Rydberg
ip_Ryd_Lo[in]lower level ionization potential, in Rydberg
Returns
n-n' collision strength

References ASSERT, DEBUG_ENTRY, expe1(), get_iso_statw(), phycon, POW2, pow2(), powpq(), t_phycon::sqrte, and t_phycon::te.

Referenced by GetHelikeCollisionStrength(), and GetHlikeCollisionStrength().

Here is the call graph for this function:

double hydro_Lebedev_deexcit ( long  ipISO,
long  nelem,
long  nHi,
long  nLo,
double  IP_Ryd_Lo 
)

hydro_vs_deexcit generate hydrogenic collisional ionization rate coefficients for quantum number n

Parameters
nelem
ipISO
nHi
nLo
IP_Ryd_Lo

References ASSERT, DEBUG_ENTRY, expe1(), get_iso_statw(), phycon, pow2(), pow3(), t_phycon::sqrte, and t_phycon::te.

Referenced by GetHelikeCollisionStrength(), and GetHlikeCollisionStrength().

Here is the call graph for this function:

double hydro_vanRegemorter_deexcit ( long  ipISO,
const long  nelem,
const long  nHi,
const long  lHi,
const long  lLo,
const double  EnerWN,
const double  deltaE_eV,
const double  Aul,
const long  ipCollider 
)

hydro_vanRegemorter_deexcit - Collisional deexcitation rates according to Van Regemorter, ApJ 136 (1962) 906

Parameters
ipISO[in] iso-sequence (0 for H-like, 1 for He-like)
nelem[in] element (0 for H)
nHi[in] upper level principal quantum number
lHi[in] upper level orbital angular momentum
lLo[in] lower level orbital angular momentum
EnerWN[in] energy difference between levels, in wavenumbers
deltaE_eV[in] energy difference between levels, in eV
Aul[in] Einstein A for transition between levels
ipCollider[in]collider type
Returns
n-n' collision strength

References a1, DEBUG_ENTRY, e1(), exp10(), get_iso_statw(), ipHELIUM, ipHYDROGEN, linint(), phycon, pow3(), powpq(), reduced_amu(), t_phycon::sqrte, and t_phycon::te.

Referenced by GetHelikeCollisionStrength(), and GetHlikeCollisionStrength().

Here is the call graph for this function:

double hydro_vs_coll_recomb ( double  ionization_energy_Ryd,
double  Te,
double  stat_level,
double  stat_ion 
)

hydro_vs_ioniz generate hydrogenic collisional ionization rate coefficients

Parameters
ionization_energy_Ryd
Te
stat_level
stat_ion

References ASSERT, DEBUG_ENTRY, pow(), and pow3().

Here is the call graph for this function:

double hydro_vs_deexcit ( long  nHi,
long  gHi,
double  IP_Ryd_Hi,
long  nLo,
long  gLo,
double  IP_Ryd_Lo,
double  Aul 
)

hydro_vs_deexcit generate hydrogenic collisional ionization rate coefficients for quantum number n

Parameters
nHi
gHi
IP_Ryd_Hi
nLo
gLo
IP_Ryd_Lo
Aul

References ASSERT, DEBUG_ENTRY, GetGF(), phycon, pow3(), powpq(), safe_div(), t_phycon::sqrte, and t_phycon::te.

Referenced by CS_VS80().

Here is the call graph for this function:

double hydro_vs_ioniz ( double  ionization_energy_Ryd,
double  Te 
)

hydro_vs_ioniz generate hydrogenic collisional ionization rate coefficients

Parameters
ionization_energy_Ryd
Te

References ASSERT, DEBUG_ENTRY, dsexp(), pow(), and powpq().

Referenced by iso_collisional_ionization().

Here is the call graph for this function:

double Therm_ave_coll_str_int_PR78 ( double  EOverKT)

Therm_ave_coll_str_int_PR78 The integrand for calculating the thermal average of collision strengths

Parameters
EOverKT

References CS_PercivalRichards78(), DEBUG_ENTRY, and kTRyd.

Referenced by CS_ThermAve_PR78().

Here is the call graph for this function: