From 254469cf152867555ef8e9f20b53b94447dec2de Mon Sep 17 00:00:00 2001
From: Elias Pipping <elias.pipping@fu-berlin.de>
Date: Tue, 20 Jan 2015 16:13:20 +0100
Subject: [PATCH] [Cleanup] Refinements = maxLevel()

---
 src/sand-wedge.cc    | 7 ++-----
 src/solverfactory.cc | 4 ++--
 src/solverfactory.hh | 4 ++--
 3 files changed, 6 insertions(+), 9 deletions(-)

diff --git a/src/sand-wedge.cc b/src/sand-wedge.cc
index da973e58..78ef4ede 100644
--- a/src/sand-wedge.cc
+++ b/src/sand-wedge.cc
@@ -115,8 +115,6 @@ int main(int argc, char *argv[]) {
     refine(*grid, weakPatch,
            parset.get<double>("boundary.friction.smallestDiameter"));
 
-    auto const refinements = grid->maxLevel();
-
     double minDiameter = std::numeric_limits<double>::infinity();
     double maxDiameter = 0.0;
     for (auto it = grid->template leafbegin<0>();
@@ -227,7 +225,7 @@ int main(int argc, char *argv[]) {
           Grid>;
       ZeroNonlinearity<LocalVector, LocalMatrix> zeroNonlinearity;
       LinearFactory factory(parset.sub("solver.tnnmg"), // FIXME
-                            refinements, *grid, _dirichletNodes);
+                            *grid, _dirichletNodes);
 
       typename LinearFactory::ConvexProblem convexProblem(
           1.0, _matrix, zeroNonlinearity, _rhs, _x);
@@ -346,8 +344,7 @@ int main(int argc, char *argv[]) {
         dims,
         MyBlockProblem<ConvexProblem<GlobalFriction<Matrix, Vector>, Matrix>>,
         Grid>;
-    NonlinearFactory factory(parset.sub("solver.tnnmg"), refinements, *grid,
-                             dirichletNodes);
+    NonlinearFactory factory(parset.sub("solver.tnnmg"), *grid, dirichletNodes);
 
     using UpdaterPair = std::pair<
         std::shared_ptr<StateUpdater<ScalarVector, Vector>>,
diff --git a/src/solverfactory.cc b/src/solverfactory.cc
index 97a09f5e..3242724a 100644
--- a/src/solverfactory.cc
+++ b/src/solverfactory.cc
@@ -13,14 +13,14 @@
 
 template <size_t dim, class BlockProblem, class Grid>
 SolverFactory<dim, BlockProblem, Grid>::SolverFactory(
-    Dune::ParameterTree const &parset, size_t refinements, Grid const &grid,
+    Dune::ParameterTree const &parset, Grid const &grid,
     Dune::BitSetVector<dim> const &ignoreNodes)
     : baseEnergyNorm(linearBaseSolverStep),
       linearBaseSolver(&linearBaseSolverStep,
                        parset.get<size_t>("linear.maxiumumIterations"),
                        parset.get<double>("linear.tolerance"), &baseEnergyNorm,
                        Solver::QUIET),
-      transferOperators(refinements),
+      transferOperators(grid.maxLevel()),
       multigridStep(
           std::make_shared<Step>(linearIterationStep, nonlinearSmoother)) {
   // linear iteration step
diff --git a/src/solverfactory.hh b/src/solverfactory.hh
index 055401f4..6badcd55 100644
--- a/src/solverfactory.hh
+++ b/src/solverfactory.hh
@@ -31,8 +31,8 @@ class SolverFactory {
   using Step =
       TruncatedNonsmoothNewtonMultigrid<BlockProblem, NonlinearSmoother>;
 
-  SolverFactory(Dune::ParameterTree const &parset, size_t refinements,
-                Grid const &grid, Dune::BitSetVector<dim> const &ignoreNodes);
+  SolverFactory(Dune::ParameterTree const &parset, Grid const &grid,
+                Dune::BitSetVector<dim> const &ignoreNodes);
 
   ~SolverFactory();
 
-- 
GitLab