diff --git a/dune/solvers/iterationsteps/minimalpolynomialextrapolationstep.hh b/dune/solvers/iterationsteps/minimalpolynomialextrapolationstep.hh index 88f3fc64f535c968f0308756c3d3c1e4d3df6295..2f6b152ab2e8c2fc6ea68e40300e91422bf9a2b3 100644 --- a/dune/solvers/iterationsteps/minimalpolynomialextrapolationstep.hh +++ b/dune/solvers/iterationsteps/minimalpolynomialextrapolationstep.hh @@ -3,7 +3,9 @@ #include <dune/common/bitsetvector.hh> +#include <dune/common/fmatrix.hh> #include <dune/istl/matrix.hh> +#include <dune/istl/preconditioners.hh> #include <dune/istl/solvers.hh> #include <dune/solvers/common/preconditioner.hh> diff --git a/dune/solvers/solvers/tcgsolver.hh b/dune/solvers/solvers/tcgsolver.hh index 356cfb6d10d6836967f7f6b78d86221a43f5d16e..6fa7bc0e69f3f559c10dd27df12e85c4cecb1440 100644 --- a/dune/solvers/solvers/tcgsolver.hh +++ b/dune/solvers/solvers/tcgsolver.hh @@ -3,6 +3,7 @@ #include <cmath> +#include <dune/common/misc.hh> #include <dune/solvers/solvers/iterativesolver.hh> #include <dune/solvers/iterationsteps/lineariterationstep.hh> #include <dune/solvers/norms/norm.hh> @@ -24,7 +25,7 @@ class TruncatedCGSolver : public IterativeSolver<VectorType> field_type p = b/a; field_type q = c/a; - field_type root1 = - p/2 - sign(p) * std::sqrt(p*p/4 - q); + field_type root1 = - p/2 - Dune::sign(p) * std::sqrt(p*p/4 - q); field_type root2 = q/root1; // There must be one positive and one negative root