21#ifndef RIZER_PLASMA_CELL_H
22#define RIZER_PLASMA_CELL_H
135 const std::shared_ptr<Cantera::Solution> &
solution()
const {
return m_sol; }
151 const std::vector<double> &
speciesCp()
const {
return m_cp_mass; }
179 double Tg,
double Te,
const double *Y,
double rho,
double E,
double &dTg,
180 double &dTe,
double *dY,
double &lhs_Tg,
double &lhs_Te,
181 Diagnostics *diag =
nullptr)
const;
201 double electronDensity(
double Tg,
double Te,
const double *Y,
double rho)
const;
223 double rho,
double &p,
224 double &electron_density)
const;
265 void fillSpeciesCp()
const;
295 double &nu_E,
double &nu_eH,
double &nu_eI,
296 double &nu_eH_mass_weighted)
const;
299 std::shared_ptr<Cantera::Solution> m_sol;
319 std::vector<double> m_wt;
320 std::vector<char> m_is_electron_rxn;
325 std::vector<double> m_eps_th;
327 mutable std::vector<double> m_Yc, m_wdot, m_uk, m_cpR, m_rop, m_X, m_nk;
330 mutable std::vector<double> m_cp_mass;
The two-temperature quantities every model in this extension reads back from a PlasmaPhase,...
The error a closure raises for a state it cannot evaluate, so that the integrator proposing that stat...
Composition-resolved electron-heavy momentum-transfer collision model.
std::size_t electronIndex() const
double electronDensity(double Tg, double Te, const double *Y, double rho) const
Electron number density [1/m^3], .
void updateSpeciesCp(double Tg, double Te, const double *Y, double rho) const
Refresh speciesCp() at one state without evaluating anything else.
const std::shared_ptr< Cantera::Solution > & solution() const
The Solution this cell evaluates on, so a caller can build a second cell on the same mechanism rather...
void pressureAndElectronDensity(double Tg, double Te, const double *Y, double rho, double &p, double &electron_density) const
Total pressure [Pa] and electron number density [1/m^3] together, from the two-temperature equation o...
void sourceTerms(double Tg, double Te, const double *Y, double rho, double E, double &dTg, double &dTe, double *dY, double &lhs_Tg, double &lhs_Te, Diagnostics *diag=nullptr) const
Single-cell RHS (no transport, no volume work).
const std::vector< double > & molecularWeights() const
PlasmaCell(std::shared_ptr< Cantera::Solution > sol, PlasmaCellConfig cfg)
Construct a PlasmaCell for a given plasma Solution and configuration.
const std::vector< double > & speciesCp() const
Mass-basis species heat capacity at constant pressure c_p,k [J/kg/K], length nSpecies(),...
void speciesEnthalpies(double Tg, double Te, const double *Y, double rho, double *h) const
Mass-basis species enthalpy h_k [J/kg], the energy one kilogram of species k carries in when the spec...
std::size_t nSpecies() const
double electricalConductivity(double Tg, double Te, const double *Y, double rho) const
Electrical conductivity [S/m] at a node state.
std::string speciesName(std::size_t k) const
Name of species k in the mechanism.
double nu_m
Scalar electron momentum-transfer frequency, used when nu_m_T/nu_m_v are empty [1/s].
CollisionModel collision
Composition-resolved sigma/nu_E (preferred).
std::vector< double > sigma_v
sigma(Te) table: electrical conductivity values at sigma_T [S/m]
bool reacting
Include finite-rate chemistry source terms (true) or freeze composition (false) [-].
std::vector< double > species_h0k
Per-species standard enthalpy of formation at 0 K [J/kmol], length nSpecies(), in mechanism species-i...
std::vector< double > nu_m_v
nu_m(Te) table: electron momentum-transfer frequency values at nu_m_T [1/s]
double nu_E
Scalar elastic electron-heavy energy-exchange frequency, used when collision is empty [1/s].
std::vector< double > nu_m_T
nu_m(Te) table: electron-temperature grid points [K], strictly increasing
std::vector< double > sigma_T
sigma(Te) table: electron-temperature grid points [K], strictly increasing
Optional power / Maxwellian-condition breakdown filled by rates() when a non-null pointer is passed.
double nu_eH
Electron-electron collision frequency [1/s] (Mitchner II-8.11e).
double P_elastic
< Elastic electron-heavy exchange power [W/m^3]
double P_chemical_e
Joule heating power [W/m^3].
double nu_eH_mass_weighted
double nu_ee
Electron-ion momentum-transfer collision frequency [1/s].
double P_Joule
Electron-heavy momentum-transfer collision frequency [1/s] (Mitchner II-13.3).
double P_inelastic
Heavy-species chemical power [W/m^3].
double nu_eI
sum_h nu_eh/m_h [1/kg/s] (Mitchner VIII-3.8, term 2)
double P_chemical_H
Electron chemical power [W/m^3].
The two-temperature equation of state at the state currently set on a phase, PHYSICS....