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 "PointwiseFunctions/AnalyticSolutions/ScalarAdvection/Krivodonova.hpp" 9 : #include "PointwiseFunctions/AnalyticSolutions/ScalarAdvection/Kuzmin.hpp" 10 : #include "PointwiseFunctions/AnalyticSolutions/ScalarAdvection/Sinusoid.hpp" 11 : #include "Utilities/TMPL.hpp" 12 : 13 1 : namespace ScalarAdvection::Solutions { 14 : /*! 15 : * \brief Typelist of all analytic solutions of advection system 16 : */ 17 : template <size_t Dim> 18 1 : using all_analytic_solutions = tmpl::flatten<tmpl::list< 19 : tmpl::conditional_t<Dim == 1, 20 : tmpl::list<ScalarAdvection::Solutions::Sinusoid, 21 : ScalarAdvection::Solutions::Krivodonova>, 22 : tmpl::list<>>, 23 : tmpl::conditional_t<Dim == 2, 24 : tmpl::list<ScalarAdvection::Solutions::Kuzmin>, 25 : tmpl::list<>>>>; 26 : } // namespace ScalarAdvection::Solutions