All objects that contribute to pressure-based (e.g. More...
#include <INSFVMomentumResidualObject.h>
Public Member Functions | |
template<typename T > | |
INSFVMomentumResidualObject (T &obj) | |
virtual void | gatherRCData (const Elem &elem)=0 |
Should be a non-empty implementation if the residual object is a FVElementalKernel and introduces residuals that are a function of the velocity, e.g. More... | |
virtual void | gatherRCData (const FaceInfo &fi)=0 |
Should be a non-empty implementation if the residual object is a FVFluxKernel and introduces residuals that are a function of the velocity, e.g. More... | |
virtual | ~INSFVMomentumResidualObject ()=default |
Static Public Member Functions | |
static InputParameters | validParams () |
Protected Attributes | |
RhieChowInterpolatorBase & | _rc_uo |
The Rhie Chow user object that is responsible for generating face velocities for advection terms. More... | |
const unsigned int | _index |
index x|y|z More... | |
All objects that contribute to pressure-based (e.g.
not density-based) Navier-Stokes momentum equation residuals should inherit from this interface class. This holds true for INSFV, PINSFV, and WCNSFV objects (but not CNSFV or PCNSFV). This interface class introduces virtual methods that are used to gather on-diagonal 'a' coefficient data for Rhie-Chow interpolation
Definition at line 24 of file INSFVMomentumResidualObject.h.
INSFVMomentumResidualObject::INSFVMomentumResidualObject | ( | T & | obj | ) |
obj | the residual object that inherits from this interface |
Definition at line 62 of file INSFVMomentumResidualObject.h.
|
virtualdefault |
|
pure virtual |
Should be a non-empty implementation if the residual object is a FVElementalKernel
and introduces residuals that are a function of the velocity, e.g.
friction and time-derivative terms.
Implemented in INSFVMomentumAdvection, PNSFVMomentumPressureFluxRZ, INSFVFluxBC, INSFVFluxKernel, INSFVMomentumPressureFlux, PINSFVFunctorBC, INSFVMomentumBoussinesq, WCNSFVMomentumTimeDerivative, WCNSFVMomentumFluxBC, INSFVBodyForce, INSFVMomentumGravity, INSFVMomentumMeshAdvection, INSFVPump, PINSFVMomentumFriction, INSFVMomentumPressure, and INSFVMomentumTimeDerivative.
Should be a non-empty implementation if the residual object is a FVFluxKernel
and introduces residuals that are a function of the velocity, e.g.
advection, viscosity/diffusion, symmetry boundary conditions, etc.
Implemented in INSFVMomentumAdvection, INSFVVelocityHydraulicSeparatorBC, PNSFVMomentumPressureFluxRZ, INSFVMomentumAdvectionOutflowBC, WCNSFVMomentumFluxBC, INSFVNaturalFreeSlipBC, INSFVMomentumDiffusion, INSFVMomentumPressureFlux, PINSFVFunctorBC, INSFVSymmetryVelocityBC, INSFVVaporRecoilPressureMomentumFluxBC, INSFVWallFunctionBC, INSFVMixingLengthReynoldsStress, INSFVMomentumBoussinesq, INSFVBodyForce, INSFVElementalKernel, INSFVMomentumGravity, INSFVMomentumMeshAdvection, INSFVPump, INSFVTimeKernel, WCNSFV2PMomentumDriftFlux, INSFVMomentumPressure, and PINSFVMomentumFrictionCorrection.
|
static |
Definition at line 14 of file INSFVMomentumResidualObject.C.
Referenced by INSFVMomentumPressure::validParams(), WCNSFVMomentumFluxBC::validParams(), INSFVMomentumGravity::validParams(), INSFVMomentumMeshAdvection::validParams(), INSFVElementalKernel::validParams(), INSFVTimeKernel::validParams(), INSFVFluxKernel::validParams(), INSFVFluxBC::validParams(), INSFVPump::validParams(), INSFVMomentumBoussinesq::validParams(), INSFVBodyForce::validParams(), INSFVMomentumPressureFlux::validParams(), INSFVMomentumAdvection::validParams(), PINSFVFunctorBC::validParams(), and PNSFVMomentumPressureFluxRZ::validParams().
|
protected |
index x|y|z
Definition at line 58 of file INSFVMomentumResidualObject.h.
Referenced by PINSFVMomentumFriction::computeFrictionWCoefficient(), INSFVMomentumGravity::computeQpResidual(), INSFVMomentumBoussinesq::computeQpResidual(), INSFVMomentumPressureFlux::computeQpResidual(), WCNSFVMomentumFluxBC::computeQpResidual(), WCNSFV2PMomentumAdvectionSlip::computeResidualsAndAData(), INSFVMomentumAdvection::computeResidualsAndAData(), INSFVSymmetryVelocityBC::computeSegregatedContribution(), INSFVWallFunctionBC::computeStrongResidual(), WCNSFV2PMomentumDriftFlux::computeStrongResidual(), INSFVMomentumDiffusion::computeStrongResidual(), INSFVMixingLengthReynoldsStress::computeStrongResidual(), PINSFVMomentumFrictionCorrection::gatherRCData(), INSFVMomentumTimeDerivative::gatherRCData(), INSFVMomentumMeshAdvection::gatherRCData(), PINSFVMomentumFriction::gatherRCData(), WCNSFVMomentumTimeDerivative::gatherRCData(), WCNSFV2PMomentumDriftFlux::gatherRCData(), INSFVWallFunctionBC::gatherRCData(), INSFVSymmetryVelocityBC::gatherRCData(), INSFVVaporRecoilPressureMomentumFluxBC::gatherRCData(), INSFVMixingLengthReynoldsStress::gatherRCData(), INSFVMomentumDiffusion::gatherRCData(), INSFVMomentumAdvectionOutflowBC::gatherRCData(), and INSFVMomentumAdvection::gatherRCData().
|
protected |
The Rhie Chow user object that is responsible for generating face velocities for advection terms.
In monolithic solvers, it also collects data from kernels to determine suitable face velocities.
Definition at line 55 of file INSFVMomentumResidualObject.h.
Referenced by INSFVElementalKernel::computeJacobian(), INSFVFluxBC::computeJacobian(), INSFVFluxKernel::computeJacobian(), INSFVFluxKernel::computeQpResidual(), INSFVFluxBC::computeQpResidual(), INSFVElementalKernel::computeResidual(), INSFVFluxBC::computeResidual(), INSFVFluxKernel::computeResidual(), INSFVFluxBC::computeResidualAndJacobian(), INSFVElementalKernel::computeResidualAndJacobian(), INSFVFluxKernel::computeResidualAndJacobian(), INSFVSymmetryVelocityBC::computeSegregatedContribution(), INSFVMomentumAdvectionOutflowBC::computeSegregatedContribution(), PINSFVMomentumFrictionCorrection::gatherRCData(), INSFVMomentumTimeDerivative::gatherRCData(), PINSFVMomentumFriction::gatherRCData(), INSFVMomentumMeshAdvection::gatherRCData(), WCNSFV2PMomentumDriftFlux::gatherRCData(), WCNSFVMomentumTimeDerivative::gatherRCData(), INSFVMixingLengthReynoldsStress::gatherRCData(), INSFVSymmetryVelocityBC::gatherRCData(), INSFVWallFunctionBC::gatherRCData(), INSFVMomentumDiffusion::gatherRCData(), PINSFVFunctorBC::gatherRCData(), INSFVMomentumAdvectionOutflowBC::gatherRCData(), INSFVMomentumAdvection::gatherRCData(), and INSFVWallFunctionBC::INSFVWallFunctionBC().