From d7410cac5faba6427038fc94e10f32d2acea8513 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carsten=20Gr=C3=A4ser?= <graeser@mi.fu-berlin.de> Date: Sun, 10 Mar 2013 21:09:22 +0000 Subject: [PATCH] Remove setNumberOfLevels, fix nested iteration for single level grids [[Imported from SVN: r8216]] --- dune/solvers/iterationsteps/obstacletnnmgstep.hh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/dune/solvers/iterationsteps/obstacletnnmgstep.hh b/dune/solvers/iterationsteps/obstacletnnmgstep.hh index dec535ca..2efefd92 100644 --- a/dune/solvers/iterationsteps/obstacletnnmgstep.hh +++ b/dune/solvers/iterationsteps/obstacletnnmgstep.hh @@ -150,7 +150,6 @@ class ObstacleTNNMGStep coarseCorrection_.resize(x_->size()); temp_.resize(x_->size()); - linearMGStep_.setNumberOfLevels(transfer_.size()+1); linearMGStep_.setTransferOperators(transfer_); linearMGStep_.setSmoother(&linearSmoother_); linearMGStep_.basesolver_ = &baseSolver_; @@ -359,6 +358,11 @@ class ObstacleTNNMGStep void nestedIteration(int coarseIterationSteps=2) { int maxLevel = transfer_.size(); + if (maxLevel==0) + { + *x_ = 0.0; + return; + } std::vector<Matrix> coarseMatrix(maxLevel); std::vector<Vector> coarseSolution(maxLevel); -- GitLab