diff --git a/dune/solvers/solvers/umfpacksolver.hh b/dune/solvers/solvers/umfpacksolver.hh index a89bfeb851f828d5772e87407c249aeb494af2ea..7f11280dbf7af942548c7a25b27a5a4cf336b1a6 100644 --- a/dune/solvers/solvers/umfpacksolver.hh +++ b/dune/solvers/solvers/umfpacksolver.hh @@ -18,7 +18,7 @@ #include <dune/istl/io.hh> #include <dune/solvers/common/canignore.hh> -#include <dune/solvers/solvers/solver.hh> +#include <dune/solvers/solvers/linearsolver.hh> namespace Dune { @@ -29,7 +29,7 @@ namespace Solvers /** \brief Wraps the UMFPack sparse direct solver */ template <class MatrixType, class VectorType> class UMFPackSolver - : public Solver, public CanIgnore<Dune::BitSetVector<VectorType::block_type::dimension> > +: public LinearSolver<MatrixType,VectorType>, public CanIgnore<Dune::BitSetVector<VectorType::block_type::dimension> > { enum {blocksize = VectorType::block_type::dimension}; @@ -42,7 +42,7 @@ public: /** \brief Default constructor */ UMFPackSolver () - : Solver(NumProc::FULL) + : LinearSolver<MatrixType,VectorType>(NumProc::FULL) {} /** \brief Constructor for a linear problem */ @@ -50,7 +50,7 @@ public: VectorType& x, const VectorType& rhs, NumProc::VerbosityMode verbosity=NumProc::FULL) - : Solver(verbosity), + : LinearSolver<MatrixType,VectorType>(verbosity), matrix_(&matrix), x_(&x), rhs_(&rhs) @@ -58,7 +58,7 @@ public: void setProblem(const MatrixType& matrix, VectorType& x, - const VectorType& rhs) + const VectorType& rhs) override { matrix_ = &matrix; x_ = &x;