Line data Source code
1 0 : // Distributed under the MIT License. 2 : // See LICENSE.txt for details. 3 : 4 : #pragma once 5 : 6 : #include <string> 7 : 8 : #include "DataStructures/DataBox/Tag.hpp" 9 : #include "DataStructures/DataVector.hpp" // IWYU pragma: keep 10 : #include "DataStructures/Tensor/TypeAliases.hpp" 11 : 12 : namespace ScalarAdvection { 13 : /*! 14 : * \brief Tags for the ScalarAdvection system 15 : */ 16 : namespace Tags { 17 : /// The scalar field to evolve 18 1 : struct U : db::SimpleTag { 19 0 : using type = Scalar<DataVector>; 20 : }; 21 : 22 : /// The advection velocity field 23 : template <size_t Dim> 24 1 : struct VelocityField : db::SimpleTag { 25 0 : using type = tnsr::I<DataVector, Dim>; 26 : }; 27 : 28 : /// The largest characteristic speed 29 1 : struct LargestCharacteristicSpeed : db::SimpleTag { 30 0 : using type = double; 31 : }; 32 : 33 : } // namespace Tags 34 : } // namespace ScalarAdvection