11 #ifndef _AMRLEVELCONS_H_ 12 #define _AMRLEVELCONS_H_ 27 #include "NamespaceHeader.H" 186 virtual void noPPM(
bool a_noPPM);
414 #include "NamespaceFooter.H" virtual void refinementThreshold(Real a_refineThresh)
Set the refinement threshold.
replaces coarse level data with an average of fine level data.
Definition: CoarseAverage.H:30
virtual void regrid(const Vector< Box > &a_newGrids)
Set up data on this level after regridding.
AMRLevelCons * getCoarserLevel() const
LevelConsOperator * m_levelConsOperatorPtr
Definition: AMRLevelCons.H:384
virtual Real maxVorticity(LevelData< FArrayBox > &a_vecMag)
Compute max vorticity of m_Unew, and store their magnitudes in a_vecMag.
virtual void enforceMinVal(bool a_enforceMinVal, Real a_minVal)
sets whether to enforce a min value
An irregular domain on an integer lattice.
Definition: IntVectSet.H:44
virtual void postInitialize()
Things to do after initialization.
A class to facilitate interaction with physical boundary conditions.
Definition: ProblemDomain.H:141
void operator=(const AMRLevelCons &a_input)
virtual void domainLength(Real a_domainLength)
Set the physical dimension of the longest side of the domain.
void computeVorticity(LevelData< FArrayBox > &a_vorticity, const LevelData< FArrayBox > &a_U) const
Real m_ratioArtVisc
Definition: AMRLevelCons.H:330
virtual void tagVorticity(bool a_tagVorticity)
Set whether to tag on vorticity instead of on density.
virtual void setDefaultValues()
bool m_forwardEuler
Definition: AMRLevelCons.H:333
virtual void writePlotLevel(HDF5Handle &a_handle) const
Write plotfile data for this level.
bool m_useArtVisc
Definition: AMRLevelCons.H:327
bool m_hasFiner
Definition: AMRLevelCons.H:409
bool m_enforceMinVal
Definition: AMRLevelCons.H:336
virtual Real computeInitialDt()
Compute dt using initial data.
virtual void writeCheckpointLevel(HDF5Handle &a_handle) const
Write checkpoint data for this level.
virtual void ratioArtVisc(Real a_ratioArtVisc)
sets coefficient of artificial viscosity
Fourth-order interpolation in space.
Definition: FourthOrderFineInterp.H:25
AMRLevelCons()
Constructor.
bool m_refinementIsScaled
Definition: AMRLevelCons.H:396
Abstract base class for time-dependent data at a level of refinement.
Definition: AMRLevel.H:47
virtual void writePlotHeader(HDF5Handle &a_handle) const
Write plotfile header.
Definition: MOLPhysics.H:37
virtual int indexForTagging()
Index within primitive variables for tagging cells.
bool m_tagPressure
Definition: AMRLevelCons.H:399
virtual void useArtVisc(bool a_useArtVisc)
sets whether to use artificial viscosity
DisjointBoxLayout loadBalance(const Vector< Box > &a_grids)
virtual void readCheckpointLevel(HDF5Handle &a_handle)
Read checkpoint data for this level.
bool m_highOrderLimiter
if true, use high-order limiter
Definition: AMRLevelCons.H:318
Real m_artificialViscosity
Definition: AMRLevelCons.H:351
AMR Level for fourth-order solution to conservation law.
Definition: AMRLevelCons.H:32
Real m_r0
Definition: AMRLevelCons.H:306
Vector< std::string > m_stateNames
Definition: AMRLevelCons.H:369
LevelData< FArrayBox > m_Uold
Definition: AMRLevelCons.H:303
virtual void levelSetup()
virtual void tagCells(IntVectSet &a_tags)
Create tags for regridding.
bool m_doDeconvolution
Definition: AMRLevelCons.H:342
virtual Real getMaxWaveSpeed(const LevelData< FArrayBox > &a_U)
Return maximum speed from conserved variables.
virtual void initialData()
Initialize data: Set m_Unew at time 0.
virtual void CFL(Real a_cfl)
Set the CFL number.
void tagBufferSize(int a_tagBufferSize)
Set the tag buffer size.
virtual void readCheckpointHeader(HDF5Handle &a_handle)
Read checkpoint header.
LevelData< FArrayBox > * U()
Accessors.
Definition: AMRLevelCons.H:248
virtual void useArtificialViscosity(bool a_useArtificialViscosity)
sets whether to use artificial viscosity (from divergence)
virtual Real computeDt()
Returns the dt computed earlier for this level.
virtual void transferSettingsFromAMRLevel(AMRLevelCons *a_amrConsPtr)
LevelFluxRegister m_fluxRegister
Definition: AMRLevelCons.H:387
virtual void artificialViscosity(Real a_artificialViscosity)
sets coefficient of artificial viscosity (from divergence)
bool m_tagVorticity
Definition: AMRLevelCons.H:402
FourthOrderFineInterp m_fineInterp
Definition: AMRLevelCons.H:381
Real m_dx
Definition: AMRLevelCons.H:357
virtual void initialGrid(const Vector< Box > &a_newGrids)
Initialize grids.
virtual void forwardEuler(bool a_forwardEuler)
sets whether forward Euler is used (instead of RK4)
bool m_doFaceDeconvolution
Definition: AMRLevelCons.H:345
virtual void tagPressure(bool a_tagPressure)
Set whether to tag on pressure instead of on density.
AMR Cons Equation factory.
Definition: AMRLevelConsFactory.H:22
CoarseAverage * m_coarseAveragePtr
Definition: AMRLevelCons.H:360
virtual void postTimeStep()
Things to do after a timestep – reflux.
virtual void defineDataHolders()
Define m_Unew and m_Uold.
Real m_minVal
Definition: AMRLevelCons.H:354
double Real
Definition: REAL.H:33
virtual void doFaceDeconvolution(bool a_doFaceDeconvolution)
sets m_doFaceDeconvolution
virtual ~AMRLevelCons()
Destructor.
A BoxLayout that has a concept of disjointedness.
Definition: DisjointBoxLayout.H:30
Real m_refineThresh
Definition: AMRLevelCons.H:393
virtual void setData(LevelData< FArrayBox > &a_U, Real a_time) const
Set a_U at time a_time.
virtual void advanceU()
Advance by one timestep by RK4.
virtual void limitFaceValues(bool a_limitFaceValues)
sets whether to limit face values in operator
void molPhysics(const MOLPhysics *const a_molPhysics)
Set the MOLPhysics class.
virtual Real computeNewDt()
Compute new timestep from m_Unew, and store it in m_dtNew.
DisjointBoxLayout m_grids
Definition: AMRLevelCons.H:411
virtual void highOrderLimiter(bool a_highOrderLimiter)
LevelFluxRegister-A class to encapsulate a levels worth of flux registers.
Definition: LevelFluxRegister.H:29
virtual void spaceOrder(int a_spaceOrder)
Set the spatial order of accuracy.
IntVect m_ghostVect
Definition: AMRLevelCons.H:375
int m_numStates
Definition: AMRLevelCons.H:366
virtual void refinementIsScaled(bool a_refinementIsScaled)
Set whether refinement threshold is scaled with dx.
bool m_noPPM
Definition: AMRLevelCons.H:339
virtual void useFlattening(bool a_useFlattening)
sets whether to flatten extrapolations to faces
Level Cons Operator - a class for evaluating the Laplacian.
Definition: LevelConsOperator.H:35
virtual void writeCheckpointHeader(HDF5Handle &a_handle) const
Write checkpoint header.
bool m_useArtificialViscosity
Definition: AMRLevelCons.H:348
Handle to a particular group in an HDF file.
Definition: CH_HDF5.H:294
int m_numGhost
Definition: AMRLevelCons.H:372
bool m_limitFaceValues
Definition: AMRLevelCons.H:315
An integer Vector in SpaceDim-dimensional space.
Definition: CHArray.H:42
virtual void addDissipation()
add dissipation to m_Unew: Kreiss-Oliger artificial viscosity
virtual Real advance()
Advance by one timestep by RK4, and return new timestep.
AMRLevelCons * getFinerLevel() const
LevelData< FArrayBox > m_Unew
Definition: AMRLevelCons.H:303
MOLPhysics * m_molPhysics
Definition: AMRLevelCons.H:390
virtual void doDeconvolution(bool a_doDeconvolution)
sets m_doDeconvolution
virtual void define(AMRLevel *a_coarserLevelPtr, const ProblemDomain &a_problemDomain, int a_level, int a_refRatio)
Define new AMR level.
bool m_hasCoarser
Definition: AMRLevelCons.H:408
virtual void noPPM(bool a_noPPM)
sets whether to turn off PPM
int m_spaceOrder
Definition: AMRLevelCons.H:312
virtual void transferSettingsToLevelOp()
virtual void tagCellsInit(IntVectSet &a_tags)
Create tags at initialization.
int m_tagBufferSize
Definition: AMRLevelCons.H:405
Real m_domainLength
Definition: AMRLevelCons.H:378
bool m_useFlattening
Definition: AMRLevelCons.H:324
Real m_cfl
Definition: AMRLevelCons.H:309
virtual void initialAverage(bool a_initialAverage)
sets whether initial data is average; default false
Real m_dtNew
Definition: AMRLevelCons.H:363
bool m_initialAverage
Definition: AMRLevelCons.H:321