17#ifndef RIZER_REACTOR_RHS_H
18#define RIZER_REACTOR_RHS_H
110 const std::shared_ptr<Cantera::Solution>&
solution()
const {
return m_sol; }
126 const std::vector<double>&
speciesCp()
const {
return m_cp_mass; }
145 void rates(
double Tg,
double Te,
const double* Y,
double rho,
double E,
double& dTg,
146 double& dTe,
double* dY,
double& lhs_Tg,
double& lhs_Te,
147 Diagnostics* diag =
nullptr)
const;
154 double conductivity(
double Tg,
double Te,
const double* Y,
double rho)
const;
160 double electronDensity(
double Tg,
double Te,
const double* Y,
double rho)
const;
174 void setState(
double Tg,
double Te,
const double* Y,
double rho,
double& P,
175 double& Xe,
double& Tmean,
double& n_e)
const;
191 void transport(
double Te,
double n_e,
double P,
double Tmean,
double& sigma,
192 double& nu_E,
double& nu_eH,
double& nu_eI,
193 double& nu_eH_mass_weighted)
const;
195 std::shared_ptr<Cantera::Solution> m_sol;
204 std::vector<double> m_wt;
205 std::vector<char> m_is_electron_rxn;
210 std::vector<double> m_eps_th;
211 mutable std::vector<double> m_Yc, m_wdot, m_uk, m_cpR, m_rop, m_X, m_nk;
213 mutable std::vector<double> m_cp_mass;
Composition-resolved electron-heavy momentum-transfer collision model.
double conductivity(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.
ReactorRHS(std::shared_ptr< Cantera::Solution > sol, Config cfg)
Construct a ReactorRHS for a given plasma Solution and configuration.
double electronDensity(double Tg, double Te, const double *Y, double rho) const
Electron number density [1/m^3], .
void rates(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).
std::size_t nSpecies() const
const std::shared_ptr< Cantera::Solution > & solution() const
std::size_t electronIndex() const
const std::vector< double > & speciesCp() const
Mass-basis species heat capacity at constant pressure c_p,k [J/kg/K], length nSpecies(),...
const std::vector< double > & molecularWeights() const
bool reacting
Include finite-rate chemistry source terms (true) or freeze composition (false) [-].
std::vector< double > sigma_v
sigma(Te) table: electrical conductivity values at sigma_T [S/m]
CollisionModel collision
Composition-resolved sigma/nu_E (preferred).
std::vector< double > nu_m_T
nu_m(Te) table: electron-temperature grid points [K], strictly increasing
std::vector< double > species_h0k
Per-species standard enthalpy of formation at 0 K [J/kmol], length nSpecies(), in mechanism species-i...
double nu_m
Scalar electron momentum-transfer frequency, used when nu_m_T/nu_m_v are empty [1/s].
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 > 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 P_Joule
Joule heating power [W/m^3].
double nu_eH
Electron-heavy momentum-transfer collision frequency [1/s] (Mitchner II-13.3).
double P_chemical_e
Electron chemical power [W/m^3].
double P_chemical
Heavy-species chemical power [W/m^3].
double P_inelastic
Inelastic electron-impact-reaction power [W/m^3].
double nu_eI
Electron-ion momentum-transfer collision frequency [1/s].
double nu_ee
Electron-electron collision frequency [1/s] (Mitchner II-8.11e).
double P_elastic
Elastic electron-heavy exchange power [W/m^3].
double nu_eH_mass_weighted
sum_h nu_eh/m_h [1/kg/s] (Mitchner VIII-3.8, term 2)