11 #ifndef _PATCHGODUNOV_H_ 12 #define _PATCHGODUNOV_H_ 21 #include "NamespaceHeader.H" 56 const int& a_normalPredOrder,
58 const bool& a_useFourthOrderSlopes,
60 const bool& a_usePrimLimiting,
62 const bool& a_useCharLimiting,
64 const bool& a_useFlattening,
66 const bool& a_useArtificialViscosity,
68 const Real& a_artificialViscosity);
103 Real& a_maxWaveSpeed,
271 #include "NamespaceFooter.H" void CTUNormalPred(FArrayBox &a_WMinus, FArrayBox &a_WPlus, const Real &a_dt, const Real &a_dx, const FArrayBox &a_W, const FArrayBox &a_flat, const int &a_dir, const Box &a_box)
CTU normal predictor.
ProblemDomain m_domain
Definition: PatchGodunov.H:224
bool m_isCurrentBoxSet
Definition: PatchGodunov.H:256
int m_normalPredOrder
Definition: PatchGodunov.H:234
bool m_useCharLimiting
Definition: PatchGodunov.H:241
A class to facilitate interaction with physical boundary conditions.
Definition: ProblemDomain.H:130
virtual void updateState(FArrayBox &a_U, FluxBox &a_F, Real &a_maxWaveSpeed, const FArrayBox &a_S, const Real &a_dt, const Box &a_box)
Update the conserved variables and return the fluxes used to do this.
virtual bool isDefined() const
Is the object completely defined.
Definition: GodunovUtilities.H:31
void PLMNormalPred(FArrayBox &a_WMinus, FArrayBox &a_WPlus, const Real &a_dt, const Real &a_dx, const FArrayBox &a_W, const FArrayBox &a_flat, const int &a_dir, const Box &a_box)
PLM normal predictor.
bool m_useFourthOrderSlopes
Definition: PatchGodunov.H:237
virtual void computeWHalf(FluxBox &a_WHalf, const FArrayBox &a_U, const FArrayBox &a_S, const Real &a_dt, const Box &a_box)
Compute the time-centered values of the primitive variables on cell faces.
GodunovUtilities m_util
Definition: PatchGodunov.H:231
Real dx() const
Returns the grid spacing at this level.
bool m_useFlattening
Definition: PatchGodunov.H:244
virtual void expressions(HDF5HeaderData &a_holder) const
Definition: PatchGodunov.H:217
virtual void computeUpdate(FArrayBox &a_dU, FluxBox &a_F, const FArrayBox &a_U, const FluxBox &a_WHalf, const Real &a_dt, const Box &a_box)
Compute the increment in the conserved variables from face variables.
Real m_currentTime
Definition: PatchGodunov.H:251
Real m_dx
Definition: PatchGodunov.H:225
virtual void setCurrentBox(const Box &a_currentBox)
Set the current box before calling updateState(), computeWHalf(), computeUpdate().
virtual ~PatchGodunov()
Destructor.
GodunovPhysics * getGodunovPhysicsPtr()
Accessor to get at the GodunovPhysics object.
void highOrderLimiter(bool a_highOrderLimiter)
Set whether to use high-order limiter.
A FArrayBox-like container for face-centered fluxes.
Definition: FluxBox.H:22
double Real
Definition: REAL.H:33
virtual void define(const ProblemDomain &a_domain, const Real &a_dx, const GodunovPhysics *const a_gdnvPhysicsPtr, const int &a_normalPredOrder, const bool &a_useFourthOrderSlopes, const bool &a_usePrimLimiting, const bool &a_useCharLimiting, const bool &a_useFlattening, const bool &a_useArtificialViscosity, const Real &a_artificialViscosity)
Define the object.
bool m_usePrimLimiting
Definition: PatchGodunov.H:240
void computeFluxes(FluxBox &a_F, const FluxBox &a_WHalf, const Box &a_box)
Compute fluxes from primitive variables on faces.
void PPMNormalPred(FArrayBox &a_WMinus, FArrayBox &a_WPlus, const Real &a_dt, const Real &a_dx, const FArrayBox &a_W, const FArrayBox &a_flat, const int &a_dir, const Box &a_box)
PPM normal predictor.
void operator=(const PatchGodunov &)
const ProblemDomain & problemDomain() const
Get the problem domain for this object.
bool m_isCurrentTimeSet
Definition: PatchGodunov.H:252
Definition: GodunovPhysics.H:40
GodunovPhysics * m_gdnvPhysics
Definition: PatchGodunov.H:228
A Rectangular Domain on an Integer Lattice.
Definition: Box.H:465
Box m_currentBox
Definition: PatchGodunov.H:255
Definition: FArrayBox.H:44
Definition: PatchGodunov.H:33
PatchGodunov()
Constructor.
bool m_useArtificialViscosity
Definition: PatchGodunov.H:247
bool m_isDefined
Definition: PatchGodunov.H:259
Real m_artificialViscosity
Definition: PatchGodunov.H:248
virtual void setCurrentTime(const Real &a_currentTime)
Set the current time before calling updateState(), computeWHalf(), computeUpdate().
bool m_highOrderLimiter
Definition: PatchGodunov.H:262