diff --git a/dumux/adaptive/initializationindicator.hh b/dumux/adaptive/initializationindicator.hh
index 87449396ab9cc1b77e2b539715e3a17d374bc691..20b90ab00392c6520edf8bb50cfbfec06f596427 100644
--- a/dumux/adaptive/initializationindicator.hh
+++ b/dumux/adaptive/initializationindicator.hh
@@ -75,8 +75,8 @@ public:
     : problem_(problem)
     , gridGeometry_(gridGeometry)
     , gridVariables_(gridVariables)
-    , minLevel_(getParamFromGroup<int>(problem->paramGroup(), "Adaptive.MinLevel"))
-    , maxLevel_(getParamFromGroup<int>(problem->paramGroup(), "Adaptive.MaxLevel"))
+    , minLevel_(getParamFromGroup<std::size_t>(problem->paramGroup(), "Adaptive.MinLevel"))
+    , maxLevel_(getParamFromGroup<std::size_t>(problem->paramGroup(), "Adaptive.MaxLevel"))
     , refineAtDirichletBC_(getParamFromGroup<bool>(problem->paramGroup(), "Adaptive.RefineAtDirichletBC", true))
     , refineAtFluxBC_(getParamFromGroup<bool>(problem->paramGroup(), "Adaptive.RefineAtFluxBC", true))
     , refineAtSource_(getParamFromGroup<bool>(problem->paramGroup(), "Adaptive.RefineAtSource", true))
diff --git a/dumux/flux/shallowwaterviscousflux.hh b/dumux/flux/shallowwaterviscousflux.hh
index a3b22fdd065b98688dcc8072033ecfa933945019..7b3f10faff44ac61ba1610f2b225a5d74bb5e366 100644
--- a/dumux/flux/shallowwaterviscousflux.hh
+++ b/dumux/flux/shallowwaterviscousflux.hh
@@ -218,8 +218,8 @@ public:
         const auto vViscousFlux = turbViscosity * averageDepth * gradV;
 
         // compute the mobility of the flux with the fluxlimiter
-        static const auto upperWaterDepthFluxLimiting = getParamFromGroup<double>(problem.paramGroup(), "FluxLimiterLET.UpperWaterDepth", 1e-3);
-        static const auto lowerWaterDepthFluxLimiting = getParamFromGroup<double>(problem.paramGroup(), "FluxLimiterLET.LowerWaterDepth", 1e-5);
+        static const auto upperWaterDepthFluxLimiting = getParamFromGroup<Scalar>(problem.paramGroup(), "FluxLimiterLET.UpperWaterDepth", 1e-3);
+        static const auto lowerWaterDepthFluxLimiting = getParamFromGroup<Scalar>(problem.paramGroup(), "FluxLimiterLET.LowerWaterDepth", 1e-5);
 
         const auto limitingDepth = (waterDepthLeft + waterDepthRight) * 0.5;
         const auto mobility = ShallowWater::fluxLimiterLET(limitingDepth,
diff --git a/dumux/io/grid/gridmanager_yasp.hh b/dumux/io/grid/gridmanager_yasp.hh
index d98c73d279aebb191e04726c5fd07fe66c1915c8..3454646a4bc6389cf19c02a2c3f3f43a9266c8eb 100644
--- a/dumux/io/grid/gridmanager_yasp.hh
+++ b/dumux/io/grid/gridmanager_yasp.hh
@@ -88,7 +88,7 @@ public:
             cells = getParamFromGroup<std::array<int, dim>>(modelParamGroup, "Grid.Cells", cells);
 
             // \todo TODO periodic boundaries with yasp (the periodicity concept of yasp grid is currently not supported, use dune-spgrid)
-            // const auto periodic = getParamFromGroup<std::bitset<dim>>(modelParamGroup, "Grid.Periodic", std::bitset<dim>());
+            // const auto periodic = getParamFromGroup<std::bitset<dim>>(modelParamGroup, "Grid.Periodic", std::bitset<dim>{});
             const std::bitset<dim> periodic;
 
             // get the overlap
@@ -269,7 +269,7 @@ public:
         const int overlap = getParamFromGroup<int>(modelParamGroup, "Grid.Overlap", 1);
         const bool verbose = getParamFromGroup<bool>(modelParamGroup, "Grid.Verbosity", false);
         // \todo TODO periodic boundaries with yasp (the periodicity concept of yasp grid is currently not supported, use dune-spgrid)
-        // const auto periodic = getParamFromGroup<std::bitset<dim>>(modelParamGroup, "Grid.Periodic", std::bitset<dim>());
+        // const auto periodic = getParamFromGroup<std::bitset<dim>>(modelParamGroup, "Grid.Periodic", std::bitset<dim>{});
         const std::bitset<dim> periodic;
 
         // Some sanity checks
diff --git a/dumux/linear/solver.hh b/dumux/linear/solver.hh
index 0b20771557eac272045f6a5ab246d962c1aa0500..0e73ac6b211f8582c8a0fcd9590443cd4e7889bb 100644
--- a/dumux/linear/solver.hh
+++ b/dumux/linear/solver.hh
@@ -55,8 +55,8 @@ public:
     {
         verbosity_ = getParamFromGroup<int>(paramGroup, "LinearSolver.Verbosity", 0);
         maxIter_ = getParamFromGroup<int>(paramGroup, "LinearSolver.MaxIterations", 250);
-        residReduction_ = getParamFromGroup<double>(paramGroup, "LinearSolver.ResidualReduction", 1e-13);
-        relaxation_ = getParamFromGroup<double>(paramGroup, "LinearSolver.Preconditioner.Relaxation", 1);
+        residReduction_ = getParamFromGroup<Scalar>(paramGroup, "LinearSolver.ResidualReduction", 1e-13);
+        relaxation_ = getParamFromGroup<Scalar>(paramGroup, "LinearSolver.Preconditioner.Relaxation", 1);
         precondIter_ = getParamFromGroup<int>(paramGroup, "LinearSolver.Preconditioner.Iterations", 1);
         precondVerbosity_ = getParamFromGroup<int>(paramGroup, "LinearSolver.Preconditioner.Verbosity", 0);
     }
@@ -96,19 +96,19 @@ public:
     { maxIter_ = i; }
 
     //! the linear solver residual reduction
-    double residReduction() const
+    Scalar residReduction() const
     { return residReduction_; }
 
     //! set the linear solver residual reduction
-    void setResidualReduction(double r)
+    void setResidualReduction(Scalar r)
     { residReduction_ = r; }
 
     //! the linear solver relaxation factor
-    double relaxation() const
+    Scalar relaxation() const
     { return relaxation_; }
 
     //! set the linear solver relaxation factor
-    void setRelaxation(double r)
+    void setRelaxation(Scalar r)
     { relaxation_ = r; }
 
     //! the number of preconditioner iterations
@@ -130,8 +130,8 @@ public:
 private:
     int verbosity_;
     int maxIter_;
-    double residReduction_;
-    double relaxation_;
+    Scalar residReduction_;
+    Scalar relaxation_;
     int precondIter_;
     int precondVerbosity_;
     const std::string paramGroup_;