AMDiS  2.10
The Adaptive Multi-Dimensional Simulation Toolbox
FirstOrderPartialTestTrial.hpp
1 #pragma once
2 
3 #include <type_traits>
4 
5 #include <amdis/localoperators/FirstOrderTestPartialTrial.hpp>
6 
7 namespace AMDiS
8 {
14  namespace tag
15  {
17  {
18  std::size_t comp;
19  };
20 
21  struct partial_test
22  {
23  std::size_t comp;
24  };
25  }
26 
27 
29  template <class LC>
30  struct GridFunctionOperatorRegistry<tag::partialtest_trial, LC>
31  {
32  static constexpr int degree = 1;
33  static tag::test_partialtrial transposedTag(tag::partialtest_trial t)
34  {
35  return {t.comp};
36  }
38  };
39 
40 
42  template <class Expr>
43  auto fot(Expr&& expr, tag::partial_test t, int quadOrder = -1)
44  {
45  return makeOperator(tag::partialtest_trial{t.comp}, FWD(expr), quadOrder);
46  }
47 
50 } // end namespace AMDiS
auto fot(Expr &&expr, tag::partial_test t, int quadOrder=-1)
Create a first-order term with derivative on trial-function.
Definition: FirstOrderPartialTestTrial.hpp:43
Definition: FirstOrderPartialTestTrial.hpp:16
Definition: AdaptBase.hpp:6
Definition: FirstOrderTestPartialTrial.hpp:18
auto makeOperator(Tag const &tag, Expr &&expr, int gridFctDeg=-1)
Definition: GridFunctionOperator.hpp:235
first-order operator
Definition: FirstOrderTestPartialTrial.hpp:31
Registry to specify a tag for each implementation type.
Definition: GridFunctionOperator.hpp:216
Definition: FirstOrderPartialTestTrial.hpp:21