From 49d51eb04334c22e62633a19641d13368391510e Mon Sep 17 00:00:00 2001 From: Oliver Sander <oliver.sander@tu-dresden.de> Date: Mon, 23 Dec 2019 06:49:31 +0100 Subject: [PATCH] UMFPackSolver: Remove several hard-wired linear algebra types Removing these assumptions about the linear algebra types is one step towards support for unnested linear algebra, like BCRSMatrix<double> etc. More work for that is needed, though. --- dune/solvers/solvers/umfpacksolver.hh | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/dune/solvers/solvers/umfpacksolver.hh b/dune/solvers/solvers/umfpacksolver.hh index 8c0b101..6071309 100644 --- a/dune/solvers/solvers/umfpacksolver.hh +++ b/dune/solvers/solvers/umfpacksolver.hh @@ -18,6 +18,7 @@ #include <dune/istl/io.hh> #include <dune/solvers/common/canignore.hh> +#include <dune/solvers/common/defaultbitvector.hh> #include <dune/solvers/solvers/linearsolver.hh> namespace Dune @@ -29,15 +30,8 @@ namespace Solvers /** \brief Wraps the UMFPack sparse direct solver */ template <class MatrixType, class VectorType> class UMFPackSolver -: public LinearSolver<MatrixType,VectorType>, public CanIgnore<Dune::BitSetVector<VectorType::block_type::dimension> > +: public LinearSolver<MatrixType,VectorType>, public CanIgnore<DefaultBitVector_t<VectorType> > { - enum {blocksize = VectorType::block_type::dimension}; - - typedef typename VectorType::field_type field_type; - - typedef Dune::FieldMatrix<field_type, blocksize, blocksize> MatrixBlock; - typedef Dune::FieldVector<field_type, blocksize> VectorBlock; - public: /** \brief Default constructor */ -- GitLab