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 "Evolution/Systems/ScalarAdvection/Tags.hpp" 9 : #include "Utilities/TMPL.hpp" 10 : 11 : /// \cond 12 : template <typename T> 13 : class Variables; 14 : namespace Tags { 15 : template <typename TagsList> 16 : struct Variables; 17 : } // namespace Tags 18 : /// \endcond 19 : 20 : namespace ScalarAdvection::subcell { 21 : /*! 22 : * \brief Returns \f$U\f$, the variables needed for reconstruction. 23 : * 24 : * This mutator is passed to 25 : * `evolution::dg::subcell::Actions::SendDataForReconstruction`. 26 : */ 27 1 : class GhostVariables { 28 : public: 29 0 : using return_tags = tmpl::list<>; 30 0 : using argument_tags = 31 : tmpl::list<::Tags::Variables<tmpl::list<ScalarAdvection::Tags::U>>>; 32 : 33 0 : static DataVector apply( 34 : const Variables<tmpl::list<ScalarAdvection::Tags::U>>& vars, 35 : size_t rdmp_size); 36 : }; 37 : } // namespace ScalarAdvection::subcell