|
| AmrCore () |
|
| AmrCore (const RealBox *rb, int max_level_in, const Vector< int > &n_cell_in, int coord=-1, Vector< IntVect > ref_ratios=Vector< IntVect >(), const int *is_per=nullptr) |
|
| AmrCore (const RealBox &rb, int max_level_in, const Vector< int > &n_cell_in, int coord, Vector< IntVect > const &ref_ratios, Array< int, AMREX_SPACEDIM > const &is_per) |
|
| AmrCore (Geometry const &level_0_geom, AmrInfo const &amr_info) |
|
| AmrCore (AmrCore &&rhs) noexcept |
|
AmrCore & | operator= (AmrCore &&rhs) noexcept |
|
| AmrCore (const AmrCore &rhs)=delete |
|
AmrCore & | operator= (const AmrCore &rhs)=delete |
|
| ~AmrCore () override |
|
void | InitFromScratch (Real time) |
| Initialize BoxArray, DistributionMapping and data from scratch. Calling this function requires the derive class implement its own MakeNewLevelFromScratch to allocate and initialize data. Also note usually one needs to average the fine data down to coarse level after this. More...
|
|
virtual void | regrid (int lbase, Real time, bool initial=false) |
| Rebuild levels finer than lbase. More...
|
|
void | printGridSummary (std::ostream &os, int min_lev, int max_lev) const noexcept |
|
| AmrMesh () |
|
| AmrMesh (const RealBox *rb, int max_level_in, const Vector< int > &n_cell_in, int coord=-1, Vector< IntVect > refrat=Vector< IntVect >(), const int *is_per=nullptr) |
|
| AmrMesh (const RealBox &rb, int max_level_in, const Vector< int > &n_cell_in, int coord, Vector< IntVect > const &a_refrat, Array< int, AMREX_SPACEDIM > const &is_per) |
|
| AmrMesh (Geometry const &level_0_geom, AmrInfo const &amr_info) |
|
| AmrMesh (const AmrMesh &rhs)=delete |
|
AmrMesh & | operator= (const AmrMesh &rhs)=delete |
|
| AmrMesh (AmrMesh &&rhs)=default |
|
AmrMesh & | operator= (AmrMesh &&rhs)=default |
|
virtual | ~AmrMesh ()=default |
|
int | Verbose () const noexcept |
|
int | maxLevel () const noexcept |
| Return the max level. More...
|
|
int | finestLevel () const noexcept |
| Return the finest level. More...
|
|
IntVect | refRatio (int lev) const noexcept |
| Return the refinement ratio for level lev. More...
|
|
int | MaxRefRatio (int lev) const noexcept |
| Return the maximum refinement ratio in any direction. More...
|
|
const Vector< IntVect > & | refRatio () const noexcept |
| Return refinement ratios between all levels. More...
|
|
const Vector< Geometry > & | Geom () const noexcept |
|
const Vector< DistributionMapping > & | DistributionMap () const noexcept |
|
const Vector< BoxArray > & | boxArray () const noexcept |
|
const Geometry & | Geom (int lev) const noexcept |
|
const DistributionMapping & | DistributionMap (int lev) const noexcept |
|
const BoxArray & | boxArray (int lev) const noexcept |
|
Vector< Geometry > | Geom (int a_coarsest_lev, int a_finest_lev) const noexcept |
|
Vector< BoxArray > | boxArray (int a_coarsest_lev, int a_finest_lev) const noexcept |
|
Vector< DistributionMapping > | DistributionMap (int a_coarsest_lev, int a_finest_lev) const noexcept |
|
Vector< Geometry > & | Geom () noexcept |
|
Geometry & | Geom (int lev) noexcept |
|
void | SetMaxGridSize (int new_mgs) noexcept |
|
void | SetMaxGridSize (const IntVect &new_mgs) noexcept |
|
void | SetMaxGridSize (const Vector< int > &new_mgs) noexcept |
|
void | SetMaxGridSize (const Vector< IntVect > &new_mgs) noexcept |
|
void | SetBlockingFactor (int new_bf) noexcept |
|
void | SetBlockingFactor (const IntVect &new_bf) noexcept |
|
void | SetBlockingFactor (const Vector< int > &new_bf) noexcept |
|
void | SetBlockingFactor (const Vector< IntVect > &new_bf) noexcept |
|
void | SetGridEff (Real eff) noexcept |
|
void | SetNProper (int n) noexcept |
|
void | SetFinestLevel (int new_finest_level) noexcept |
| Set ref_ratio would require rebuilding Geometry objects. More...
|
|
void | SetDistributionMap (int lev, const DistributionMapping &dmap_in) noexcept |
|
void | SetBoxArray (int lev, const BoxArray &ba_in) noexcept |
|
void | SetGeometry (int lev, const Geometry &geom_in) noexcept |
|
int | GetLevel (Box const &domain) const noexcept |
| Given domain box, return AMR level. Return -1 if there is no match. More...
|
|
void | ClearDistributionMap (int lev) noexcept |
|
void | ClearBoxArray (int lev) noexcept |
|
int | nErrorBuf (int lev, int direction=0) const noexcept |
| Return the number of buffer cells (as a single integer) in error estimator. More...
|
|
const IntVect & | nErrorBufVect (int lev) const noexcept |
| Return the number of buffer cells (as an IntVect) in error estimator. More...
|
|
Real | gridEff () const noexcept |
| Return the minimum allowable grid efficiency. More...
|
|
int | nProper () const noexcept |
| Return the number of cells to define proper nesting. More...
|
|
const IntVect & | blockingFactor (int lev) const noexcept |
| Return the blocking factor at level lev. More...
|
|
const IntVect & | maxGridSize (int lev) const noexcept |
| Return the largest allowable grid. More...
|
|
bool | LevelDefined (int lev) const noexcept |
|
bool | useFixedCoarseGrids () const noexcept |
| Should we keep the coarser grids fixed (and not regrid those levels) at all? More...
|
|
int | useFixedUpToLevel () const noexcept |
| Up to what level should we keep the coarser grids fixed (and not regrid those levels)? More...
|
|
void | ChopGrids (int lev, BoxArray &ba, int target_size) const |
| "Try" to chop up grids so that the number of boxes in the BoxArray is greater than the target_size. More...
|
|
BoxArray | MakeBaseGrids () const |
| Make a level 0 grids covering the whole domain. It does NOT install the new grids. More...
|
|
void | MakeNewGrids (int lbase, Real time, int &new_finest, Vector< BoxArray > &new_grids) |
| Make new grids based on error estimates. This function expects that valid BoxArrays exist in this->grids from level lbase to level this->finest_level (the current finest level). new_grids. On return, the new finest level is stored in new_finest, and the new grids are stored in new_grids from Array element lbase+1 to new_finest_level (unless fixed grids are used). Note that this function adds at most one more level to the existing levels, and it may remove all levels above the base level. This function does not change the value of this->finest_level, nor does it modifies any BoxArrays stored in this->grids. It also does not modify new_grids's elements outside the range [lbase+1,new_finest_level]. More...
|
|
void | MakeNewGrids (Real time=0.0) |
| This function makes new grid for all levels (including level 0). More...
|
|
virtual void | ManualTagsPlacement (int, TagBoxArray &, const Vector< IntVect > &) |
| Manually tag. Note that tags is built on level lev grids coarsened by bf_lev[lev]. More...
|
|
virtual void | PostProcessBaseGrids (BoxArray &) const |
|
virtual BoxArray | GetAreaNotToTag (int) |
|
Long | CountCells (int lev) const noexcept |
|
virtual DistributionMapping | MakeDistributionMap (int lev, BoxArray const &ba) |
|
Provide basic functionalities to set up an AMR hierarchy.
Because it does not own any floating point data, AmrCore used virtual functions to allocate, initialize and delete data. It also requires the derived class to tag cells for refinement.