SpECTRE  v2024.04.12
domain::Tags::Slice< DirectionsTag, Tag > Struct Template Reference

Compute tag for representing a compute item that slices data from the volume to a set of interfaces. More...

#include <InterfaceComputeTags.hpp>

Public Types

using base = Interface< DirectionsTag, Tag >
 
using return_type = std::unordered_map<::Direction< volume_dim >, typename Tag::type >
 
using argument_tags = tmpl::list< Mesh< volume_dim >, DirectionsTag, Tag >
 
using volume_tags = tmpl::list< Mesh< volume_dim >, Tag >
 
- Public Types inherited from domain::Tags::Interface< DirectionsTag, Tag >
using tag = Tag
 
using type = std::unordered_map<::Direction< DirectionsTag::volume_dim >, typename Tag::type >
 

Static Public Member Functions

static constexpr void function (const gsl::not_null< return_type * > sliced_vars, const ::Mesh< volume_dim > &mesh, const std::unordered_set<::Direction< volume_dim > > &directions, const typename Tag::type &variables)
 
- Static Public Member Functions inherited from domain::Tags::Interface< DirectionsTag, Tag >
static std::string name ()
 

Static Public Attributes

static constexpr size_t volume_dim = DirectionsTag::volume_dim
 

Detailed Description

template<typename DirectionsTag, typename Tag>
struct domain::Tags::Slice< DirectionsTag, Tag >

Compute tag for representing a compute item that slices data from the volume to a set of interfaces.

The computed object will be a map from a Direction to the item type of Tag (i.e. Tag::type), with the set of directions being those produced by DirectionsTag. Tag::type must be a Tensor or a Variables. Retrievable from the DataBox using Tags::Interface<DirectionsTag, Tag>

Requires: Tag correspond to a Tensor or a Variables

Template Parameters
DirectionsTagthe simple tag labeling the set of Directions
Tagthe simple tag for the volume data to be sliced

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