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
|