Momentum flux kernel for porous equations written in superficial velocity.
Real computeElemRightHandSideContribution() override
Compute the element-row internal-face right-hand-side contribution.
Real computeAdvectionBoundaryMatrixContribution(const LinearFVAdvectionDiffusionBC *bc) override
Compute the boundary advection matrix contribution with local porosity scaling.
bool isClearFluidSide(bool elem_side) const
Whether one side of the current face is clear fluid, i.e.
const PorousRhieChowMassFlux & _porous_mass_flux_provider
Porous Rhie-Chow object supplying porosity and pressure-baffle data.
void addMatrixContribution() override
Assemble the internal-face matrix with side-specific porosity scaling of advection.
Real computeNeighborRightHandSideContribution() override
Compute the neighbor-row internal-face right-hand-side contribution.
Real computeAdvectionBoundaryRHSContribution(const LinearFVAdvectionDiffusionBC *bc) override
Compute the boundary advection right-hand-side contribution with local porosity scaling.
static InputParameters validParams()
Real inversePorosity(bool elem_side) const
Return the inverse porosity on one side of the current face.
BaffleStressData baffleStressData() const
Compute the stress on the current baffle face, per unit face area.
Real computeBaffleAdvectionExplicitCorrection(bool elem_side) const
Compute the correction that replaces the shared advected state with the baffle face state: the upstre...
Kernel that implements the stress tensor and advection terms for the momentum equation.
Computes Rhie-Chow face mass fluxes for porous flow with optional internal pressure jumps.
Implicit coefficients and deferred right-hand sides of the stress on a baffle face.
Real elem_rhs
Explicit parts of the element and neighbor rows.
Real elem_elem
Coefficients of the element row on the element and neighbor values.
Real neighbor_elem
Coefficients of the neighbor row on the element and neighbor values.