SpECTRE  v2024.09.29
amr::Events::RefineMesh Class Reference

Performs p-refinement on the domain. More...

#include <RefineMesh.hpp>

Public Types

using options = tmpl::list<>
 
using compute_tags_for_observation_box = tmpl::list<>
 
using return_tags = tmpl::list<::Tags::DataBox >
 
using argument_tags = tmpl::list<>
 
using is_ready_argument_tags = tmpl::list<>
 

Public Member Functions

template<typename DbTags , typename Metavariables , typename Component >
void operator() (const gsl::not_null< db::DataBox< DbTags > * > box, Parallel::GlobalCache< Metavariables > &cache, const ElementId< Metavariables::volume_dim > &element_id, const Component *const, const ObservationValue &) const
 
template<typename Metavariables , typename ArrayIndex , typename Component >
bool is_ready (Parallel::GlobalCache< Metavariables > &, const ArrayIndex &, const Component *const) const
 
bool needs_evolved_variables () const override
 Whether the event uses anything depending on the evolved_variables. If this returns false, anything depending on the evolved variables may have an incorrect value when the event is run. More...
 
void pup (PUP::er &p) override
 
- Public Member Functions inherited from Event
 Event (CkMigrateMessage *msg)
 
 WRAPPED_PUPable_abstract (Event)
 
template<typename ComputeTagsList , typename DataBoxType , typename Metavariables , typename ArrayIndex , typename ComponentPointer >
void run (const gsl::not_null< ObservationBox< ComputeTagsList, DataBoxType > * > box, Parallel::GlobalCache< Metavariables > &cache, const ArrayIndex &array_index, const ComponentPointer, const ObservationValue &observation_value) const
 
template<typename DbTags , typename Metavariables , typename ArrayIndex , typename ComponentPointer >
bool is_ready (const db::DataBox< DbTags > &box, Parallel::GlobalCache< Metavariables > &cache, const ArrayIndex &array_index, const ComponentPointer) const
 
virtual bool needs_evolved_variables () const =0
 Whether the event uses anything depending on the evolved_variables. If this returns false, anything depending on the evolved variables may have an incorrect value when the event is run. More...
 

Static Public Attributes

static constexpr Options::String help = {"Perform p-refinement"}
 

Detailed Description

Performs p-refinement on the domain.

Details

  • Loops over all refinement criteria specified in the input file, ignoring any requests to join or split the Element. If no valid p-refinement decision is requested, no change is made to the Element.
  • Updates the Mesh and all return tags of Metavariables::amr::projectors
Warning
This does not communicate the new Mesh to its neighbors, nor does it update domain::Tags::NeighborMesh

Member Function Documentation

◆ needs_evolved_variables()

bool amr::Events::RefineMesh::needs_evolved_variables ( ) const
inlineoverridevirtual

Whether the event uses anything depending on the evolved_variables. If this returns false, anything depending on the evolved variables may have an incorrect value when the event is run.

Implements Event.


The documentation for this class was generated from the following file: