SpECTRE  v2026.04.01
Loading...
Searching...
No Matches
domain::Tags::InterfaceCompute< DirectionsTag, Tag > Struct Template Reference

Compute tag for representing items computed on a set of interfaces. Can be retrieved using Tags::Interface<DirectionsTag, Tag> More...

#include <InterfaceComputeTags.hpp>

Public Types

using base = Interface<DirectionsTag, typename Tag::base>
using return_type
using forwarded_argument_tags
using argument_tags
using volume_tags = get_volume_tags<Tag>
Public Types inherited from domain::Tags::Interface< DirectionsTag, Tag::base >
using tag
using type

Static Public Member Functions

template<typename... ArgTypes>
static constexpr void function (const gsl::not_null< return_type * > result, const std::unordered_set<::Direction< volume_dim > > &directions, const ArgTypes &... args)
Static Public Member Functions inherited from domain::Tags::Interface< DirectionsTag, Tag::base >
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::InterfaceCompute< DirectionsTag, Tag >

Compute tag for representing items computed on a set of interfaces. Can be retrieved using Tags::Interface<DirectionsTag, Tag>

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::function will be applied separately to the data on each interface. If some of the compute item's inputs (i.e. Tag::argument_tags) should be taken from the volume rather than the interface, they should be specified in the typelist Tag::volume_tags.

Template Parameters
DirectionsTagthe simple tag labeling the set of Directions
Tagthe compute tag to apply on each interface

Member Typedef Documentation

◆ argument_tags

template<typename DirectionsTag, typename Tag>
using domain::Tags::InterfaceCompute< DirectionsTag, Tag >::argument_tags
Initial value:
tmpl::push_front<forwarded_argument_tags, DirectionsTag>

◆ forwarded_argument_tags

template<typename DirectionsTag, typename Tag>
using domain::Tags::InterfaceCompute< DirectionsTag, Tag >::forwarded_argument_tags
Initial value:
InterfaceHelpers_detail::get_interface_argument_tags<Tag, DirectionsTag>

◆ return_type

template<typename DirectionsTag, typename Tag>
using domain::Tags::InterfaceCompute< DirectionsTag, Tag >::return_type

The documentation for this struct was generated from the following file:
  • src/Domain/InterfaceComputeTags.hpp