3#include <AMReX_Config.H>
52 const int* is_per =
nullptr);
108 virtual void regrid (
int lbase,
Real time,
bool initial=
false);
117 void printGridSummary (std::ostream& os,
int min_lev,
int max_lev)
const noexcept;
166#ifdef AMREX_PARTICLES
Core mesh hierarchy infrastructure shared by AmrCore and AmrLevel.
Provide basic functionalities to set up an AMR hierarchy.
Definition AMReX_AmrCore.H:31
void MakeNewLevelFromScratch(int lev, Real time, const BoxArray &ba, const DistributionMapping &dm) override=0
Create and fill a new level from scratch.
virtual void ClearLevel(int lev)=0
Delete level lev data structures owned by the derived class.
void InitFromScratch(Real time)
Initialize BoxArray, DistributionMapping, and level data from scratch.
Definition AMReX_AmrCore.cpp:79
AmrCore()
Construct an empty AmrCore.
Definition AMReX_AmrCore.cpp:18
~AmrCore() override
Definition AMReX_AmrCore.cpp:57
void printGridSummary(std::ostream &os, int min_lev, int max_lev) const noexcept
Print a human-readable summary of grid sizes between min_lev and max_lev.
Definition AMReX_AmrCore.cpp:140
AmrCore & operator=(AmrCore &&rhs) noexcept
Definition AMReX_AmrCore.cpp:59
void ErrorEst(int lev, TagBoxArray &tags, Real time, int ngrow) override=0
Tag cells for refinement on level lev.
virtual void RemakeLevel(int lev, Real time, const BoxArray &ba, const DistributionMapping &dm)=0
Remake an existing level using provided metadata and refill from old data.
AmrParGDB * GetParGDB() const noexcept
Return AmrParGDB pointer for particle containers.
Definition AMReX_AmrCore.H:87
AmrCore(const AmrCore &rhs)=delete
std::unique_ptr< AmrParGDB > m_gdb
Geometry, DistributionMapping and BoxArray for particle containers.
Definition AMReX_AmrCore.H:168
virtual void regrid(int lbase, Real time, bool initial=false)
Rebuild all levels finer than lbase at simulation time time.
Definition AMReX_AmrCore.cpp:85
virtual void MakeNewLevelFromCoarse(int lev, Real time, const BoxArray &ba, const DistributionMapping &dm)=0
Make a new level using provided metadata and populate it from the next coarser level.
Definition AMReX_AmrMesh.H:69
Definition AMReX_AmrParGDB.H:17
A collection of Boxes stored in an Array.
Definition AMReX_BoxArray.H:568
Calculates the distribution of FABs to MPI processes.
Definition AMReX_DistributionMapping.H:43
Rectangular problem domain geometry.
Definition AMReX_Geometry.H:74
A Box with real dimensions.
Definition AMReX_RealBox.H:28
An array of TagBoxes.
Definition AMReX_TagBox.H:151
This class is a thin wrapper around std::vector. Unlike vector, Vector::operator[] provides bound che...
Definition AMReX_Vector.H:28
amrex_real Real
Floating Point Type for Fields.
Definition AMReX_REAL.H:79
std::array< T, N > Array
Definition AMReX_Array.H:26
Definition AMReX_Amr.cpp:49
Definition AMReX_AmrMesh.H:25