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/GeneralizedHarmonic/System.hpp" 9 : #include "NumericalAlgorithms/LinearOperators/Filters/Factory.hpp" 10 : #include "NumericalAlgorithms/LinearOperators/Filters/SphericalShell.hpp" 11 : #include "Utilities/TMPL.hpp" 12 : 13 : namespace gh { 14 : /*! 15 : * \ingroup DiscontinuousGalerkinGroup 16 : * \brief A `tmpl::list` of all concrete filter types for the generalized 17 : * harmonic system. 18 : * 19 : * Extends `Filters::all_filters` with `Filters::SphericalShell` for `Dim == 3`. 20 : */ 21 : template <size_t Dim> 22 1 : using all_filters = tmpl::append< 23 : Filters::all_filters<Dim, typename System<Dim>::variables_tag::tags_list>, 24 : tmpl::conditional_t<Dim == 3, 25 : tmpl::list<Filters::SphericalShell< 26 : typename System<Dim>::variables_tag::tags_list>>, 27 : tmpl::list<>>>; 28 : } // namespace gh