|
SpECTRE
v2026.09.05
|
Allocates and initializes the system's boundary-evolved variables (the Tags::BoundaryVariables entry of the list-valued System::variables_tag) on each opting external face. More...
#include <BoundaryEvolvedVariables.hpp>
Public Types | |
| using | const_global_cache_tags |
| using | simple_tags_from_options = tmpl::list<> |
| using | simple_tags = tmpl::list<boundary_variables_tag> |
| using | compute_tags = tmpl::list<> |
Static Public Member Functions | |
| template<typename DbTagsList, typename... InboxTags, typename Metavariables, typename ArrayIndex, typename ActionList, typename ParallelComponent> | |
| static Parallel::iterable_action_return_t | apply (db::DataBox< DbTagsList > &box, const tuples::TaggedTuple< InboxTags... > &, const Parallel::GlobalCache< Metavariables > &, const ArrayIndex &, ActionList, const ParallelComponent *const) |
Allocates and initializes the system's boundary-evolved variables (the Tags::BoundaryVariables entry of the list-valued System::variables_tag) on each opting external face.
Iterates the element's external boundaries and gives each face whose boundary condition opts in (declares the evolves_boundary_variables marker) a face-sized entry in the BoundaryVariables storage. Each Tags::BoundaryValue<Source> is initialized by projecting its interior Source from the volume variables to the face. Interior and non-opting faces get no entry.
Runs after the domain and the initial data are set, and before Initialization::TimeStepperHistory, which sizes the Tags::dt twin of the storage from the per-face storage initialized here.
| Dim | the spatial dimension |
| System | the evolution system (supplies variables_tag) |
| DerivedBoundaryConditionsList | the concrete boundary condition types; it must contain every type that can appear on an external boundary |
| using evolution::dg::Initialization::BoundaryEvolvedVariables< Dim, System, DerivedBoundaryConditionsList >::const_global_cache_tags |