52 const VectorValue<T> * grad_phi_upwind,
53 const VectorValue<T> * ,
54 const RealVectorValue & dCD,
55 const Real & max_value,
56 const Real & min_value,
58 const bool & )
const override final
60 mooseAssert(grad_phi_upwind,
"SOU limiter requires a gradient");
64 T delta_face = abs((*grad_phi_upwind) * dCD);
65 T delta_max = abs(max_value - min_value);
67 if (delta_face > 1e-10)
68 return min(1.0, delta_max / delta_face);
73 bool constant() const override final {
return false; }
This data structure is used to store geometric and variable related metadata about each cell face in ...
Base class for defining slope limiters for finite volume or potentially reconstructed Discontinuous-G...
The SOU limiter is used for reproducing the second-order-upwind scheme.
bool constant() const override final
T limit(const T &, const T &, const VectorValue< T > *grad_phi_upwind, const VectorValue< T > *, const RealVectorValue &dCD, const Real &max_value, const Real &min_value, const FaceInfo *, const bool &) const override final
This method overrides the pure virtual limit method in the base Limiter class.
InterpMethod interpMethod() const override final
InterpMethod
This codifies a set of available ways to interpolate with elem+neighbor solution information to calcu...
MOOSE now contains C++17 code, so give a reasonable error message stating what the user can do to add...