From 0f2caa91850cbd3f91b2161e1ae4f572c9db4494 Mon Sep 17 00:00:00 2001
From: Thomas Fetzer <thomas.fetzer@iws.uni-stuttgart.de>
Date: Thu, 17 Dec 2015 09:13:43 +0100
Subject: [PATCH] [multidomain,BeaversJoseph] Use BJCoeff() from the Darcy
 spatial parameters which is more meaningful.

This includes proper warnings and removal of the SpatialParams objects.
---
 dumux/freeflow/stokes/stokesproblem.hh        |  1 +
 .../spatialparams/implicitspatialparams1p.hh  | 13 +++++++
 .../2cstokes2p2c/2cstokes2p2clocaloperator.hh |  9 ++---
 .../2cnistokes2p2cniproblem.hh                |  2 --
 .../2cnistokes2p2cni/2p2cnisubproblem.hh      | 10 ------
 .../2cnistokes2p2cni/stokes2cnisubproblem.hh  | 28 ++-------------
 .../2cnizeroeq2p2cniproblem.hh                |  1 -
 .../2cnizeroeq2p2cni/2p2cnisubproblem.hh      | 10 ------
 .../2cnizeroeq2p2cni/zeroeq2cnisubproblem.hh  | 34 ++-----------------
 .../2cstokes2p2c/2cstokes2p2cproblem.hh       |  1 -
 .../2cstokes2p2c/stokes2csubproblem.hh        | 19 ++---------
 .../2czeroeq2p2c/2czeroeq2p2cproblem.hh       |  1 -
 .../2czeroeq2p2c/zeroeq2csubproblem.hh        | 19 ++---------
 13 files changed, 27 insertions(+), 121 deletions(-)

diff --git a/dumux/freeflow/stokes/stokesproblem.hh b/dumux/freeflow/stokes/stokesproblem.hh
index 30a66ca70d..8393076d92 100644
--- a/dumux/freeflow/stokes/stokesproblem.hh
+++ b/dumux/freeflow/stokes/stokesproblem.hh
@@ -108,6 +108,7 @@ public:
      *
      * \return (Scalar) permeability
      */
+    DUNE_DEPRECATED_MSG("permeability() is deprecated.")
     Scalar permeability(const Element &element,
                         const FVElementGeometry &fvGeometry,
                         const Intersection &intersection,
diff --git a/dumux/material/spatialparams/implicitspatialparams1p.hh b/dumux/material/spatialparams/implicitspatialparams1p.hh
index 53b892295e..8af68925c7 100644
--- a/dumux/material/spatialparams/implicitspatialparams1p.hh
+++ b/dumux/material/spatialparams/implicitspatialparams1p.hh
@@ -164,6 +164,19 @@ public:
                    "a porosityAtPos() method.");
     }
 
+    /*!
+     * \brief Function for defining the Beavers-Joseph coefficient for multidomain
+     *        problems\f$\mathrm{[-]}\f$.
+     *
+     * \return Beavers-Joseph coefficient \f$\mathrm{[-]}\f$
+     * \param globalPos The global position
+     */
+    Scalar beaversJosephCoeffAtPos(const GlobalPosition& globalPos) const
+    {
+        DUNE_THROW(Dune::InvalidStateException,
+                   "The spatial parameters do not provide a beaversJosephCoeffAtPos() method.");
+    }
+
     /*!
      * \brief Apply the Forchheimer coefficient for inertial forces
      *        calculation.
diff --git a/dumux/multidomain/2cstokes2p2c/2cstokes2p2clocaloperator.hh b/dumux/multidomain/2cstokes2p2c/2cstokes2p2clocaloperator.hh
index e84e67ca1e..b631c31a73 100644
--- a/dumux/multidomain/2cstokes2p2c/2cstokes2p2clocaloperator.hh
+++ b/dumux/multidomain/2cstokes2p2c/2cstokes2p2clocaloperator.hh
@@ -140,7 +140,7 @@ public:
     typedef typename GET_PROP_TYPE(TypeTag, SubDomain2TypeTag) TwoPTwoCTypeTag;
 
     typedef typename GET_PROP_TYPE(TypeTag, FluidSystem) FluidSystem;
-    typedef typename GET_PROP_TYPE(Stokes2cTypeTag, SpatialParams) SpatialParams;
+    typedef typename GET_PROP_TYPE(TwoPTwoCTypeTag, SpatialParams) SpatialParams;
 
     typedef typename GET_PROP_TYPE(Stokes2cTypeTag, ElementVolumeVariables) ElementVolumeVariables1;
     typedef typename GET_PROP_TYPE(TwoPTwoCTypeTag, ElementVolumeVariables) ElementVolumeVariables2;
@@ -432,10 +432,10 @@ public:
 
 
         // MOMENTUM_X Balance
-        SpatialParams spatialParams = globalProblem_.sdProblem1().spatialParams();
+        SpatialParams spatialParams = globalProblem_.sdProblem2().spatialParams();
         Scalar beaversJosephCoeff = spatialParams.beaversJosephCoeffAtPos(globalPos1);
         assert(beaversJosephCoeff > 0);
-        beaversJosephCoeff /= std::sqrt(spatialParams.intrinsicPermeability(sdElement1, cParams.fvGeometry1, vertInElem1));
+        beaversJosephCoeff /= std::sqrt(spatialParams.intrinsicPermeability(sdElement2, cParams.fvGeometry2, vertInElem2));
         // Neumann-like conditions
 
         // TODO revise comment
@@ -805,7 +805,8 @@ public:
             }
         }
 
-        SpatialParams spatialParams = globalProblem_.sdProblem1().spatialParams();
+        typedef typename GET_PROP_TYPE(Stokes2cTypeTag, SpatialParams) SpatialParams1;
+        SpatialParams1 spatialParams = globalProblem_.sdProblem1().spatialParams();
         const GlobalPosition& globalPos = cParams.fvGeometry1.subContVol[vertInElem1].global;
         Scalar beaversJosephCoeff = spatialParams.beaversJosephCoeffAtPos(globalPos);
         assert(beaversJosephCoeff > 0);
diff --git a/test/multidomain/2cnistokes2p2cni/2cnistokes2p2cniproblem.hh b/test/multidomain/2cnistokes2p2cni/2cnistokes2p2cniproblem.hh
index d0d4cfddf0..ef2e9e0d4b 100644
--- a/test/multidomain/2cnistokes2p2cni/2cnistokes2p2cniproblem.hh
+++ b/test/multidomain/2cnistokes2p2cni/2cnistokes2p2cniproblem.hh
@@ -48,7 +48,6 @@
 #include <dumux/linear/pardisobackend.hh>
 #endif // HAVE_PARDISO
 
-#include "2cnistokes2p2cnispatialparams.hh"
 #include "stokes2cnisubproblem.hh"
 #include "2p2cnisubproblem.hh"
 
@@ -90,7 +89,6 @@ SET_TYPE_PROP(Stokes2cniSubProblem, OtherSubDomainTypeTag, TTAG(TwoPTwoCNISubPro
 SET_TYPE_PROP(TwoPTwoCNISubProblem, OtherSubDomainTypeTag, TTAG(Stokes2cniSubProblem));
 
 // Set the spatial parameters used for the problems
-SET_TYPE_PROP(Stokes2cniSubProblem, SpatialParams, Dumux::TwoCNIStokesTwoPTwoCNISpatialParams<TypeTag>);
 SET_TYPE_PROP(TwoPTwoCNISubProblem, SpatialParams, Dumux::TwoCNIStokesTwoPTwoCNISpatialParams<TypeTag>);
 
 // Set the fluid system to use complex relations (last argument)
diff --git a/test/multidomain/2cnistokes2p2cni/2p2cnisubproblem.hh b/test/multidomain/2cnistokes2p2cni/2p2cnisubproblem.hh
index e4de0983a8..df114ef356 100644
--- a/test/multidomain/2cnistokes2p2cni/2p2cnisubproblem.hh
+++ b/test/multidomain/2cnistokes2p2cni/2p2cnisubproblem.hh
@@ -421,16 +421,6 @@ public:
             (onRightBoundary_(globalPos) && onUpperBoundary_(globalPos)));
     }
 
-    /*!
-     * \brief Returns whether the position is an interface corner point
-     *
-     * This function is required in case of mortar coupling otherwise it should return false
-     *
-     * \param globalPos The global position
-     */
-    bool isInterfaceCornerPoint(const GlobalPosition &globalPos) const
-    { return false; }
-
     // \}
 
 private:
