Line data Source code
1 0 : // Distributed under the MIT License. 2 : // See LICENSE.txt for details. 3 : 4 : #pragma once 5 : 6 : #include <cstddef> 7 : 8 : #include "DataStructures/DataBox/Tag.hpp" 9 : 10 : /// \cond 11 : template <size_t Dim, typename T> 12 : class DirectionalIdMap; 13 : template <size_t Dim> 14 : class Mesh; 15 : /// \endcond 16 : 17 : namespace domain::Tags { 18 : /*! 19 : * \brief Holds the mesh of each neighboring element, oriented to the 20 : * host's logical frame. 21 : * 22 : * This knowledge can be used to determine the geometry of mortars between 23 : * elements. It is kept up to date by AMR. 24 : * 25 : * For DG-FD hybrid methods this is necessary to determine what numerical method 26 : * the neighbor is using. This knowledge can be used for optimizing code. 27 : */ 28 : template <size_t Dim> 29 1 : struct NeighborMesh : db::SimpleTag { 30 0 : using type = DirectionalIdMap<Dim, ::Mesh<Dim>>; 31 : }; 32 : } // namespace domain::Tags