SpECTRE
v2025.03.17
|
Refine the grid towards the target number of grid points and refinement levels in each dimension and then oscillate about the target. More...
#include <DriveToTarget.hpp>
Classes | |
struct | OscillationAtTarget |
The AMR flags chosen when the target number of grid points and refinement levels are reached. More... | |
struct | TargetNumberOfGridPoints |
The target number of grid point in each dimension. More... | |
struct | TargetRefinementLevels |
The target refinement level in each dimension. More... | |
Public Types | |
using | options = implementation defined |
using | compute_tags_for_observation_box = implementation defined |
using | argument_tags = implementation defined |
Public Member Functions | |
DriveToTarget (const std::array< size_t, Dim > &target_number_of_grid_points, const std::array< size_t, Dim > &target_refinement_levels, const std::array< Flag, Dim > &flags_at_target) | |
std::string | observation_name () override |
template<typename Metavariables > | |
auto | operator() (const Mesh< Dim > ¤t_mesh, Parallel::GlobalCache< Metavariables > &, const ElementId< Dim > &element_id) const |
void | pup (PUP::er &p) override |
![]() | |
Criterion (CkMigrateMessage *msg) | |
WRAPPED_PUPable_abstract (Criterion) | |
virtual std::string | observation_name ()=0 |
template<typename ComputeTagsList , typename DataBoxType , typename Metavariables > | |
auto | evaluate (const ObservationBox< ComputeTagsList, DataBoxType > &box, Parallel::GlobalCache< Metavariables > &cache, const ElementId< Metavariables::volume_dim > &element_id) const |
Evaluates the AMR criteria by selecting the appropriate derived class and forwarding its argument_tags from the ObservationBox (along with the GlobalCache and ArrayIndex) to the call operator of the derived class. More... | |
Static Public Attributes | |
static constexpr Options::String | help |
Refine the grid towards the target number of grid points and refinement levels in each dimension and then oscillate about the target.
If the grid is at neither target in a given dimension, the flag chosen will be in the priority order Split, IncreaseResolution, DecreaseResolution, Join.
|
inlineoverridevirtual |
Implements amr::Criterion.
|
staticconstexpr |