diff --git a/test/multidomain/2cnistokes2p2cni/stokes2cnisubproblem.hh b/test/multidomain/2cnistokes2p2cni/stokes2cnisubproblem.hh
index a52363fabc..228e370cd5 100644
--- a/test/multidomain/2cnistokes2p2cni/stokes2cnisubproblem.hh
+++ b/test/multidomain/2cnistokes2p2cni/stokes2cnisubproblem.hh
@@ -28,8 +28,6 @@
 #include <dumux/multidomain/2cnistokes2p2cni/stokesncnicouplinglocalresidual.hh>
 #include <dumux/multidomain/common/subdomainpropertydefaults.hh>
 
-#include "2cnistokes2p2cnispatialparams.hh"
-
 namespace Dumux
 {
 
@@ -42,7 +40,7 @@ class Stokes2cniSubProblem;
 namespace Properties
 {
 NEW_TYPE_TAG(Stokes2cniSubProblem,
-    INHERITS_FROM(BoxStokesncni, SubDomain, TwoCNIStokesTwoPTwoCNISpatialParams));
+    INHERITS_FROM(BoxStokesncni, SubDomain));
 
 // Set the problem property
 SET_TYPE_PROP(Stokes2cniSubProblem, Problem, Dumux::Stokes2cniSubProblem<TypeTag>);
@@ -96,8 +94,6 @@ class Stokes2cniSubProblem : public StokesProblem<TypeTag>
     typedef typename GET_PROP_TYPE(TypeTag, GridView) GridView;
     typedef typename GET_PROP_TYPE(TypeTag, TimeManager) TimeManager;
 
-    typedef typename GET_PROP_TYPE(TypeTag, SpatialParams) SpatialParams;
-
     enum {
         // Number of equations and grid dimension
         numEq = GET_PROP_VALUE(TypeTag, NumEq),
@@ -151,8 +147,7 @@ public:
      * \param gridView The simulation's idea about physical space
      */
     Stokes2cniSubProblem(TimeManager &timeManager, const GridView &gridView)
-        : ParentType(timeManager, gridView),
-          spatialParams_(gridView)
+        : ParentType(timeManager, gridView)
     {
         bBoxMin_[0] = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, Grid, LowerLeftX);
         bBoxMax_[0] = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, Grid, UpperRightX);
@@ -391,23 +386,6 @@ public:
             return false;
     }
 
-    /*!
-     * \brief Auxiliary function used for the mortar coupling, if mortar coupling,
-     *        this should return true
-     *
-     * \param globalPos The global position
-     */
-    bool isInterfaceCornerPoint(const GlobalPosition &globalPos) const
-    { return false; }
-
-    /*!
-     * \brief Returns the spatial parameters object.
-     */
-    SpatialParams &spatialParams()
-    { return spatialParams_; }
-    const SpatialParams &spatialParams() const
-    { return spatialParams_; }
-
     //! \brief Returns the reference velocity.
     const Scalar refVelocity() const
     { return refVelocity_ + variation_(sinusVAmplitude_, sinusVPeriod_); }
