Alamo
MC.H
Go to the documentation of this file.
1#ifndef NUMERIC_ADVECT_LIMITER_MC_H
2#define NUMERIC_ADVECT_LIMITER_MC_H
3
4
5#include "Util/Util.H"
6#include "IO/ParmParse.H"
7
8namespace Numeric
9{
10namespace Advect
11{
12namespace Limiter
13{
14class MC
15{
16public:
17 static constexpr const char* name = "mc";
19 {
20 double dl = mid - lo;
21 double dr = hi - mid;
22 return Util::MinMod(double(0.5) * (dl + dr), Util::MinMod(double(2.0) * dl, double(2.0) * dr));
23 }
24
25 void Parse(MC & /*value*/, IO::ParmParse &/*pp*/) {}
26};
27}
28}
29}
30
31
32
33#endif
Set::Scalar operator()(Set::Scalar lo, Set::Scalar mid, Set::Scalar hi) const
Definition MC.H:18
static constexpr const char * name
Definition MC.H:17
void Parse(MC &, IO::ParmParse &)
Definition MC.H:25
This namespace contains some numerical tools.
Definition Advect.H:14
amrex::Real Scalar
Definition Base.H:19
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T MinMod(T a, T b)
Definition Util.H:404