rizer.cantera_ext
C++ Cantera 1-D plasma extension (custom Domain1D models and solvers)
Loading...
Searching...
No Matches
BoundaryConditions.h
Go to the documentation of this file.
1
11
12#ifndef RIZER_BOUNDARY_CONDITIONS_H
13#define RIZER_BOUNDARY_CONDITIONS_H
14
15#include <functional>
16#include <string>
17#include <vector>
18
19namespace rizer
20{
21
24 struct NodeState
25 {
26 double rho = 0.0;
27 double u_r = 0.0;
28 double Tg = 0.0;
29 double Te = 0.0;
30 std::vector<double> Y;
31 };
32
56
64 OuterBc parseOuterBc(const std::string &mode);
65
89 using GhostStateFn = std::function<NodeState(
90 double r_ghost, double t, bool is_inner_face, const NodeState &interior)>;
91
92} // namespace rizer
93
94#endif // RIZER_BOUNDARY_CONDITIONS_H
OuterBc parseOuterBc(const std::string &mode)
Map an outer_bc_mode config string onto the enum.
std::function< NodeState( double r_ghost, double t, bool is_inner_face, const NodeState &interior)> GhostStateFn
Fill the outer ghost cell from a closed-form solution, a fixed end state, or a mirror of the interior...
OuterBc
Outer-boundary treatment (NUMERICS.md section 7).
@ AmbientGhost
Fix rho, u_r, p, T and Y_s to ambient.
@ PressureOutlet
Hold p = p_amb at the boundary face, extrapolate u_r/Tg/Te/Y_s with zero gradient,...
Primitive state at one radial node, as the ghost-state callback sees it and returns it.
double Te
Electron temperature [K].
std::vector< double > Y
Species mass fractions [-], length K.
double Tg
Heavy-pool temperature [K].
double u_r
Radial velocity [m/s].
double rho
Mass density [kg/m^3].