rizer.cantera_ext
C++ Cantera 1-D plasma extension (custom Domain1D models and solvers)
Loading...
Searching...
No Matches
GammaLawThermo.h
Go to the documentation of this file.
1
8
9#ifndef RIZER_GAMMA_LAW_THERMO_H
10#define RIZER_GAMMA_LAW_THERMO_H
11
13
14#include <vector>
15
16namespace rizer
17{
18
28 {
29 public:
39 GammaLawThermo(double gamma, std::vector<double> molecular_weights,
40 int electron_index);
41
42 void pressures(double r, double t, double rho, double Tg, double Te,
43 const double *Y, double &p_heavy,
44 double &p_electron) const override;
45 double soundSpeed(double r, double t, double rho, double Tg, double Te,
46 const double *Y) const override;
47 double heavyEnergy(double Tg, const double *Y) const override;
48 double electronCv() const override;
49 double densityFromPressure(double pressure, double Tg, double Te,
50 const double *Y) const override;
51 double heavyTemperature(double rho, const double *Y,
52 double heavy_internal_energy_target,
53 double Tg_seed) const override;
54
55 private:
58 double heavyMolesPerMass(const double *Y) const;
60 double electronMolesPerMass(const double *Y) const;
61
62 double m_gamma;
63 std::vector<double> m_W;
64 int m_electron_index;
65 };
66
67} // namespace rizer
68
69#endif // RIZER_GAMMA_LAW_THERMO_H
The equation-of-state seam of the hydrodynamic sub-step: the abstract accessor hydroStep() closes its...
double soundSpeed(double r, double t, double rho, double Tg, double Te, const double *Y) const override
Sound speed, PHYSICS.md appendix A.4: the frozen two-pool speed , each pool following its own adiaba...
double densityFromPressure(double pressure, double Tg, double Te, const double *Y) const override
Density reproducing a target total pressure at a given temperature pair and composition – the inverse...
double heavyTemperature(double rho, const double *Y, double heavy_internal_energy_target, double Tg_seed) const override
Invert for at fixed density and composition (NUMERICS.md section 8).
GammaLawThermo(double gamma, std::vector< double > molecular_weights, int electron_index)
double electronCv() const override
Electron specific heat at constant volume, per kg of ELECTRONS, .
void pressures(double r, double t, double rho, double Tg, double Te, const double *Y, double &p_heavy, double &p_electron) const override
Per-pool partial pressures, PHYSICS.md equation (G6).
double heavyEnergy(double Tg, const double *Y) const override
Heavy-pool internal energy per kg of MIXTURE, – the basis that makes the conserved variable of equa...
Equation-of-state and caloric accessor injected into hydroStep().