ARTS 2.5.11 (git: 6827797f)
|
Constains various line scaling functions. More...
Go to the source code of this file.
Functions | |
Numeric | single_partition_function (const Numeric &T, const Species::IsotopeRecord &ir) |
Computes the partition function at one temperature. | |
Numeric | dsingle_partition_function_dT (const Numeric &T, const Species::IsotopeRecord &ir) |
Computes the partition function temperature derivative. | |
Numeric | stimulated_emission (Numeric T, Numeric F0) |
Computes exp(-hf/kT) | |
Numeric | dstimulated_emissiondT (Numeric T, Numeric F0) |
Computes temperature derivative of exp(-hf/kT) | |
Numeric | dstimulated_emissiondF0 (Numeric T, Numeric F0) |
Computes frequency derivative of exp(-hf/kT) | |
Numeric | stimulated_relative_emission (const Numeric F0, const Numeric T0, const Numeric T) noexcept |
Computes. | |
Numeric | dstimulated_relative_emission_dT (const Numeric F0, const Numeric T0, const Numeric T) noexcept |
Computes. | |
Numeric | dstimulated_relative_emission_dF0 (const Numeric F0, const Numeric T0, const Numeric T) noexcept |
Computes. | |
Numeric | stimulated_relative_emission (const Numeric &gamma, const Numeric &gamma_ref) |
Computes (1 - gamma) / (1 - gamma_ref) | |
Numeric | dstimulated_relative_emission_dT (const Numeric &gamma, const Numeric &gamma_ref, const Numeric &F0, const Numeric &T) |
Computes temperature derivative of (1 - gamma) / (1 - gamma_ref) | |
Numeric | dstimulated_relative_emission_dF0 (const Numeric &gamma, const Numeric &gamma_ref, const Numeric &T, const Numeric &T0) |
Computes frequency derivative of (1 - gamma) / (1 - gamma_ref) | |
Numeric | boltzman_ratio (const Numeric &T, const Numeric &T0, const Numeric &E0) |
Computes exp(E0/c (T - T0) / (T * T0)) | |
Numeric | dboltzman_ratio_dT (const Numeric &boltzmann_ratio, const Numeric &T, const Numeric &E0) |
Computes temperature derivatives exp(E0/k (T - T0) / (T * T0)) | |
constexpr Numeric | dboltzman_ratio_dT_div_boltzmann_ratio (Numeric T, Numeric E0) |
Computes temperature derivatives exp(E0/k (T - T0) / (T * T0)) / exp(E0/c (T - T0) / (T * T0)) | |
Numeric | boltzman_factor (Numeric T, Numeric E0) |
Computes exp(- E0/kT) | |
Numeric | dboltzman_factordT (Numeric T, Numeric E0) |
Computes temperature derivatives exp(- E0/kT) | |
Numeric | dboltzman_factordE0 (Numeric T, Numeric E0) |
Computes lower state energy derivatives exp(- E0/kT) | |
Numeric | absorption_nlte_ratio (const Numeric &gamma, const Numeric &r_upp=1.0, const Numeric &r_low=1.0) noexcept |
Computes (r_low - r_upp * gamma) / (1 - gamma) | |
Numeric | dabsorption_nlte_rate_dT (const Numeric &gamma, const Numeric &T, const Numeric &F0, const Numeric &El, const Numeric &Eu, const Numeric &r_upp=1.0, const Numeric &r_low=1.0) |
Computes temperature derivatives of (r_low - r_upp * gamma) / (1 - gamma) | |
Numeric | dabsorption_nlte_rate_dF0 (const Numeric &gamma, const Numeric &T, const Numeric &r_upp=1.0, const Numeric &r_low=1.0) |
Computes frequency derivative of (r_low - r_upp * gamma) / (1 - gamma) | |
Numeric | dabsorption_nlte_rate_dTl (const Numeric &gamma, const Numeric &T, const Numeric &Tl, const Numeric &El, const Numeric &r_low=1.0) |
Computes lower state temperature derivative of (r_low - r_upp * gamma) / (1 - gamma) | |
Numeric | dabsorption_nlte_rate_dTu (const Numeric &gamma, const Numeric &T, const Numeric &Tu, const Numeric &Eu, const Numeric &r_upp=1.0) |
Computes upper state temperature derivative of (r_low - r_upp * gamma) / (1 - gamma) | |
Constains various line scaling functions.
Headers for line scaling functions
Helps to solve line scaling and derivatives for lbl calculations
Definition in file linescaling.h.
|
noexcept |
Computes (r_low - r_upp * gamma) / (1 - gamma)
[in] | gamma | Stimulated emission at temperature |
[in] | r_upp | Relative ratio NLTE/LTE in upper ratio |
[in] | r_low | Relative ratio NLTE/LTE in lower ratio |
Definition at line 110 of file linescaling.cc.
Numeric boltzman_factor | ( | Numeric | T, |
Numeric | E0 | ||
) |
Computes exp(- E0/kT)
[in] | T | Temperature |
[in] | E0 | Lower state energy |
Definition at line 90 of file linescaling.cc.
References Constant::k.
Referenced by lm_hitran_2017::convtp(), Absorption::Lines::F_mean(), lm_hitran_2017::hitran_lm_eigenvalue_approximation(), and Absorption::LineMixing::PopulationAndDipole::PopulationAndDipole().
Numeric boltzman_ratio | ( | const Numeric & | T, |
const Numeric & | T0, | ||
const Numeric & | E0 | ||
) |
Computes exp(E0/c (T - T0) / (T * T0))
[in] | T | Temperature |
[in] | T0 | Reference temperature |
[in] | E0 | Lower state energy |
Definition at line 75 of file linescaling.cc.
References c, and Constant::k.
Referenced by lm_hitran_2017::convtp(), Absorption::Lines::F_mean(), lm_hitran_2017::hitran_lm_eigenvalue_approximation(), and Absorption::LineMixing::PopulationAndDipole::PopulationAndDipole().
Numeric dabsorption_nlte_rate_dF0 | ( | const Numeric & | gamma, |
const Numeric & | T, | ||
const Numeric & | r_upp = 1.0 , |
||
const Numeric & | r_low = 1.0 |
||
) |
Computes frequency derivative of (r_low - r_upp * gamma) / (1 - gamma)
[in] | gamma | Stimulated emission at temperature |
[in] | T | Temperature |
[in] | r_upp | Relative ratio NLTE/LTE in upper ratio |
[in] | r_low | Relative ratio NLTE/LTE in lower ratio |
Definition at line 138 of file linescaling.cc.
References c, Constant::h, Constant::k, and Math::pow2().
Numeric dabsorption_nlte_rate_dT | ( | const Numeric & | gamma, |
const Numeric & | T, | ||
const Numeric & | F0, | ||
const Numeric & | El, | ||
const Numeric & | Eu, | ||
const Numeric & | r_upp = 1.0 , |
||
const Numeric & | r_low = 1.0 |
||
) |
Computes temperature derivatives of (r_low - r_upp * gamma) / (1 - gamma)
[in] | gamma | Stimulated emission at temperature |
[in] | T | Temperature |
[in] | F0 | Central frequency |
[in] | El | Lower state energy |
[in] | Eu | Upper state energy |
[in] | r_upp | Relative ratio NLTE/LTE in upper ratio |
[in] | r_low | Relative ratio NLTE/LTE in lower ratio |
Definition at line 116 of file linescaling.cc.
References ARTS_USER_ERROR_IF, c, Constant::h, and Constant::k.
Numeric dabsorption_nlte_rate_dTl | ( | const Numeric & | gamma, |
const Numeric & | T, | ||
const Numeric & | Tl, | ||
const Numeric & | El, | ||
const Numeric & | r_low = 1.0 |
||
) |
Computes lower state temperature derivative of (r_low - r_upp * gamma) / (1 - gamma)
[in] | gamma | Stimulated emission at temperature |
[in] | T | Temperature |
[in] | Tl | Temperature of lower level |
[in] | El | Lower state energy |
[in] | r_low | Relative ratio NLTE/LTE in lower ratio |
Definition at line 147 of file linescaling.cc.
References Constant::k.
Numeric dabsorption_nlte_rate_dTu | ( | const Numeric & | gamma, |
const Numeric & | T, | ||
const Numeric & | Tu, | ||
const Numeric & | Eu, | ||
const Numeric & | r_upp = 1.0 |
||
) |
Computes upper state temperature derivative of (r_low - r_upp * gamma) / (1 - gamma)
[in] | gamma | Stimulated emission at temperature |
[in] | T | Temperature |
[in] | Tu | Temperature of lower level |
[in] | Eu | Lower state energy |
[in] | r_upp | Relative ratio NLTE/LTE in upper ratio |
Definition at line 158 of file linescaling.cc.
References Constant::k.
Numeric dboltzman_factordE0 | ( | Numeric | T, |
Numeric | E0 | ||
) |
Computes lower state energy derivatives exp(- E0/kT)
[in] | T | Temperature |
[in] | E0 | Lower state energy |
Definition at line 104 of file linescaling.cc.
Numeric dboltzman_factordT | ( | Numeric | T, |
Numeric | E0 | ||
) |
Computes temperature derivatives exp(- E0/kT)
[in] | T | Temperature |
[in] | E0 | Lower state energy |
Definition at line 96 of file linescaling.cc.
Numeric dboltzman_ratio_dT | ( | const Numeric & | boltzmann_ratio, |
const Numeric & | T, | ||
const Numeric & | E0 | ||
) |
Computes temperature derivatives exp(E0/k (T - T0) / (T * T0))
[in] | boltzmann_ratio | Output of boltzmann_ratio(...) |
[in] | T | Temperature |
[in] | E0 | Lower state energy |
Definition at line 81 of file linescaling.cc.
References c, and Constant::k.
|
constexpr |
Computes temperature derivatives exp(E0/k (T - T0) / (T * T0)) / exp(E0/c (T - T0) / (T * T0))
[in] | T | Temperature |
[in] | E0 | Lower state energy |
Definition at line 173 of file linescaling.h.
References Constant::k.
Numeric dsingle_partition_function_dT | ( | const Numeric & | T, |
const Species::IsotopeRecord & | ir | ||
) |
Computes the partition function temperature derivative.
[in] | T | Temperature |
[in] | partition_type | Switch for partition type of line |
[in] | partition_data | Partition data of line |
Definition at line 9 of file linescaling.cc.
References PartitionFunctions::dQdT().
Referenced by LineShape::compute().
Numeric dstimulated_emissiondF0 | ( | Numeric | T, |
Numeric | F0 | ||
) |
Computes frequency derivative of exp(-hf/kT)
[in] | T | Temperatures |
[in] | F0 | Frequency |
Definition at line 27 of file linescaling.cc.
Numeric dstimulated_emissiondT | ( | Numeric | T, |
Numeric | F0 | ||
) |
Computes temperature derivative of exp(-hf/kT)
[in] | T | Temperatures |
[in] | F0 | Frequency |
Definition at line 20 of file linescaling.cc.
Numeric dstimulated_relative_emission_dF0 | ( | const Numeric & | gamma, |
const Numeric & | gamma_ref, | ||
const Numeric & | T, | ||
const Numeric & | T0 | ||
) |
Computes frequency derivative of (1 - gamma) / (1 - gamma_ref)
[in] | gamma | Stimulated emission at temperature |
[in] | gamma_ref | Stimulated emission at reference temperature |
[in] | T | Temperature |
[in] | T0 | Reference temperature |
Definition at line 62 of file linescaling.cc.
References c, Constant::h, and Constant::k.
|
noexcept |
Computes.
\[ \frac{h\left(T\left[1 -e^{h f_0/k T}\right] e^{h f_0 / k T_0} - T_0 \left[1 -e^{h f_0/k T_0}\right] e^{h f_0 / k T} \right)}{kTT_0 \left(1 -e^{h f_0/k T_0}\right)^2} \]
using std::expm1 for increased low number accuracies
[in] | gamma | Stimulated emission at temperature |
[in] | gamma_ref | Stimulated emission at reference temperature |
Definition at line 42 of file linescaling.cc.
References Constant::h, Conversion::hz2joule(), Constant::k, Conversion::kelvin2joule(), and Math::pow2().
Numeric dstimulated_relative_emission_dT | ( | const Numeric & | gamma, |
const Numeric & | gamma_ref, | ||
const Numeric & | F0, | ||
const Numeric & | T | ||
) |
Computes temperature derivative of (1 - gamma) / (1 - gamma_ref)
[in] | gamma | Stimulated emission at temperature |
[in] | gamma_ref | Stimulated emission at reference temperature |
[in] | F0 | Frequency |
[in] | T | Temperature |
Definition at line 53 of file linescaling.cc.
References c, Constant::h, and Constant::k.
|
noexcept |
Computes.
\[ \frac{1}{T} \frac{h f_0}{k T} \frac{e^{h f_0/k T}}{1 - e^{h f_0 / k T_0}} \]
using std::expm1 for increased low number accuracies
[in] | gamma | Stimulated emission at temperature |
[in] | gamma_ref | Stimulated emission at reference temperature |
Definition at line 37 of file linescaling.cc.
References Conversion::hz2joule(), and Conversion::kelvin2joule().
Numeric single_partition_function | ( | const Numeric & | T, |
const Species::IsotopeRecord & | ir | ||
) |
Computes the partition function at one temperature.
[in] | T | Temperature |
[in] | partition_type | Switch for partition type of line |
[in] | partition_data | Partition data of line |
Definition at line 4 of file linescaling.cc.
References PartitionFunctions::Q().
Referenced by LineShape::compute(), lm_hitran_2017::convtp(), Absorption::LineMixing::ecs_eigenvalue_approximation(), Absorption::Lines::F_mean(), lm_hitran_2017::hitran_lm_eigenvalue_approximation(), and Absorption::LineMixing::PopulationAndDipole::PopulationAndDipole().
Numeric stimulated_emission | ( | Numeric | T, |
Numeric | F0 | ||
) |
Computes exp(-hf/kT)
[in] | T | Temperatures |
[in] | F0 | Frequency |
Definition at line 14 of file linescaling.cc.
Numeric stimulated_relative_emission | ( | const Numeric & | gamma, |
const Numeric & | gamma_ref | ||
) |
Computes (1 - gamma) / (1 - gamma_ref)
[in] | gamma | Stimulated emission at temperature |
[in] | gamma_ref | Stimulated emission at reference temperature |
Definition at line 48 of file linescaling.cc.
|
noexcept |
Computes.
\[ \frac{1 - e^{h f_0/k T}}{1 - e^{h f_0 / k T_0}} \]
using std::expm1 for increased low number accuracies
[in] | gamma | Stimulated emission at temperature |
[in] | gamma_ref | Stimulated emission at reference temperature |
Definition at line 33 of file linescaling.cc.
References Conversion::hz2joule(), and Conversion::kelvin2joule().