|
criptic v1
Cosmic Ray Interstellar Propagation Tool using Itô Calculus
|
Trivial class to hold gas data. More...
#include <GasData.H>
Public Member Functions | |
| Real | UB () const |
| Compute magnetic energy density. | |
| constexpr Real | xH2 () const |
| Compute H2 abundance. | |
| constexpr Real | xHe () const |
| Compute total He abundance across all ionization states. | |
| constexpr Real | X () const |
| Compute H abundance by mass. | |
| constexpr Real | Y () const |
| Compute He abundance by mass. | |
| constexpr Real | AxZ () const |
| Return heavy element abundance times mean atomic mass. | |
| constexpr Real | muH () const |
| Compute mean mass per H nucleon. | |
| constexpr Real | mue () const |
| Compute mean mass per electron. | |
| constexpr Real | nH () const |
| Compute number density of H nuclei. | |
| constexpr Real | neTot () const |
| Compute total number density of electrons. | |
| constexpr Real | neFree () const |
| Compute number density of free electrons. | |
| void | setAtomicComposition () |
| Set reasonable abundances for atomic ISM. | |
| void | setMolecularComposition () |
| Set reasonable abundances for molecular ISM. | |
| void | setIonizedComposition () |
| Set reasonable abundances for fully ionized ISM. | |
| GasData | operator* (const Real &w) const |
| Multiply by a scalar. | |
| GasData | operator+ (const GasData &gd) const |
| Add two GasData objects. | |
Public Attributes | |
| Real | dx |
| Real | den |
| Real | ionDen |
| RealVec | v |
| RealVec | B |
| RealVec | denGrad |
| RealVec | ionDenGrad |
| RealTensor2 | vGrad |
| RealTensor2 | BGrad |
| Real | xH0 |
| Real | xHp |
| Real | xHe0 |
| Real | xHep |
| Real | xHep2 |
| Real | xe |
| Real | Z |
| std::vector< Real > | TBB |
| std::vector< Real > | WBB |
Trivial class to hold gas data.
This class holds information about the gas density, velocity, magnetic field, and their gradients. It provides some trivial utility methods.
|
inlineconstexpr |
Return heavy element abundance times mean atomic mass.
This routine returns the mean atomic mass A_mean of heavy elements multiplied by the heavy element abundance per H, x_Z
|
inlineconstexpr |
Compute mean mass per electron.
This calculation assumes heavy elements have a number of electrons equal to half their atomic mass
|
inlineconstexpr |
Compute mean mass per H nucleon.
|
inlineconstexpr |
Compute number density of free electrons.
|
inlineconstexpr |
Compute total number density of electrons.
Here "total" means the number density of all electrons, free or bound.
|
inlineconstexpr |
Compute number density of H nuclei.
|
inline |
Multiply by a scalar.
| w | The scalar |
For the blackbody radiation field, the dilution factor is multiplied by w, but the temperature is left unchanged.
|
inline |
Add two GasData objects.
| gd | The GasData object to add |
For the blackbody radiation components, the dilution factors are added, and the blackbody temperatures are unchanged. If the blackbody temperatures of the two objects being added are not elementwise identical, the outcome is undefined.
|
inline |
Set reasonable abundances for atomic ISM.
He and metal abundances taken from Asplund+ (2009)
|
inline |
Set reasonable abundances for fully ionized ISM.
He and metal abundances taken from Asplund+ (2009)
|
inline |
Set reasonable abundances for molecular ISM.
He and metal abundances taken from Asplund+ (2009)
|
inline |
Compute magnetic energy density.
This method correctly computes the magnetic energy density in either Gaussian or SI units, depending on which are selected at compile-time.
|
inlineconstexpr |
Compute H abundance by mass.
|
inlineconstexpr |
Compute H2 abundance.
This method deduces the H2 abundance from the HI and HII abundances.
|
inlineconstexpr |
Compute total He abundance across all ionization states.
|
inlineconstexpr |
Compute He abundance by mass.
| RealVec criptic::gas::GasData::B |
Magnetic field
| RealTensor2 criptic::gas::GasData::BGrad |
Gradient of magnetic field, dB_i / dx_j
| Real criptic::gas::GasData::den |
Total mass density
| RealVec criptic::gas::GasData::denGrad |
Total density gradient
| Real criptic::gas::GasData::dx |
Characteristic length scale
| Real criptic::gas::GasData::ionDen |
Ionized mass density
| RealVec criptic::gas::GasData::ionDenGrad |
Ionized density gradient
| std::vector<Real> criptic::gas::GasData::TBB |
Temperatures of BB radiation fields
| RealTensor2 criptic::gas::GasData::vGrad |
Velocity gradient, dv_i / dx_j
| std::vector<Real> criptic::gas::GasData::WBB |
Dilution factors of BB radiation fields
| Real criptic::gas::GasData::xe |
Free electron abundance per H nucleon
| Real criptic::gas::GasData::xH0 |
H^0 abundance per H nucleon
| Real criptic::gas::GasData::xHe0 |
He^0 abundance per H nucleon
| Real criptic::gas::GasData::xHep |
He^+ abundance per H nucleon
| Real criptic::gas::GasData::xHep2 |
He^++ abundance per H nucleon
| Real criptic::gas::GasData::xHp |
H^+ abundance per H nucleon
| Real criptic::gas::GasData::Z |
Heavy element abundance by mass