@@ -489,8 +467,6 @@ private:
     const Scalar height_() const
     { return bBoxMax_[1] - bBoxMin_[1]; }
 
-    SpatialParams spatialParams_;
-
     static constexpr Scalar eps_ = 1e-8;
 
     GlobalPosition bBoxMin_;
diff --git a/test/multidomain/2cnizeroeq2p2cni/2cnizeroeq2p2cniproblem.hh b/test/multidomain/2cnizeroeq2p2cni/2cnizeroeq2p2cniproblem.hh
index bce732ddc2..81c4649e9f 100644
--- a/test/multidomain/2cnizeroeq2p2cni/2cnizeroeq2p2cniproblem.hh
+++ b/test/multidomain/2cnizeroeq2p2cni/2cnizeroeq2p2cniproblem.hh
@@ -76,7 +76,6 @@ SET_TYPE_PROP(ZeroEq2cniSubProblem, OtherSubDomainTypeTag, TTAG(TwoPTwoCNISubPro
 SET_TYPE_PROP(TwoPTwoCNISubProblem, OtherSubDomainTypeTag, TTAG(ZeroEq2cniSubProblem));
 
 // Set the same spatial parameters for both sub-problems
-SET_TYPE_PROP(ZeroEq2cniSubProblem, SpatialParams, Dumux::TwoCNIZeroEqTwoPTwoCNISpatialParams<TypeTag>);
 SET_TYPE_PROP(TwoPTwoCNISubProblem, SpatialParams, Dumux::TwoCNIZeroEqTwoPTwoCNISpatialParams<TypeTag>);
 
 // Set the fluid system to use complex relations (last argument)
diff --git a/test/multidomain/2cnizeroeq2p2cni/2p2cnisubproblem.hh b/test/multidomain/2cnizeroeq2p2cni/2p2cnisubproblem.hh
index ae9715eb32..9d7f8ebbba 100644
--- a/test/multidomain/2cnizeroeq2p2cni/2p2cnisubproblem.hh
+++ b/test/multidomain/2cnizeroeq2p2cni/2p2cnisubproblem.hh
@@ -347,16 +347,6 @@ public:
                 || (onRightBoundary_(globalPos) && onUpperBoundary_(globalPos)));
     }
 
-    /*!
-     * \brief Returns whether the position is an interface corner point
-     *
-     * This function is required in case of mortar coupling otherwise it should return false
-     *
-     * \param globalPos The global position
-     */
-    bool isInterfaceCornerPoint(const GlobalPosition &globalPos) const
-    { return false; }
-
     // \}
 
 private:
diff --git a/test/multidomain/2cnizeroeq2p2cni/zeroeq2cnisubproblem.hh b/test/multidomain/2cnizeroeq2p2cni/zeroeq2cnisubproblem.hh
index d30bbd7d30..b2e3d1b1be 100644
--- a/test/multidomain/2cnizeroeq2p2cni/zeroeq2cnisubproblem.hh
+++ b/test/multidomain/2cnizeroeq2p2cni/zeroeq2cnisubproblem.hh
@@ -28,8 +28,6 @@
 #include <dumux/multidomain/common/subdomainpropertydefaults.hh>
 #include <dumux/multidomain/2cnistokes2p2cni/stokesncnicouplinglocalresidual.hh>
 
-#include "2cnizeroeq2p2cnispatialparameters.hh"
-
 namespace Dumux
 {
 
@@ -39,7 +37,7 @@ class ZeroEq2cniSubProblem;
 namespace Properties
 {
 NEW_TYPE_TAG(ZeroEq2cniSubProblem,
-             INHERITS_FROM(BoxZeroEqncni, SubDomain, TwoCNIZeroEqTwoPTwoCNISpatialParams));
+             INHERITS_FROM(BoxZeroEqncni, SubDomain));
 
 // Set the problem property
 SET_TYPE_PROP(ZeroEq2cniSubProblem, Problem, Dumux::ZeroEq2cniSubProblem<TypeTag>);
@@ -108,8 +106,6 @@ class ZeroEq2cniSubProblem : public ZeroEqProblem<TypeTag>
     typedef typename GET_PROP_TYPE(TypeTag, GridView) GridView;
     typedef typename GET_PROP_TYPE(TypeTag, TimeManager) TimeManager;
 
-    typedef typename GET_PROP_TYPE(TypeTag, SpatialParams) SpatialParams;
-
     typedef typename GET_PROP_TYPE(TypeTag, Indices) Indices;
 
     enum {
@@ -159,8 +155,7 @@ public:
      * \param gridView The simulation's idea about physical space
      */
     ZeroEq2cniSubProblem(TimeManager &timeManager, const GridView &gridView)
-        : ParentType(timeManager, gridView),
-          spatialParams_(gridView)
+        : ParentType(timeManager, gridView)
     {
         bBoxMin_[0] = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, Grid, LowerLeftX);
         bBoxMax_[0] = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, Grid, UpperRightX);
@@ -173,8 +168,6 @@ public:
         refPressure_ = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, FreeFlow, RefPressure);
         refMassfrac_ = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, FreeFlow, RefMassfrac);
         refTemperature_ = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, FreeFlow, RefTemperature);
-
-        alphaBJ_ = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, SpatialParams, AlphaBJ);
     }
 
     // functions have to be overwritten, otherwise they remain uninitialised
@@ -298,25 +291,6 @@ public:
                 || (onRightBoundary_(globalPos) && onUpperBoundary_(globalPos)));
     }
 
-    /*!
-     * \brief Returns the spatial parameters object.
-     */
-    SpatialParams &spatialParams()
-    { return spatialParams_; }
-    const SpatialParams &spatialParams() const
-    { return spatialParams_; }
-
-    /*!
-     * \brief Auxiliary function used for the mortar coupling, if mortar coupling,
-     *        this should return true
-     *
-     * \param globalPos The global position
-     */
-    bool isInterfaceCornerPoint(const GlobalPosition &globalPos) const
-    {
-        return false;
-    }
-
     //! \brief Returns the velocity at the inflow.
     const Scalar refVelocity() const
     {
@@ -388,8 +362,6 @@ private:
                 || onLowerBoundary_(globalPos) || onUpperBoundary_(globalPos));
     }
 
-    SpatialParams spatialParams_;
-
     static constexpr Scalar eps_ = 1e-8;
     GlobalPosition bBoxMin_;
     GlobalPosition bBoxMax_;
@@ -399,8 +371,6 @@ private:
     Scalar refMassfrac_;
     Scalar refTemperature_;
 
-    Scalar alphaBJ_;
-
     Scalar runUpDistanceX1_;
     Scalar runUpDistanceX2_;
 };
diff --git a/test/multidomain/2cstokes2p2c/2cstokes2p2cproblem.hh b/test/multidomain/2cstokes2p2c/2cstokes2p2cproblem.hh
index 35eb310e3c..ecadb6410c 100644
--- a/test/multidomain/2cstokes2p2c/2cstokes2p2cproblem.hh
+++ b/test/multidomain/2cstokes2p2c/2cstokes2p2cproblem.hh
@@ -89,7 +89,6 @@ SET_TYPE_PROP(Stokes2cSubProblem, OtherSubDomainTypeTag, TTAG(TwoPTwoCSubProblem
 SET_TYPE_PROP(TwoPTwoCSubProblem, OtherSubDomainTypeTag, TTAG(Stokes2cSubProblem));
 
 // Set the spatial parameters used for the problems
-SET_TYPE_PROP(Stokes2cSubProblem, SpatialParams, Dumux::TwoCStokesTwoPTwoCSpatialParams<TypeTag>);
 SET_TYPE_PROP(TwoPTwoCSubProblem, SpatialParams, Dumux::TwoCStokesTwoPTwoCSpatialParams<TypeTag>);
 
 // Set the fluid system to use simple relations (last argument)
diff --git a/test/multidomain/2cstokes2p2c/stokes2csubproblem.hh b/test/multidomain/2cstokes2p2c/stokes2csubproblem.hh
index 4ed458a942..37f045bc0b 100644
--- a/test/multidomain/2cstokes2p2c/stokes2csubproblem.hh
+++ b/test/multidomain/2cstokes2p2c/stokes2csubproblem.hh
@@ -28,8 +28,6 @@
 #include <dumux/multidomain/2cstokes2p2c/stokesnccouplinglocalresidual.hh>
 #include <dumux/multidomain/common/subdomainpropertydefaults.hh>
 
-#include "2cstokes2p2cspatialparams.hh"
-
 namespace Dumux
 {
 
@@ -39,7 +37,7 @@ class Stokes2cSubProblem;
 namespace Properties
 {
 NEW_TYPE_TAG(Stokes2cSubProblem,
-             INHERITS_FROM(BoxStokesnc, SubDomain, TwoCStokesTwoPTwoCSpatialParams));
+             INHERITS_FROM(BoxStokesnc, SubDomain));
 
 // Set the problem property
 SET_TYPE_PROP(Stokes2cSubProblem, Problem, Dumux::Stokes2cSubProblem<TypeTag>);
@@ -93,8 +91,6 @@ class Stokes2cSubProblem : public StokesProblem<TypeTag>
     typedef typename GET_PROP_TYPE(TypeTag, GridView) GridView;
     typedef typename GET_PROP_TYPE(TypeTag, TimeManager) TimeManager;
 
-    typedef typename GET_PROP_TYPE(TypeTag, SpatialParams) SpatialParams;
-
     typedef typename GET_PROP_TYPE(TypeTag, Indices) Indices;
 
     enum {
@@ -147,8 +143,7 @@ public:
      * \param gridView The simulation's idea about physical space
      */
     Stokes2cSubProblem(TimeManager &timeManager, const GridView gridView)
-        : ParentType(timeManager, gridView),
-          spatialParams_(gridView)
+        : ParentType(timeManager, gridView)
     {
         bBoxMin_[0] = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, Grid, LowerLeftX);
         bBoxMax_[0] = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, Grid, UpperRightX);
@@ -365,14 +360,6 @@ public:
             return false;
     }
 
-    /*!
-     * \brief Returns the spatial parameters object.
-     */
-    SpatialParams &spatialParams()
-    { return spatialParams_; }
-    const SpatialParams &spatialParams() const
-    { return spatialParams_; }
-
     //! \brief Returns the reference velocity.
     const Scalar refVelocity() const
     { return refVelocity_ + variation_(sinusVAmplitude_, sinusVPeriod_); }
@@ -454,8 +441,6 @@ private:
     const Scalar height_() const
     { return bBoxMax_[1] - bBoxMin_[1]; }
 
-    SpatialParams spatialParams_;
-
     static constexpr Scalar eps_ = 1e-8;
     GlobalPosition bBoxMin_;
     GlobalPosition bBoxMax_;
diff --git a/test/multidomain/2czeroeq2p2c/2czeroeq2p2cproblem.hh b/test/multidomain/2czeroeq2p2c/2czeroeq2p2cproblem.hh
index 6eac23eca6..e69714d4c0 100644
--- a/test/multidomain/2czeroeq2p2c/2czeroeq2p2cproblem.hh
+++ b/test/multidomain/2czeroeq2p2c/2czeroeq2p2cproblem.hh
@@ -76,7 +76,6 @@ SET_TYPE_PROP(ZeroEq2cSubProblem, OtherSubDomainTypeTag, TTAG(TwoPTwoCSubProblem
 SET_TYPE_PROP(TwoPTwoCSubProblem, OtherSubDomainTypeTag, TTAG(ZeroEq2cSubProblem));
 
 // Set the same spatial parameters for both sub-problems
-SET_TYPE_PROP(ZeroEq2cSubProblem, SpatialParams, Dumux::TwoCZeroEqTwoPTwoCSpatialParams<TypeTag>);
 SET_TYPE_PROP(TwoPTwoCSubProblem, SpatialParams, Dumux::TwoCZeroEqTwoPTwoCSpatialParams<TypeTag>);
 
 // Set the fluid system to use simple relations (last argument)
diff --git a/test/multidomain/2czeroeq2p2c/zeroeq2csubproblem.hh b/test/multidomain/2czeroeq2p2c/zeroeq2csubproblem.hh
index 8a17cbfea3..9beed5ef22 100644
--- a/test/multidomain/2czeroeq2p2c/zeroeq2csubproblem.hh
+++ b/test/multidomain/2czeroeq2p2c/zeroeq2csubproblem.hh
@@ -28,8 +28,6 @@
 #include <dumux/multidomain/common/subdomainpropertydefaults.hh>
 #include <dumux/multidomain/2cstokes2p2c/stokesnccouplinglocalresidual.hh>
 
-#include "2czeroeq2p2cspatialparameters.hh"
-
 namespace Dumux
 {
 
@@ -39,7 +37,7 @@ class ZeroEq2cSubProblem;
 namespace Properties
 {
 NEW_TYPE_TAG(ZeroEq2cSubProblem,
-             INHERITS_FROM(BoxZeroEqnc, SubDomain, TwoCZeroEqTwoPTwoCSpatialParams));
+             INHERITS_FROM(BoxZeroEqnc, SubDomain));
 
 // Set the problem property
 SET_TYPE_PROP(ZeroEq2cSubProblem, Problem, Dumux::ZeroEq2cSubProblem<TypeTag>);
@@ -109,8 +107,6 @@ class ZeroEq2cSubProblem : public ZeroEqProblem<TypeTag>
     typedef typename GET_PROP_TYPE(TypeTag, GridView) GridView;
     typedef typename GET_PROP_TYPE(TypeTag, TimeManager) TimeManager;
 
-    typedef typename GET_PROP_TYPE(TypeTag, SpatialParams) SpatialParams;
-
     typedef typename GET_PROP_TYPE(TypeTag, Indices) Indices;
 
     enum {
@@ -160,8 +156,7 @@ public:
      * \param gridView The simulation's idea about physical space
      */
     ZeroEq2cSubProblem(TimeManager &timeManager, const GridView gridView)
-        : ParentType(timeManager, gridView),
-          spatialParams_(gridView)
+        : ParentType(timeManager, gridView)
     {
         bBoxMin_[0] = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, Grid, LowerLeftX);
         bBoxMax_[0] = GET_RUNTIME_PARAM_FROM_GROUP(TypeTag, Scalar, Grid, UpperRightX);
@@ -313,14 +308,6 @@ public:
                 || (onRightBoundary_(globalPos) && onUpperBoundary_(globalPos)));
     }
 
-    /*!
-     * \brief Returns the spatial parameters object.
-     */
-    SpatialParams &spatialParams()
-    { return spatialParams_; }
-    const SpatialParams &spatialParams() const
-    { return spatialParams_; }
-
     //! \brief Returns the velocity at the inflow.
     const Scalar refVelocity() const
     {
@@ -405,8 +392,6 @@ private:
                 || onLowerBoundary_(globalPos) || onUpperBoundary_(globalPos));
     }
 
-    SpatialParams spatialParams_;
-
     static constexpr Scalar eps_ = 1e-8;
     GlobalPosition bBoxMin_;
     GlobalPosition bBoxMax_;
-- 
GitLab