Commit 1d9e5815 authored by Ned Coltman's avatar Ned Coltman
Browse files

Merge branch 'backport/fix/macro-calls-and-changelog-entry' into 'releases/3.2'

Merge branch 'fix/macro-calls-and-changelog-entry' into 'master'

See merge request !2212
parents 3d5679ac 0fe8fb50
...@@ -17,7 +17,7 @@ An additional new option is `Vtk.CoordPrecision` which changes the precision of ...@@ -17,7 +17,7 @@ An additional new option is `Vtk.CoordPrecision` which changes the precision of
- __Examples__: The documentation of the examples has been improved further, focusing on readability and convenience. Further, three additional examples are included the folder `examples`. To get an overview, point your browser to https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/tree/master/examples. - __Examples__: The documentation of the examples has been improved further, focusing on readability and convenience. Further, three additional examples are included the folder `examples`. To get an overview, point your browser to https://git.iws.uni-stuttgart.de/dumux-repositories/dumux/tree/master/examples.
- __Linear solvers__: There is a new ISTL solver factory backend which allows to choose solvers at runtime (requires dune-istl 2.7) and also enables more parallel solvers (requires dune-istl > 2.7.1). - __Linear solvers__: There is a new ISTL solver factory backend which allows to choose solvers at runtime (requires dune-istl 2.7) and also enables more parallel solvers (requires dune-istl > 2.7.0).
### Immediate interface changes not allowing/requiring a deprecation period ### Immediate interface changes not allowing/requiring a deprecation period
......
...@@ -239,6 +239,7 @@ private: ...@@ -239,6 +239,7 @@ private:
template<class ParallelTraits, class Matrix, class Vector> template<class ParallelTraits, class Matrix, class Vector>
void solveParallel_(Matrix& A, Vector& x, Vector& b) void solveParallel_(Matrix& A, Vector& x, Vector& b)
{ {
#if DUNE_VERSION_GT_REV(DUNE_ISTL,2,7,0)
using Comm = typename ParallelTraits::Comm; using Comm = typename ParallelTraits::Comm;
using LinearOperator = typename ParallelTraits::LinearOperator; using LinearOperator = typename ParallelTraits::LinearOperator;
using ScalarProduct = typename ParallelTraits::ScalarProduct; using ScalarProduct = typename ParallelTraits::ScalarProduct;
...@@ -259,6 +260,9 @@ private: ...@@ -259,6 +260,9 @@ private:
// solve linear system // solve linear system
solver->apply(x, b, result_); solver->apply(x, b, result_);
#else
DUNE_THROW(Dune::NotImplemented, "Parallel solvers only available for dune-istl > 2.7.0");
#endif
} }
#endif // HAVE_MPI #endif // HAVE_MPI
......
...@@ -43,7 +43,7 @@ ...@@ -43,7 +43,7 @@
#include <dumux/linear/linearsolvertraits.hh> #include <dumux/linear/linearsolvertraits.hh>
#if DUNE_VERSION_NEWER_REV(DUNE_ISTL,2,7,1) #if DUNE_VERSION_GT_REV(DUNE_ISTL,2,7,0)
#include <dumux/linear/istlsolverfactorybackend.hh> #include <dumux/linear/istlsolverfactorybackend.hh>
#else #else
#include <dumux/linear/amgbackend.hh> #include <dumux/linear/amgbackend.hh>
...@@ -131,7 +131,7 @@ int main(int argc, char** argv) try ...@@ -131,7 +131,7 @@ int main(int argc, char** argv) try
auto assembler = std::make_shared<Assembler>(problem, gridGeometry, gridVariables, timeLoop, xOld); auto assembler = std::make_shared<Assembler>(problem, gridGeometry, gridVariables, timeLoop, xOld);
// the linear solver // the linear solver
#if DUNE_VERSION_NEWER_REV(DUNE_ISTL,2,7,1) #if DUNE_VERSION_GT_REV(DUNE_ISTL,2,7,0)
using LinearSolver = IstlSolverFactoryBackend<LinearSolverTraits<GridGeometry>>; using LinearSolver = IstlSolverFactoryBackend<LinearSolverTraits<GridGeometry>>;
#else #else
using LinearSolver = AMGBiCGSTABBackend<LinearSolverTraits<GridGeometry>>; using LinearSolver = AMGBiCGSTABBackend<LinearSolverTraits<GridGeometry>>;
......
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
#include <dumux/common/dumuxmessage.hh> #include <dumux/common/dumuxmessage.hh>
#include <dumux/linear/linearsolvertraits.hh> #include <dumux/linear/linearsolvertraits.hh>
#if DUNE_VERSION_NEWER_REV(DUNE_ISTL,2,7,1) #if DUNE_VERSION_GT_REV(DUNE_ISTL,2,7,0)
#include <dumux/linear/istlsolverfactorybackend.hh> #include <dumux/linear/istlsolverfactorybackend.hh>
#include <dumux/linear/linearsolvertraits.hh> #include <dumux/linear/linearsolvertraits.hh>
#else #else
...@@ -150,7 +150,7 @@ int main(int argc, char** argv) try ...@@ -150,7 +150,7 @@ int main(int argc, char** argv) try
auto assembler = std::make_shared<Assembler>(problem, gridGeometry, gridVariables, timeLoop, xOld); auto assembler = std::make_shared<Assembler>(problem, gridGeometry, gridVariables, timeLoop, xOld);
// the linear solver // the linear solver
#if DUNE_VERSION_NEWER_REV(DUNE_ISTL,2,7,1) #if DUNE_VERSION_GT_REV(DUNE_ISTL,2,7,0)
using LinearSolver = IstlSolverFactoryBackend<LinearSolverTraits<GridGeometry>>; using LinearSolver = IstlSolverFactoryBackend<LinearSolverTraits<GridGeometry>>;
#else #else
using LinearSolver = AMGBiCGSTABBackend<LinearSolverTraits<GridGeometry>>; using LinearSolver = AMGBiCGSTABBackend<LinearSolverTraits<GridGeometry>>;
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment