18 #include <CD_NamespaceHeader.H>
97 const EBCellFAB& a_cellPhi,
99 const ProblemDomain& a_domain,
101 const DataIndex& a_dit);
120 upwind(EBFluxFAB& a_facePhi,
121 const EBCellFAB& a_normalSlopes,
122 const EBCellFAB& a_cellPhi,
123 const EBCellFAB& a_cellVel,
124 const EBFluxFAB& a_faceVel,
125 const ProblemDomain& a_domain,
126 const Box& a_cellBox,
128 const DataIndex& a_dit,
143 minmod(
const Real& dwl,
const Real& dwr)
const noexcept;
151 superbee(
const Real& dwl,
const Real& dwr)
const noexcept;
162 #include <CD_NamespaceFooter.H>
Declaration of a class which implements CdrMultigrid using Godunov-type advection.
Extensions of CdrSolver which use EBHelmholtzOp for diffusion solves.
Class that uses a slope limited method for advection, in combination with corner transport upwind (CT...
Definition: CD_CdrCTU.H:24
virtual void upwind(EBFluxFAB &a_facePhi, const EBCellFAB &a_normalSlopes, const EBCellFAB &a_cellPhi, const EBCellFAB &a_cellVel, const EBFluxFAB &a_faceVel, const ProblemDomain &a_domain, const Box &a_cellBox, const int &a_level, const DataIndex &a_dit, const Real &a_dt)
Upwind/Riemann solve. This extrapolates the cell-centered data to the inside face centers and selects...
Definition: CD_CdrCTU.cpp:460
Real superbee(const Real &dwl, const Real &dwr) const noexcept
Superbee slope limiter.
Definition: CD_CdrCTU.cpp:774
CdrCTU()
Default constructor.
Definition: CD_CdrCTU.cpp:22
virtual void parseOptions() override
Parse class options to put object in usable state.
Definition: CD_CdrCTU.cpp:39
Real minmod(const Real &dwl, const Real &dwr) const noexcept
minmod slope function.
Definition: CD_CdrCTU.cpp:762
Limiter
Supported limiters.
Definition: CD_CdrCTU.H:69
virtual void parseSlopeLimiter()
Parse slope limiting on/off.
Definition: CD_CdrCTU.cpp:152
Real monotonizedCentral(const Real &dwl, const Real &dwr) const noexcept
Monotonized central difference slope limiter.
Definition: CD_CdrCTU.cpp:791
virtual Real computeAdvectionDt() override
Compute the largest possible advective time step (for explicit methods)
Definition: CD_CdrCTU.cpp:73
virtual void computeNormalSlopes(EBCellFAB &a_normalSlopes, const EBCellFAB &a_cellPhi, const Box &a_cellBox, const ProblemDomain &a_domain, const int a_level, const DataIndex &a_dit)
Compute slopes.
Definition: CD_CdrCTU.cpp:246
virtual void parseRuntimeOptions() override
Parse runtime options.
Definition: CD_CdrCTU.cpp:56
virtual void advectToFaces(EBAMRFluxData &a_facePhi, const EBAMRCellData &a_cellPhi, const Real a_dt) override
MUSCL advection to faces.
Definition: CD_CdrCTU.cpp:183
bool m_useCTU
If true, the discretization uses CTU. Otherwise it's DCU (donor cell upwind)
Definition: CD_CdrCTU.H:84
Limiter m_limiter
If true, slopes are limited in the normal dircetion.
Definition: CD_CdrCTU.H:79
virtual ~CdrCTU()
Destructor (does nothing)
Definition: CD_CdrCTU.cpp:33
Extension class of CdrSolver that uses multigrid for diffusion part. Can also solve for stochastic di...
Definition: CD_CdrMultigrid.H:35