rizer.cantera_ext
C++ Cantera 1-D plasma extension (custom Domain1D models and solvers)
Loading...
Searching...
No Matches
rizer::HydroStepResult Struct Reference

Diagnostics from one call, enough to assert NUMERICS.md section "Positivity under a strong rarefaction", case 19, without re-deriving the sub-cycling in the test. More...

#include <HydroStep.h>

Public Attributes

std::size_t n_subcycles_used = 0
 M actually taken [-].
double dt_cfl = 0.0
 CFL bound at the initial state [s].
double rho_min = 0.0
 Min rho over every node and sub-cycle [kg/m^3].
double p_min = 0.0
 Min total p over every node and sub-cycle [Pa].
double boundary_mass_out = 0.0
 Mass that left the domain across both boundary faces over the whole call, per unit axial length and per radian [kg/m/rad].
std::vector< double > boundary_species_mass_out
 The same, per species [kg/m/rad], length K.
double boundary_total_energy_out = 0.0
 TOTAL energy that left the domain across both boundary faces over the whole call, per unit axial length and per radian [J/m/rad] – see boundary_mass_out for why the \(2\pi\) is absent.
double boundary_electron_energy_out = 0.0
 Electron-pool INTERNAL energy that left the domain across both boundary faces over the whole call, per unit axial length and per radian [J/m/rad].
double pressure_work_electron = 0.0
 Compression work done BY the electron pool over the whole call, per unit axial length and per radian [J/m/rad]: the volume integral of \(p_\mathrm{e}\vec\nabla\cdot\vec u\) accumulated over every sub-cycle.

Detailed Description

Diagnostics from one call, enough to assert NUMERICS.md section "Positivity under a strong rarefaction", case 19, without re-deriving the sub-cycling in the test.

Definition at line 178 of file HydroStep.h.

Member Data Documentation

◆ boundary_electron_energy_out

double rizer::HydroStepResult::boundary_electron_energy_out = 0.0

Electron-pool INTERNAL energy that left the domain across both boundary faces over the whole call, per unit axial length and per radian [J/m/rad].

Positive is outward at the wall, as for the total.

The electron row is not conservative and is not meant to be: it keeps the physical \(-p_\mathrm{e}\vec\nabla\cdot\vec u\) source, so its own identity is the three-term one, "change plus accumulated boundary flux plus accumulated compression work is zero". The heavy pool has no counterpart here because it has no row: it is recovered as total minus kinetic minus electron.

Te is inverted from the row in every cell, since a cell holding no electrons raises; the identity therefore holds at every node.

Definition at line 233 of file HydroStep.h.

◆ boundary_mass_out

double rizer::HydroStepResult::boundary_mass_out = 0.0

Mass that left the domain across both boundary faces over the whole call, per unit axial length and per radian [kg/m/rad].

Positive is outward at the wall.

Per RADIAN, like V_cell: these are face fluxes rather than cell updates, so the \(2\pi\) of the azimuthal integration does not cancel out of them the way it does out of the state (NUMERICS.md section 2). The identities below balance them against domain sums built on that same V_cell, so both sides carry the convention and the identities hold; multiply by \(2\pi\) for a physical mass. Mass genuinely crosses the wall under either outer boundary, so NUMERICS.md section 10's check is "domain mass change PLUS accumulated boundary flux is zero", not "domain mass constant"; without this the test cannot tell a real outflow from a conservation bug. Outward flow makes this positive and the domain's mass change negative, which is why the two add rather than cancel.

Definition at line 203 of file HydroStep.h.

◆ boundary_species_mass_out

std::vector<double> rizer::HydroStepResult::boundary_species_mass_out

The same, per species [kg/m/rad], length K.

Definition at line 205 of file HydroStep.h.

◆ boundary_total_energy_out

double rizer::HydroStepResult::boundary_total_energy_out = 0.0

TOTAL energy that left the domain across both boundary faces over the whole call, per unit axial length and per radian [J/m/rad] – see boundary_mass_out for why the \(2\pi\) is absent.

Positive is outward at the wall, as for the mass counterpart.

This is the enthalpy flux \(r\,u_r(\rho E + p)\), so it already contains the compression work: the total-energy row is a pure flux difference with nothing on its right-hand side. NUMERICS.md section 10's identity is therefore the same shape as the mass one, "domain total energy change plus accumulated boundary flux is zero", and holds to round-off.

Definition at line 218 of file HydroStep.h.

◆ dt_cfl

double rizer::HydroStepResult::dt_cfl = 0.0

CFL bound at the initial state [s].

Definition at line 181 of file HydroStep.h.

◆ n_subcycles_used

std::size_t rizer::HydroStepResult::n_subcycles_used = 0

M actually taken [-].

Definition at line 180 of file HydroStep.h.

◆ p_min

double rizer::HydroStepResult::p_min = 0.0

Min total p over every node and sub-cycle [Pa].

Definition at line 185 of file HydroStep.h.

◆ pressure_work_electron

double rizer::HydroStepResult::pressure_work_electron = 0.0

Compression work done BY the electron pool over the whole call, per unit axial length and per radian [J/m/rad]: the volume integral of \(p_\mathrm{e}\vec\nabla\cdot\vec u\) accumulated over every sub-cycle.

Positive where the pool expands and gives energy up, negative where it is compressed. It carries the same outward sign as the boundary flux beside it, so the two ADD in the identity above rather than cancelling: the cell update subtracts both the flux difference and \(p_\mathrm{e}\vec\nabla\cdot\vec u\), which makes the change the negative of their sum.

Definition at line 244 of file HydroStep.h.

◆ rho_min

double rizer::HydroStepResult::rho_min = 0.0

Min rho over every node and sub-cycle [kg/m^3].

Always positive on return: a non-positive density raises instead of being repaired.

Definition at line 184 of file HydroStep.h.


The documentation for this struct was generated from the following file:
  • /home/runner/work/rizer/rizer/rizer/cantera_ext/models/nrp/HydroStep.h