opm-simulators
ExtraSmoothers.hpp
1 #ifndef OPM_EXTRASMOOTHERS_HPP
2 #define OPM_EXTRASMOOTHERS_HPP
3 
4 #include "DILU.hpp"
5 
6 namespace Dune
7 {
8  template <class M, class X, class Y>
9  class MultithreadDILU;
10 
11 namespace Amg
12 {
16  template <class M, class X, class Y>
17  struct ConstructionTraits<MultithreadDILU<M, X, Y>> {
18  using Arguments = DefaultConstructionArgs<MultithreadDILU<M, X, Y>>;
19 
20  static inline std::shared_ptr<MultithreadDILU<M, X, Y>> construct(Arguments& args) {
21  return std::make_shared<MultithreadDILU<M, X, Y>>(args.getMatrix());
22  }
23  };
24 
25 } // namespace Amg
26 } // namespace Dune
27 #endif // OPM_EXTRASMOOTHERS_HPP
Definition: fvbaseprimaryvariables.hh:161
The OpenMP thread parallelized DILU preconditioner.
Definition: DILU.hpp:52