28 "vanLeer=0 upwind=1 central_difference=2 min_mod=3 sou=4 quick=5 venkatakrishnan=6",
"upwind");
31 std::unique_ptr<Limiter<T>>
37 return std::make_unique<VanLeerLimiter<T>>();
40 return std::make_unique<UpwindLimiter<T>>();
43 return std::make_unique<CentralDifferenceLimiter<T>>();
46 return std::make_unique<MinModLimiter<T>>();
49 return std::make_unique<SOULimiter<T>>();
52 return std::make_unique<QUICKLimiter<T>>();
55 return std::make_unique<VenkatakrishnanLimiter<T>>();
58 mooseError(
"Unrecognized limiter type ",
unsigned(limiter));
65 switch (interp_method)
90 mooseError(
"Unrecognized interpolation method type.");
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
LimiterType limiterType(InterpMethod interp_method)
Return the limiter type associated with the supplied interpolation method.
const MooseEnum moose_limiter_type
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type It sho...
(gc*elem+(1-gc)*neighbor)+gradient*(rf-rf')
MOOSE now contains C++17 code, so give a reasonable error message stating what the user can do to add...
InterpMethod
This codifies a set of available ways to interpolate with elem+neighbor solution information to calcu...
static std::unique_ptr< Limiter > build(LimiterType limiter)