Skip to content
Snippets Groups Projects
Commit 6e185d82 authored by oliver.sander_at_tu-dresden.de's avatar oliver.sander_at_tu-dresden.de
Browse files

Use DefaultBitVector_t

... instead of explicitly hard-wiring BitSetVector.  With this change, vectors
of arbitrary nesting depth can be used.
parent 8bdf23ae
No related branches found
No related tags found
No related merge requests found
Pipeline #
...@@ -10,11 +10,12 @@ ...@@ -10,11 +10,12 @@
#include <dune/common/shared_ptr.hh> #include <dune/common/shared_ptr.hh>
#include <dune/solvers/common/preconditioner.hh> #include <dune/solvers/common/preconditioner.hh>
#include <dune/solvers/common/defaultbitvector.hh>
#include "iterationstep.hh" #include "iterationstep.hh"
//! Base class for iteration steps being called by an iterative linear solver //! Base class for iteration steps being called by an iterative linear solver
template<class MatrixType, class VectorType, class BitVectorType = Dune::BitSetVector<VectorType::block_type::dimension> > template<class MatrixType, class VectorType, class BitVectorType = Dune::Solvers::DefaultBitVector_t<VectorType> >
class LinearIterationStep : public IterationStep<VectorType, BitVectorType>, class LinearIterationStep : public IterationStep<VectorType, BitVectorType>,
public Dune::Solvers::Preconditioner<MatrixType, public Dune::Solvers::Preconditioner<MatrixType,
VectorType, VectorType,
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
#include <dune/solvers/iterationsteps/iterationstep.hh> #include <dune/solvers/iterationsteps/iterationstep.hh>
#include <dune/solvers/norms/norm.hh> #include <dune/solvers/norms/norm.hh>
#include <dune/solvers/solvers/criterion.hh> #include <dune/solvers/solvers/criterion.hh>
#include <dune/solvers/common/defaultbitvector.hh>
/** \brief A solver which consists of a single loop /** \brief A solver which consists of a single loop
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
* This class basically implements a loop that calls an iteration procedure * This class basically implements a loop that calls an iteration procedure
* (which is to be supplied by the user). It also monitors convergence. * (which is to be supplied by the user). It also monitors convergence.
*/ */
template <class VectorType, class BitVectorType = Dune::BitSetVector<VectorType::block_type::dimension> > template <class VectorType, class BitVectorType = Dune::Solvers::DefaultBitVector_t<VectorType> >
class LoopSolver : public IterativeSolver<VectorType, BitVectorType> class LoopSolver : public IterativeSolver<VectorType, BitVectorType>
{ {
typedef typename VectorType::field_type field_type; typedef typename VectorType::field_type field_type;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment