21 "equations and other objects, notably advection Physics.");
23 params.
addParam<PhysicsName>(
"coupled_flow_physics",
24 "WCNSFVFlowPhysics generating the velocities");
25 params.
addParam<PhysicsName>(
"coupled_turbulence_physics",
26 "Turbulence Physics coupled with this Physics");
27 params.
addParamNamesToGroup(
"coupled_flow_physics coupled_turbulence_physics",
"Coupled Physics");
34 : _advection_physics(derived_physics),
35 _flow_equations_physics(getCoupledFlowPhysics()),
36 _compressibility(_flow_equations_physics->compressibility()),
37 _porous_medium_treatment(_flow_equations_physics->porousMediumTreatment()),
38 _velocity_names(_flow_equations_physics->getVelocityNames()),
39 _pressure_name(_flow_equations_physics->getPressureName()),
40 _density_name(_flow_equations_physics->densityName()),
41 _dynamic_viscosity_name(_flow_equations_physics->dynamicViscosityName()),
42 _velocity_interpolation(_flow_equations_physics->getVelocityFaceInterpolationMethod())
62 const auto all_flow_physics =
64 for (
const auto physics : all_flow_physics)
66 physics->name(), physics->blocks(),
false))
71 mooseError(
"No coupled flow Physics found of type derived from 'WCNSFVFlowPhysicsBase'. Use the " 72 "'coupled_flow_physics' parameter to give the name of the desired " 73 "WCNSFVFlowPhysicsBase-derived Physics to couple with");
86 const auto all_turbulence_physics =
88 for (
const auto physics : all_turbulence_physics)
90 physics->name(), physics->blocks(),
false))
static InputParameters validParams()
Creates all the objects needed to add a turbulence model to an incompressible / weakly-compressible N...
MooseFunctorName getPorosityFunctorName(bool smoothed) const
Return the porosity functor name.
void mooseError(Args &&... args)
const T * getCoupledPhysics(const PhysicsName &phys_name, const bool allow_fail=false) const
const WCNSFVFlowPhysicsBase * getCoupledFlowPhysics() const
WCNSFVCoupledAdvectionPhysicsHelper(const NavierStokesPhysicsBase *derived_physics)
bool isParamValid(const std::string &name) const
MooseFunctorName getPorosityFunctorName(const bool smoothed) const
Base class for Physics which create the Navier Stokes flow equations.
const T & getParam(const std::string &name) const
bool checkBlockRestrictionIdentical(const std::string &object_name, const std::vector< SubdomainName > &blocks, const bool error_if_not_identical=true) const
Base class to hold common parameters and utilities between all the weakly compressible Navier Stokes-...
const WCNSFVTurbulencePhysics * getCoupledTurbulencePhysics() const
const NavierStokesPhysicsBase * _advection_physics
The Physics class using this helper.
const WCNSFVFlowPhysicsBase * _flow_equations_physics
Flow physics.