rizer.cantera_ext
C++ Cantera 1-D plasma extension (custom Domain1D models and solvers)
Loading...
Searching...
No Matches
RadialDiffusion.h
Go to the documentation of this file.
1
22
23#ifndef RIZER_RADIAL_DIFFUSION_H
24#define RIZER_RADIAL_DIFFUSION_H
25
27
29
30#include <cstddef>
31#include <vector>
32
33namespace rizer
34{
35
36 class PlasmaChannel1D;
37
45 {
48 const PropertyTable *kappa = nullptr;
51 const PropertyTable *kappa_e = nullptr;
54 double species_diffusivity = 0.0;
57 double ambient_temperature = 0.0;
60 double wall_ghost_density = 0.0;
62 const std::vector<double> *Y_amb = nullptr;
64 const std::vector<double> *molecular_weights = nullptr;
74 const std::vector<double> *species_cp = nullptr;
76 std::size_t electron_index = 0;
78 std::size_t n_species = 0;
79 };
80
99 void addRadialDiffusion(const PlasmaChannel1D &domain,
101 const RadialDiffusionCoefficients &c, std::size_t j,
102 double lhsTg, double lhsTe, double &dTg, double &dTe,
103 double *dYdt, double *scratch);
104
109 {
111 double conduction = 0.0;
113 double diffusion = 0.0;
116 std::vector<double> species_mass;
117 };
118
143 const double *species_enthalpy);
144
145} // namespace rizer
146
147#endif // RIZER_RADIAL_DIFFUSION_H
Transient, two-temperature (Te != Tg), finite-rate reacting 1-D radial plasma channel (custom Cantera...
void addRadialDiffusion(const PlasmaChannel1D &domain, Cantera::span< const double > x, const RadialDiffusionCoefficients &c, std::size_t j, double lhsTg, double lhsTe, double &dTg, double &dTe, double *dYdt, double *scratch)
Add one node's diffusive contributions to the rates the caller holds.
WallEnergyOutflow wallEnergyOutflow(const PlasmaChannel1D &domain, Cantera::span< const double > x, const RadialDiffusionCoefficients &c, const double *species_enthalpy)
What conduction and species diffusion move through the wall face at the state x.
Everything the diffusion block needs that the grid and the state do not carry: the transport coeffici...
std::size_t electron_index
Index of the electron species [-].
const PropertyTable * kappa_e
Electron conductivity [W/m/K]; an empty table switches electron conduction off.
const std::vector< double > * Y_amb
Ambient mass fractions [-], length K: the species ghost.
double ambient_temperature
Wall/ambient temperature [K], the Dirichlet ghost both conduction calls sit against.
double species_diffusivity
Scalar species mass diffusivity [m^2/s]; zero switches the species block, and with it both energy te...
std::size_t n_species
Number of species K [-].
const PropertyTable * kappa
Heavy-pool conductivity [W/m/K]; an empty table switches heavy conduction off.
const std::vector< double > * species_cp
Per-species [J/kg/K], length K.
const std::vector< double > * molecular_weights
Per-species molecular weight [kg/kmol], length K.
double wall_ghost_density
Mass density of the wall ghost half-cell [kg/m^3], which closes the face coefficient of the outermost...
Energy leaving through the wall ghost face per unit time, per unit axial length and per radian [W/m] ...
std::vector< double > species_mass
Mass of each species diffusion carries through the ghost face [kg/m/s], length K; empty when species ...
double diffusion
Enthalpy species diffusion carries through the ghost face [W/m].
double conduction
Conduction of both pools against the ghost temperature [W/m].