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

Tag which is either a SimpleTag for quantities on an interface, base tag to a compute item which acts on tags on an interface, or base tag to a compute item which slices a tag from the volume to an interface. More...

#include <Tags.hpp>

Public Types

using tag = Tag
 
using type = std::unordered_map<::Direction< DirectionsTag::volume_dim >, typename Tag::type >
 

Static Public Member Functions

static std::string name ()
 

Detailed Description

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

Tag which is either a SimpleTag for quantities on an interface, base tag to a compute item which acts on tags on an interface, or base tag to a compute item which slices a tag from the volume to an interface.

The contained object will be a map from Direction to the item type of Tag, with the set of directions being those produced by DirectionsTag.

If a SimpleTag is desired on the interface, then this tag can be added to the DataBox directly. If a ComputeTag which acts on Tags on the interface is desired, then the tag should be added using InterfaceCompute. If a ComputeTag which slices a TensorTag or a VariablesTag in the volume to an Interface is desired, then it should be added using Slice. In all cases, the tag can then be retrieved using Tags::Interface<DirectionsTag, Tag>.

Template Parameters
DirectionsTagthe item of directions
Tagthe tag labeling the item
See also
InterfaceCompute, Slice

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