SpECTRE
v2024.09.16
|
Update the Variables corresponding to VariablesTags after an AMR change. More...
#include <Variables.hpp>
Public Types | |
using | return_tags = tmpl::list< VariablesTags... > |
using | argument_tags = tmpl::list< domain::Tags::Element< Dim >, domain::Tags::Mesh< Dim > > |
Static Public Member Functions | |
static void | apply (const gsl::not_null< typename VariablesTags::type * >... vars, const Element< Dim > &, const Mesh< Dim > &new_mesh, const std::pair< Mesh< Dim >, Element< Dim > > &old_mesh_and_element) |
template<typename... Tags> | |
static void | apply (const gsl::not_null< typename VariablesTags::type * >... vars, const Element< Dim > &element, const Mesh< Dim > &child_mesh, const tuples::TaggedTuple< Tags... > &parent_items) |
template<typename... Tags> | |
static void | apply (const gsl::not_null< typename VariablesTags::type * >..., const Element< Dim > &, const Mesh< Dim > &, const std::unordered_map< ElementId< Dim >, tuples::TaggedTuple< Tags... > > &) |
Update the Variables corresponding to VariablesTags after an AMR change.
There is a specialization for ProjectVariables<tmpl::list<VariablesTags...>>
that can be used if a tmpl::list
is available.
For each item corresponding to each tag in VariablesTags, project the data for each variable from the old mesh to the new mesh