This class modifies and initializes a PatchLevel in a PatchHierarchy.
More...
#include <GriddingAlgorithm.hpp>
|
void | ErrorEst (int level, ::amrex::TagBoxArray &tags, double time_point, int) override |
|
void | MakeNewLevelFromScratch (int level, double time_point, const ::amrex::BoxArray &box_array, const ::amrex::DistributionMapping &distribution_mapping) override |
|
void | MakeNewLevelFromCoarse (int level, double time_point, const ::amrex::BoxArray &box_array, const ::amrex::DistributionMapping &distribution_mapping) override |
|
void | RemakeLevel (int level, double time_point, const ::amrex::BoxArray &box_array, const ::amrex::DistributionMapping &distribution_mapping) override |
|
void | ClearLevel ([[maybe_unused]] int level) override |
|
This class modifies and initializes a PatchLevel in a PatchHierarchy.
◆ GriddingAlgorithm() [1/4]
fub::amrex::GriddingAlgorithm::GriddingAlgorithm |
( |
| ) |
|
◆ GriddingAlgorithm() [2/4]
Constructs a gridding algorithm and defines all customization points.
- Parameters
-
hier | The base PatchHierarchy that will be modified. It also contains options that influence the box generation step. |
initial_data | An InitialCondition policy object |
tagging | A tagging routine masks cells that need further refinement. |
boundary | The boundary condition fills the ghost layer for physical domain boundary. |
- Exceptions
-
Throws | std::bad_alloc if a memory allocation fails. |
◆ GriddingAlgorithm() [3/4]
The copy constructor makes a deep copy of the all data for each MPI rank.
◆ GriddingAlgorithm() [4/4]
The move constructor moves a gridding algorithm without allocating any memory.
◆ ~GriddingAlgorithm()
fub::amrex::GriddingAlgorithm::~GriddingAlgorithm |
( |
| ) |
|
|
overridedefaultnoexcept |
◆ ClearLevel()
void fub::amrex::GriddingAlgorithm::ClearLevel |
( |
[[maybe_unused] ] int |
level | ) |
|
|
overrideprivate |
◆ ErrorEst()
void fub::amrex::GriddingAlgorithm::ErrorEst |
( |
int |
level, |
|
|
::amrex::TagBoxArray & |
tags, |
|
|
double |
time_point, |
|
|
int |
|
|
) |
| |
|
overrideprivate |
◆ FillMultiFabFromLevel() [1/2]
void fub::amrex::GriddingAlgorithm::FillMultiFabFromLevel |
( |
::amrex::MultiFab & |
mf, |
|
|
int |
level_number |
|
) |
| |
Fill the ghost layer boundary specified of the specifed MultiFab mf
.
◆ FillMultiFabFromLevel() [2/2]
void fub::amrex::GriddingAlgorithm::FillMultiFabFromLevel |
( |
::amrex::MultiFab & |
mf, |
|
|
int |
level_number, |
|
|
AnyBoundaryCondition & |
bc |
|
) |
| |
Fill the ghost layer boundary specified of the specifed MultiFab mf
.
◆ GetBoundaryCondition() [1/2]
◆ GetBoundaryCondition() [2/2]
◆ GetCycles()
std::ptrdiff_t fub::amrex::GriddingAlgorithm::GetCycles |
( |
| ) |
const |
|
inlinenoexcept |
Returns the number of time steps taken on the coarsest refinement level.
◆ GetInitialCondition()
const AnyInitialData& fub::amrex::GriddingAlgorithm::GetInitialCondition |
( |
| ) |
const |
|
noexcept |
◆ GetPatchHierarchy() [1/2]
const PatchHierarchy& fub::amrex::GriddingAlgorithm::GetPatchHierarchy |
( |
| ) |
const |
|
inlinenoexcept |
◆ GetPatchHierarchy() [2/2]
◆ GetTagging()
◆ GetTimePoint()
Duration fub::amrex::GriddingAlgorithm::GetTimePoint |
( |
| ) |
const |
|
inlinenoexcept |
Returns the current time point on the coarsest refinement level.
◆ InitializeHierarchy()
void fub::amrex::GriddingAlgorithm::InitializeHierarchy |
( |
double |
level_time = 0.0 | ) |
|
Initializes the underlying patch hierarchy using the stored initial data method.
- Note
- This function might recreate a refinement level if nesting conditions are violated upon creating a new refinement level. This implies that the initial condition might be called multiple times for one refinement level.
◆ MakeNewLevelFromCoarse()
void fub::amrex::GriddingAlgorithm::MakeNewLevelFromCoarse |
( |
int |
level, |
|
|
double |
time_point, |
|
|
const ::amrex::BoxArray & |
box_array, |
|
|
const ::amrex::DistributionMapping & |
distribution_mapping |
|
) |
| |
|
overrideprivate |
◆ MakeNewLevelFromScratch()
void fub::amrex::GriddingAlgorithm::MakeNewLevelFromScratch |
( |
int |
level, |
|
|
double |
time_point, |
|
|
const ::amrex::BoxArray & |
box_array, |
|
|
const ::amrex::DistributionMapping & |
distribution_mapping |
|
) |
| |
|
overrideprivate |
◆ operator=() [1/2]
The copy assignment makes a deep copy of the all data for each MPI rank.
◆ operator=() [2/2]
The move assignment moves a gridding algorithm without allocating any memory.
◆ RegridAllFinerlevels()
int fub::amrex::GriddingAlgorithm::RegridAllFinerlevels |
( |
int |
which_level | ) |
|
Attempt to regrid all finer level than the specified which_level
.
- Returns
- Returns the coarsest level which was regrid. If no level changed this function returns the maximum number of levels.
◆ RemakeLevel()
void fub::amrex::GriddingAlgorithm::RemakeLevel |
( |
int |
level, |
|
|
double |
time_point, |
|
|
const ::amrex::BoxArray & |
box_array, |
|
|
const ::amrex::DistributionMapping & |
distribution_mapping |
|
) |
| |
|
overrideprivate |
◆ boundary_condition_
◆ hierarchy_
◆ initial_data_
◆ tagging_
The documentation for this class was generated from the following file: