Skip to content
Snippets Groups Projects
Commit cbb0a6c9 authored by Max Kahnt's avatar Max Kahnt
Browse files

Merge branch 'master' into feature/blockgsstep-default-constructible

parents 1def8160 8f82718f
Branches
No related tags found
1 merge request!14Feature/blockgsstep default constructible
......@@ -352,7 +352,8 @@ auto gs(Args&&... args) {
* \brief A Gauss--Seidel-type linear iteration step.
* \param localSolver The solver for the linear block correction problems.
*/
template <class Matrix, class Vector, class BitVector, class LocalSolver>
template <class LocalSolver, class Matrix, class Vector,
class BitVector = Dune::Solvers::DefaultBitVector_t<Vector>>
struct BlockGSStep : public LinearIterationStep<Matrix, Vector, BitVector> {
//! \brief Implicitly default-construct local solver
......@@ -415,7 +416,7 @@ struct BlockGSStepFactory {
static auto create(
LocalSolver&& localSolver,
BlockGS::Direction direction = BlockGS::Direction::FORWARD) {
return BlockGSStep<Matrix, Vector, BitVector, LocalSolver>(
return BlockGSStep<LocalSolver, Matrix, Vector, BitVector>(
std::forward<LocalSolver>(localSolver), direction);
}
......@@ -424,7 +425,7 @@ struct BlockGSStepFactory {
LocalSolver&& localSolver,
BlockGS::Direction direction = BlockGS::Direction::FORWARD) {
return std::make_shared<
BlockGSStep<Matrix, Vector, BitVector, LocalSolver>>(
BlockGSStep<LocalSolver, Matrix, Vector, BitVector>>(
std::forward<LocalSolver>(localSolver), direction);
}
......
......@@ -73,8 +73,7 @@ class ObstacleTNNMGStep
typedef ProjectedBlockGSStep<Matrix, Vector> NonlinearSmoother;
typedef Dune::Solvers::BlockGSStep<
Matrix, Vector, Dune::Solvers::DefaultBitVector_t<Vector>,
decltype(Dune::Solvers::BlockGS::LocalSolvers::gs())>
decltype(Dune::Solvers::BlockGS::LocalSolvers::gs()), Matrix, Vector>
LinearSmoother;
typedef MultigridStep<Matrix, Vector, BitVector> LinearMultigridStep;
typedef EnergyNorm<Matrix, Vector> LinearBaseSolverEnergyNorm;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment