diff --git a/bin/doc/compareparameters.sh b/bin/doc/compareparameters.sh
index 920c910db6b9e3a857a635dc7487fd5715645ebf..3b958673534167dc9964355e616d0e8718f24210 100755
--- a/bin/doc/compareparameters.sh
+++ b/bin/doc/compareparameters.sh
@@ -114,7 +114,7 @@ sort -u old_parameters.csv -o old_parameters.csv
 # 3. compare lists of old and new parameters
 # treat additions
 diff -u old_parameters.csv new_parameters.csv | grep -E "^\+" | grep -v "\++" >added.csv
-if [[ -s added.csv ]]; then
+if [ -s "added.csv" ]; then
   echo ""
   echo "Compared to parameterlist.txt, the following parameters have been _added_:"
   echo ""
@@ -131,7 +131,7 @@ if [[ -s added.csv ]]; then
 fi
 # treat deletions
 diff -u old_parameters.csv new_parameters.csv | grep -E "^\-" | grep -v "\--" >deleted.csv
-if [[ -s deleted.csv ]]; then
+if [ -s "deleted.csv" ]; then
   echo ""
   echo "Compared to parameterlist.txt, the following parameters have been _deleted_:"
   echo ""
@@ -146,7 +146,7 @@ if [[ -s deleted.csv ]]; then
   echo "their name. If so, delete the corresponding rows in doc/doxygen/extradoc/parameterlist.txt."
 fi
 # final remark
-if [[ ! -s added.csv && ! -s deleted.csv ]]; then
+if [ ! -s "added.csv" && ! -s "deleted.csv" ]; then
   echo ""
   echo "Compared to parameterlist.txt, no parameters have been added or deleted."
   echo ""
diff --git a/doc/doxygen/extradoc/parameterlist.txt b/doc/doxygen/extradoc/parameterlist.txt
index 48a55c6b2c742da9316a6c00ec694ac97a09ada3..57ac8ab96ca271738086758237838235464fd312 100644
--- a/doc/doxygen/extradoc/parameterlist.txt
+++ b/doc/doxygen/extradoc/parameterlist.txt
@@ -12,10 +12,9 @@
  * | :-         | :-            | :-         | :-                | :-          |
  * | -          | ParameterFile | std::string| executable.input  | name of the parameter file |
 * | \b Adaptive | BCRefinementThreshold | Scalar | 1e-10 | |
-Adaptive | MaxLevel | std::size_t | 0 | |
+* |  | MaxLevel | std::size_t | 0 | |
 * | \b Assembly | NumericDifference.BaseEpsilon | Scalar | 1e-10 | |
 * |  | NumericDifferenceMethod | int | | |
-* |  | NumericDifferenceMethod | int | | |
 * |  | NumericDifference.PriVarMagnitude | NumEqVector(-1) | | |
 * | \b BinaryCoefficients | GasDiffCoeff | Scalar | | |
 * |  | LiquidDiffCoeff | Scalar | | |
@@ -47,9 +46,14 @@ Adaptive | MaxLevel | std::size_t | 0 | |
 * |  | ThermoneutralVoltage | Scalar | | |
 * |  | TransferCoefficient | Scalar | | |
 * |  | TransportNumberH20 | Scalar | | |
+* | \b FacetCoupling | Xi | Scalar | 1.0 | |
 * | \b Flux | DifferencingScheme | std::string | Minmod | |
 * |  | TvdApproach | std::string | Uniform | |
 * |  | UpwindWeight | Scalar | | |
+* | \b FluxLimiterLET | LowerWaterDepth | Scalar | 1e-5 | |
+* |  | UpperWaterDepth | Scalar | 1e-3 | |
+* |  | UpwindFluxLimiting | bool | false | |
+* | \b FluxOverSurface | Verbose | bool | false | |
 * | \b Forchheimer | MaxIterations | std::size_t | 30 | |
 * |  | NewtonTolerance | Scalar | 1e-12 | |
 * | \b FreeFlow | EnableUnsymmetrizedVelocityGradient | bool | false | |
@@ -101,8 +105,6 @@ Adaptive | MaxLevel | std::size_t | 0 | |
 * |  | UpperRight | GlobalPosition | | |
 * |  | Verbosity | bool | false | |
 * |  | WellRadius | Scalar | | |
-* |  | WriteSubGridToDGF | bool | false) | |
-* |  | WriteSubGridToVtk | bool | false) | |
 * | \b Impet | CFLFactor | Scalar | | |
 * |  | DtVariationRestrictionFactorstd::numeric_limits<Scalar | | | |
 * |  | EnableVolumeIntegral | bool | | |
@@ -120,20 +122,25 @@ Adaptive | MaxLevel | std::size_t | 0 | |
 * |  | SwitchNormals | bool | | |
 * | \b KEpsilon | EnableKinematicViscosity | bool | true | |
 * |  | EnableZeroEqScaling | bool | true | |
-* |  |YPlusThreshold | Scalar | 30 | |
+* |  | YPlusThreshold | Scalar | 30 | |
 * | \b KOmega | EnableDissipationLimiter | bool | true | |
 * |  | EnableProductionLimiter | bool | false | |
 * | \b LinearSolver | GMResRestart | double | | |
-* |  | GMResRestart | int | | |
-* |  | MaxIterations | int | | |
-* |  | PreconditionerIterations | int | | |
+* |  | GMResRestart | int | 10 | |
+* |  | MaxIterations | int | 250 | |
+* |  | PreconditionerIterations | int | 1 | |
 * |  | PreconditionerRelaxation | double | | |
-* |  | ResidualReduction | double | | |
-* |  | ResidualReduction | Scalar | 1e-6) | |
-* |  | Verbosity | int | | |
+* |  | PreconditionerVerbosity | int | | |
+* |  | Preconditioner.DetermineRelaxationFactor | bool | true | |
+* |  | Preconditioner.PowerLawIterations | std::size_t | 5 | |
+* |  | Preconditioner.Relaxation | double | 1 | |
+* |  | ResidualReduction | double | 1e-13| |
+* |  | ResidualReduction | Scalar | 1e-6 | |
+* |  | Verbosity | int | 0 | |
 * | \b LoadSolution | CellCenterPriVarNames | std::vector<std::string> | | |
 * |  | FacePriVarNames | std::vector<std::string> | | |
 * |  | PriVarNames | std::vector<std::string> | | |
+* | \b MatrixConverter | DeletePatternEntriesBelowAbsThreshold | Scalar | -1.0 | |
 * | \b MixedDimension | IntegrationOrder | int | 1 | |
 * |  | KernelWidth | Scalar | | |
 * |  | NumCircleSegments | int | | |
@@ -165,11 +172,10 @@ Adaptive | MaxLevel | std::size_t | 0 | |
 * |  | TargetSteps | int | | |
 * |  | UseLineSearch | bool | | |
 * |  | Verbosity | int | 2 | |
+* | \b PrimaryVariableSwitch | Verbosity | int | 1 | |
 * | \b Problem | EnableGravity | bool | | |
-* |  | EnableGravity | bool | | |
 * |  | EnableInertiaTerms | bool | | |
 * |  | Name | std::string | | |
-* |  | Name | std::string | | |
 * |  | UsePrimaryVariableSwitch | bool | | |
 * | \b RANS | EddyViscosityModel | std::string | vanDriest | |
 * |  | FlowNormalAxis | int | -1 | |
@@ -190,8 +196,6 @@ Adaptive | MaxLevel | std::size_t | 0 | |
 * |  | SubTimestepVerbosity | int | | |
 * |  | TEnd | Scalar | | |
 * | \b Vtk | AddProcessRank | bool | | |
-* |  | AddProcessRank | bool | | |
-* |  | AddVelocity | bool | | |
 * |  | AddVelocity | bool | true | |
 * |  | OutputLevel | int | | |
 * |  | WriteFaceData | bool | false | |
diff --git a/dumux/common/parameters.hh b/dumux/common/parameters.hh
index 9dee178993366a7b70f56454c6da1d924e7669bd..2182cbb3e09209c1491c2baa5ea067c6387930bd 100644
--- a/dumux/common/parameters.hh
+++ b/dumux/common/parameters.hh
@@ -331,7 +331,7 @@ private:
         defaultParams["Vtk.AddProcessRank"] = "true";
 
         // parameters in the mpfa group
-        defaultParams["Mpfa.Q"] = "0.0";
+        defaultParams["MPFA.Q"] = "0.0";
 
         // merge the global default tree but do not overwrite if the parameter already exists
         mergeTree_(params, defaultParams, false);
diff --git a/dumux/discretization/cellcentered/mpfa/fvelementgeometry.hh b/dumux/discretization/cellcentered/mpfa/fvelementgeometry.hh
index b4e0d84987a0b906b30e24823d658c61c13dfb46..50edf268d36226e6ce6b88dedf2d70f15da9d501 100644
--- a/dumux/discretization/cellcentered/mpfa/fvelementgeometry.hh
+++ b/dumux/discretization/cellcentered/mpfa/fvelementgeometry.hh
@@ -343,7 +343,7 @@ private:
         const auto& neighborVolVarIndices = gridGeometry().neighborVolVarIndices(eIdx);
 
         // the quadrature point parameterizaion to be used on scvfs
-        static const auto q = getParam<CoordScalar>("Mpfa.Q");
+        static const auto q = getParam<CoordScalar>("MPFA.Q");
 
         // reserve memory for the scv faces
         const auto numLocalScvf = scvFaceIndices.size();
@@ -430,7 +430,7 @@ private:
         const auto& neighborVolVarIndices = gridGeometry().neighborVolVarIndices(eIdxGlobal);
 
         // the quadrature point parameterizaion to be used on scvfs
-        static const auto q = getParam<CoordScalar>("Mpfa.Q");
+        static const auto q = getParam<CoordScalar>("MPFA.Q");
 
         // for network grids we only want to do one scvf per half facet
         // this approach assumes conforming grids at branching facets
diff --git a/dumux/discretization/cellcentered/mpfa/fvgridgeometry.hh b/dumux/discretization/cellcentered/mpfa/fvgridgeometry.hh
index 70131a9314eeccde3ef7ae1d5313085f5a7b5045..772ac838c83a207886bdfbab232f82ce3b0a50e7 100644
--- a/dumux/discretization/cellcentered/mpfa/fvgridgeometry.hh
+++ b/dumux/discretization/cellcentered/mpfa/fvgridgeometry.hh
@@ -278,7 +278,7 @@ public:
                         secondaryInteractionVolumeVertices_[vIdxGlobal] = true;
 
                     // the quadrature point parameterizarion to be used on scvfs
-                    static const auto q = getParam<CoordScalar>("Mpfa.Q");
+                    static const auto q = getParam<CoordScalar>("MPFA.Q");
 
                     // make the scv face (for non-boundary scvfs on network grids, use precalculated outside indices)
                     const auto& outsideScvIndices = [&] ()