rizer.cantera_ext
C++ Cantera 1-D plasma extension (custom Domain1D models and solvers)
Toggle main menu visibility
Loading...
Searching...
No Matches
units.h
Go to the documentation of this file.
1
#ifndef RIZER_UNITS_H
2
#define RIZER_UNITS_H
3
17
18
#include <cmath>
19
20
namespace
rizer
{
21
namespace
units
{
22
23
// --- Fundamental constants (CODATA, https://physics.nist.gov/cuu) ----------
24
26
constexpr
double
e
= 1.602'176'634e-19;
28
constexpr
double
k_b
= 1.380'649e-23;
30
constexpr
double
N_a
= 6.022'140'76e23;
32
constexpr
double
c
= 299'792'458.0;
34
constexpr
double
h
= 6.626'070'15e-34;
36
constexpr
double
m_e
= 9.109'383'713'9e-31;
38
constexpr
double
M_e
=
m_e
*
N_a
;
40
constexpr
double
Da
= 1.660'539'068'92e-27;
42
constexpr
double
epsilon_0
= 8.854'187'818'8e-12;
44
constexpr
double
stefan_boltzmann
= 5.670'374'419e-8;
46
constexpr
double
bohr_radius_m
= 5.291'772'105'44e-11;
48
constexpr
double
rydberg_energy_eV
= 13.605'693'122'990;
49
51
constexpr
double
pi
= 3.141'592'653'589'793'238'46;
53
constexpr
double
hbar
=
h
/ (2.0 *
pi
);
54
55
// --- Derived constants ------------------------------------------------------
56
58
constexpr
double
R
=
k_b
*
N_a
;
60
constexpr
double
R_kmol
=
R
* 1e3;
62
constexpr
double
m_N2
= 28.013'4 *
Da
;
64
constexpr
double
P_1_bar
= 1e5;
65
66
// --- Unit conversions -------------------------------------------------------
67
69
constexpr
double
eV_to_K
=
e
/
k_b
;
71
constexpr
double
K_to_eV
=
k_b
/
e
;
73
constexpr
double
eV_to_J
=
e
;
75
constexpr
double
J_to_eV
= 1.0 /
e
;
77
constexpr
double
K_to_J
=
k_b
;
79
constexpr
double
J_to_K
= 1.0 /
k_b
;
81
constexpr
double
kJ_per_mol_to_J_per_particle
= 1e3 /
N_a
;
83
constexpr
double
invcm_to_joule
=
h
*
c
* 100.0;
84
90
inline
const
double
spitzer_constant
=
91
std::pow(4.0 *
pi
*
epsilon_0
/
e
, 2.0) * std::pow(
k_b
, 1.5)
92
/ (4.0 / 3.0 * std::sqrt(2.0 *
pi
*
m_e
)) * 1.96;
93
94
// Note: units.py's `element_radius` dict is intentionally not mirrored here --
95
// the C++ collision model receives per-species radii through SpeciesSpec, so
96
// no compiled-in radius table is needed.
97
98
}
// namespace units
99
}
// namespace rizer
100
101
#endif
// RIZER_UNITS_H
rizer::units
Definition
units.h:21
rizer::units::hbar
constexpr double hbar
Reduced Planck constant [J s].
Definition
units.h:53
rizer::units::k_b
constexpr double k_b
Boltzmann constant [J/K]. Exact (CODATA).
Definition
units.h:28
rizer::units::K_to_J
constexpr double K_to_J
K -> J.
Definition
units.h:77
rizer::units::R
constexpr double R
Ideal gas constant [J/(mol K)].
Definition
units.h:58
rizer::units::P_1_bar
constexpr double P_1_bar
1 bar [Pa].
Definition
units.h:64
rizer::units::epsilon_0
constexpr double epsilon_0
Vacuum permittivity [F/m] (CODATA 2022).
Definition
units.h:42
rizer::units::R_kmol
constexpr double R_kmol
Ideal gas constant [J/(kmol K)] (matches Cantera's GasConstant).
Definition
units.h:60
rizer::units::stefan_boltzmann
constexpr double stefan_boltzmann
Stefan-Boltzmann constant [W/(m^2 K^4)] (CODATA).
Definition
units.h:44
rizer::units::eV_to_J
constexpr double eV_to_J
eV -> J.
Definition
units.h:73
rizer::units::J_to_K
constexpr double J_to_K
J -> K.
Definition
units.h:79
rizer::units::pi
constexpr double pi
pi (matches numpy's np.pi used in units.py).
Definition
units.h:51
rizer::units::invcm_to_joule
constexpr double invcm_to_joule
inverse cm -> J.
Definition
units.h:83
rizer::units::h
constexpr double h
Planck constant [J s]. Exact (CODATA).
Definition
units.h:34
rizer::units::N_a
constexpr double N_a
Avogadro's number [1/mol]. Exact (CODATA).
Definition
units.h:30
rizer::units::rydberg_energy_eV
constexpr double rydberg_energy_eV
Rydberg energy [eV] (CODATA).
Definition
units.h:48
rizer::units::M_e
constexpr double M_e
Electron molar mass [kg/mol].
Definition
units.h:38
rizer::units::c
constexpr double c
Speed of light [m/s]. Exact (CODATA).
Definition
units.h:32
rizer::units::m_N2
constexpr double m_N2
N2 mass [kg].
Definition
units.h:62
rizer::units::J_to_eV
constexpr double J_to_eV
J -> eV.
Definition
units.h:75
rizer::units::bohr_radius_m
constexpr double bohr_radius_m
Bohr radius [m] (CODATA).
Definition
units.h:46
rizer::units::K_to_eV
constexpr double K_to_eV
K -> eV.
Definition
units.h:71
rizer::units::kJ_per_mol_to_J_per_particle
constexpr double kJ_per_mol_to_J_per_particle
kJ/mol -> J/particle.
Definition
units.h:81
rizer::units::e
constexpr double e
Elementary charge [C]. Exact (CODATA).
Definition
units.h:26
rizer::units::eV_to_K
constexpr double eV_to_K
eV -> K.
Definition
units.h:69
rizer::units::spitzer_constant
const double spitzer_constant
Spitzer conductivity constant [Ohm^-1 m^-1 K^-3/2]:
Definition
units.h:90
rizer::units::m_e
constexpr double m_e
Electron mass [kg] (CODATA 2022).
Definition
units.h:36
rizer::units::Da
constexpr double Da
Dalton / atomic mass constant [kg] (CODATA 2022).
Definition
units.h:40
rizer
Definition
CollisionModel.cpp:7
rizer
cantera_ext
src
units.h
Generated by
1.17.0