26 "Provide a functor that returns the density.");
28 "provided by advected_quantity over a boundary.");
36 mooseError(
"This object only works only with finite volume.");
38 checkFunctorSupportsSideIntegration<ADReal>(
"density",
_qp_integration);
51 mooseAssert(fi,
"We should have a face info in " +
name());
52 mooseAssert(
_adv_quant,
"We should have an advected quantity in " +
name());
58 const bool correct_skewness =
62 "Advected quantity must be defined on one of the sides of the face!");
65 "Density must be defined at least on one of the sides where the advected quantity is " 73 _adv_quant->hasFaceSide(*fi,
true) ? fi->elemPtr() : fi->neighborPtr(),
75 auto dens =
_density(face_arg, state);
78 return face_flux * adv_quant_face;
Moose::FV::InterpMethod _advected_interp_method
The interpolation method to use for the advected quantity.
virtual Real computeFaceInfoIntegral(const FaceInfo *fi) override
registerMooseObject("NavierStokesApp", MassFluxWeightedFlowRate)
const Moose::Functor< ADReal > & _density
density provided as functor
Moose::StateArg determineState() const
virtual void threadJoin(const UserObject &y) override
const std::vector< double > y
virtual const std::string & name() const
static InputParameters validParams()
virtual void initialize() override
LimiterType limiterType(InterpMethod interp_method)
static InputParameters validParams()
virtual void finalize() override
const RhieChowFaceFluxProvider *const _rc_uo
The Rhie-Chow interpolation user object.
This postprocessor computes the mass-flux weighted average of a flow quantity over a boundary...
const Moose::Functor< ADReal > *const _adv_quant
The functor representing the advected quantity for finite volume.
virtual void finalize() override
This postprocessor computes the volumetric flow rate through a boundary, internal or external to the ...
virtual Real getValue() const override
virtual void threadJoin(const UserObject &y) override
virtual void initialize() override
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
Moose::FV::InterpMethod _velocity_interp_method
The interpolation method to use for the velocity.
Real _mdot
the mass flow rate over the face computed by this object
void mooseError(Args &&... args) const
MassFluxWeightedFlowRate(const InputParameters ¶meters)
virtual Real getVolumetricFaceFlux(const Moose::FV::InterpMethod m, const FaceInfo &fi, const Moose::StateArg &time, const THREAD_ID tid, bool subtract_mesh_velocity) const =0
Retrieve the volumetric face flux, will not include derivatives.