diff --git a/opm/autodiff/BlackoilModelEbos.hpp b/opm/autodiff/BlackoilModelEbos.hpp index d331af89d..60dcb2627 100644 --- a/opm/autodiff/BlackoilModelEbos.hpp +++ b/opm/autodiff/BlackoilModelEbos.hpp @@ -527,12 +527,20 @@ namespace Opm { typedef Dune::CollectiveCommunication< Grid > communication_type; #endif +#if DUNE_VERSION_NEWER(DUNE_ISTL, 2, 6) + Dune::SolverCategory::Category category() const override + { + return overlapping ? + Dune::SolverCategory::overlapping : Dune::SolverCategory::sequential; + } +#else enum { //! \brief The solver category. category = overlapping ? Dune::SolverCategory::overlapping : Dune::SolverCategory::sequential }; +#endif //! constructor: just store a reference to a matrix WellModelMatrixAdapter (const M& A, const WellModel& wellMod, const boost::any& parallelInformation = boost::any() ) diff --git a/opm/autodiff/CPRPreconditioner.hpp b/opm/autodiff/CPRPreconditioner.hpp index d06512958..ab15ac4d0 100644 --- a/opm/autodiff/CPRPreconditioner.hpp +++ b/opm/autodiff/CPRPreconditioner.hpp @@ -385,11 +385,19 @@ createAMGPreconditionerPointer( Op& opA, const double relax, const P& comm, std: typedef typename X::field_type field_type; // define the category +#if DUNE_VERSION_NEWER(DUNE_ISTL, 2, 6) + Dune::SolverCategory::Category category() const override + { + return std::is_same
::value ? + Dune::SolverCategory::sequential : Dune::SolverCategory::overlapping; + } +#else enum { //! \brief The category the preconditioner is part of. category = std::is_same
::value?
Dune::SolverCategory::sequential:Dune::SolverCategory::overlapping
};
+#endif
typedef ISTLUtility::CPRSelector