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 : #include <utility> 8 : 9 : #include "DataStructures/DataBox/Tag.hpp" 10 : #include "Domain/Structure/Direction.hpp" 11 : #include "Domain/Structure/DirectionalId.hpp" 12 : #include "Domain/Structure/DirectionalIdMap.hpp" 13 : #include "Domain/Structure/ElementId.hpp" 14 : #include "Evolution/DgSubcell/GhostData.hpp" 15 : 16 : namespace evolution::dg::subcell::Tags { 17 : /// The ghost data used for reconstructing the solution on the interfaces 18 : /// between elements 19 : /// 20 : /// The `DirectionalIdMap` stores a `evolution::dg::subcell::GhostData` which 21 : /// stores both local and received neighbor ghost data. Even though subcell 22 : /// doesn't use it's local ghost data during reconstruction, we will need to 23 : /// store it when using Charm++ messages. 24 : template <size_t Dim> 25 1 : struct GhostDataForReconstruction : db::SimpleTag { 26 0 : using type = DirectionalIdMap<Dim, GhostData>; 27 : }; 28 : } // namespace evolution::dg::subcell::Tags