Tags.hpp
Go to the documentation of this file.
1 // Distributed under the MIT License.
2 // See LICENSE.txt for details.
3 
4 /// \file
5 /// Defines DataBox tags for scalar wave system
6 
7 #pragma once
8 
9 #include <cstddef>
10 #include <string>
11 
14 
15 class DataVector;
16 
17 namespace ScalarWave {
18 struct Psi : db::SimpleTag {
19  using type = Scalar<DataVector>;
20  static std::string name() noexcept { return "Psi"; }
21 };
22 
23 struct Pi : db::SimpleTag {
24  using type = Scalar<DataVector>;
25  static std::string name() noexcept { return "Pi"; }
26 };
27 
28 template <size_t Dim>
29 struct Phi : db::SimpleTag {
30  using type = tnsr::i<DataVector, Dim, Frame::Inertial>;
31  static std::string name() noexcept { return "Phi"; }
32 };
33 } // namespace ScalarWave
Definition: Tags.hpp:29
Tags for the DataBox inherit from this type.
Definition: DataBoxTag.hpp:65
Items related to evolving the scalar wave equation:
Definition: Equations.cpp:20
Defines a list of useful type aliases for tensors.
Stores a collection of function values.
Definition: DataVector.hpp:46
Definition: Tags.hpp:18
Defines classes SimpleTag, PrefixTag, ComputeTag and several functions for retrieving tag info...
Definition: Tags.hpp:23
Tensor< T, Symmetry<>, index_list<> > Scalar
Scalar type.
Definition: TypeAliases.hpp:21