SpECTRE  v2024.04.12
elliptic::dg::subdomain_operator::Actions::InitializeSubdomain< System, BackgroundTag, OptionsGroup, FromInitialDomain > Struct Template Reference

Initialize the geometry for the DG subdomain operator. More...

#include <InitializeSubdomain.hpp>

Public Types

using simple_tags_from_options = tmpl::list< domain::Tags::InitialExtents< Dim >, domain::Tags::InitialRefinementLevels< Dim > >
 
using const_global_cache_tags = tmpl::list< LinearSolver::Schwarz::Tags::MaxOverlap< OptionsGroup > >
 
using simple_tags = db::wrap_tags_in< overlaps_tag, tmpl::append< typename InitializeGeometry::return_tags, typename InitializeFacesAndMortars::return_tags, typename InitializeOverlapGeometry::return_tags, tmpl::conditional_t< has_background_fields, tmpl::list<::Tags::Variables< typename System::background_fields > >, tmpl::list<> >, domain::make_faces_tags< Dim, typename System::background_fields > > >
 
using compute_tags = tmpl::list<>
 

Static Public Member Functions

template<typename DataBox , typename... InboxTags, typename Metavariables , typename ActionList , typename ParallelComponent >
static Parallel::iterable_action_return_t apply (DataBox &box, const tuples::TaggedTuple< InboxTags... > &, const Parallel::GlobalCache< Metavariables > &, const ElementId< Dim > &, const ActionList, const ParallelComponent *const)
 

Detailed Description

template<typename System, typename BackgroundTag, typename OptionsGroup, bool FromInitialDomain = true>
struct elliptic::dg::subdomain_operator::Actions::InitializeSubdomain< System, BackgroundTag, OptionsGroup, FromInitialDomain >

Initialize the geometry for the DG subdomain operator.

Initializes tags that define the geometry of overlap regions with neighboring elements. The data needs to be updated if the geometry of neighboring elements changes.

Note that the geometry depends on the system and on the choice of background through the normalization of face normals, which involves a metric.

The FromInitialDomain template parameter controls how the next-to-nearest-neighbor information is acquired:

  • If FromInitialDomain = true, uses the initial parameters from the input file. This can be used at the beginning of a simulation or if the domain never changes (no AMR).
  • If FromInitialDomain = false, uses the mesh, element, and neighbor meshes of each neighbor. This typically requires communication to exchange this data between neighbors each time the domain changes, e.g. with AMR.

DataBox:


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