From e865c9027e85fba95c427aa9db3ad285806edcfa Mon Sep 17 00:00:00 2001
From: Bernd Flemisch <bernd@iws.uni-stuttgart.de>
Date: Tue, 8 Oct 2019 17:45:19 +0200
Subject: [PATCH] [discretization] replace usages of FV(fv)GridGeometry

---
 dumux/assembly/fvassembler.hh                 |  2 +-
 dumux/common/properties.hh                    |  3 ---
 .../staggered/fvelementgeometry.hh            |  2 +-
 .../discretization/staggered/gridvariables.hh |  3 ++-
 .../boundary/stokesdarcy/couplingdata.hh      |  2 +-
 .../richards/localresidual.hh                 |  6 ++---
 dumux/porousmediumflow/velocity.hh            |  2 +-
 examples/1ptracer/main.cc                     |  2 +-
 examples/1ptracer/problem_1p.hh               | 10 ++++----
 examples/1ptracer/problem_tracer.hh           |  6 ++---
 examples/2pinfiltration/main.cc               |  2 +-
 examples/2pinfiltration/problem.hh            | 24 +++++++++----------
 examples/shallowwaterfriction/main.cc         | 16 ++++++-------
 examples/shallowwaterfriction/problem.hh      | 10 ++++----
 .../1pnc/implicit/1p2c/isothermal/problem.hh  |  6 ++---
 .../1pnc/implicit/1p3c/main.cc                |  2 +-
 .../1pnc/implicit/1p3c/problem.hh             | 10 ++++----
 17 files changed, 53 insertions(+), 55 deletions(-)

diff --git a/dumux/assembly/fvassembler.hh b/dumux/assembly/fvassembler.hh
index 09f77129a3..a8f0c94fea 100644
--- a/dumux/assembly/fvassembler.hh
+++ b/dumux/assembly/fvassembler.hh
@@ -100,7 +100,7 @@ public:
                 std::shared_ptr<GridVariables> gridVariables,
                 std::shared_ptr<const TimeLoop> timeLoop)
     : problem_(problem)
-    , gridGeometry_(fvGridGeometry)
+    , gridGeometry_(gridGeometry)
     , gridVariables_(gridVariables)
     , timeLoop_(timeLoop)
     , isStationaryProblem_(!timeLoop)
diff --git a/dumux/common/properties.hh b/dumux/common/properties.hh
index db26f13e76..a61b16a2c0 100644
--- a/dumux/common/properties.hh
+++ b/dumux/common/properties.hh
@@ -127,9 +127,6 @@ template<class TypeTag, class MyTypeTag>
 struct GridGeometry { using type = GetPropType<TypeTag, Properties::FVGridGeometry>;  };       //!< The type of the global finite volume geometry
 #pragma GCC diagnostic pop
 
-template<class TypeTag, class MyTypeTag>
-struct GridGeometry { using type = GetPropType<TypeTag, Properties::FVGridGeometry>;  };       //!< The type of the global finite volume geometry
-
 template<class TypeTag, class MyTypeTag>
 struct EnableFVGridGeometryCache { using type = UndefinedProperty; };           //!< specifies if geometric data is saved (faster, but more memory consuming)
 
diff --git a/dumux/discretization/staggered/fvelementgeometry.hh b/dumux/discretization/staggered/fvelementgeometry.hh
index 8ea0214f26..f1e91e5830 100644
--- a/dumux/discretization/staggered/fvelementgeometry.hh
+++ b/dumux/discretization/staggered/fvelementgeometry.hh
@@ -211,7 +211,7 @@ public:
 
     //! The global finite volume geometry we are a restriction of
     [[deprecated("Use gridGeometry() instead. fvGridGeometry() will be removed after 3.1!")]]
-    const FVGridGeometry& fvGridGeometry() const
+    const GridGeometry& fvGridGeometry() const
     { return gridGeometry(); }
     const GridGeometry& gridGeometry() const
     { return *gridGeometryPtr_; }
diff --git a/dumux/discretization/staggered/gridvariables.hh b/dumux/discretization/staggered/gridvariables.hh
index bd981c5047..95d8578a92 100644
--- a/dumux/discretization/staggered/gridvariables.hh
+++ b/dumux/discretization/staggered/gridvariables.hh
@@ -46,7 +46,8 @@ public:
 
     //! export primary variable type
     using PrimaryVariables = typename VolumeVariables::PrimaryVariables;
-    using FVGridGeometry = typename ActualGridVariables::GridGeometry;
+    using GridGeometry = typename ActualGridVariables::GridGeometry;
+    using FVGridGeometry [[deprecated ("Use GridGeometry instead. Will be removed after 3.1!")]]= GridGeometry;
 
     explicit StaggeredGridVariablesView(ActualGridVariables* gridVariables)
     : gridVariables_(gridVariables) {}
diff --git a/dumux/multidomain/boundary/stokesdarcy/couplingdata.hh b/dumux/multidomain/boundary/stokesdarcy/couplingdata.hh
index 97cedbd184..fd03a4eb5f 100644
--- a/dumux/multidomain/boundary/stokesdarcy/couplingdata.hh
+++ b/dumux/multidomain/boundary/stokesdarcy/couplingdata.hh
@@ -426,7 +426,7 @@ protected:
         using ThermalConductivityModel = GetPropType<SubDomainTypeTag<darcyIdx>, Properties::ThermalConductivityModel>;
         const auto& problem = this->couplingManager().problem(darcyIdx);
         return Deprecated::template effectiveThermalConductivity<ThermalConductivityModel>(
-                 volVars, problem.spatialParams(), fvGeometry.fvGridGeometry().element(scv.elementIndex()), fvGeometry, scv);
+                 volVars, problem.spatialParams(), fvGeometry.gridGeometry().element(scv.elementIndex()), fvGeometry, scv);
     }
 
     /*!
diff --git a/dumux/porousmediumflow/richards/localresidual.hh b/dumux/porousmediumflow/richards/localresidual.hh
index 0cf603695e..f31b8cb046 100644
--- a/dumux/porousmediumflow/richards/localresidual.hh
+++ b/dumux/porousmediumflow/richards/localresidual.hh
@@ -237,7 +237,7 @@ public:
      * \param scvf The sub control volume face
      */
     template<class PartialDerivativeMatrices, class T = TypeTag>
-    std::enable_if_t<GetPropType<T, Properties::FVGridGeometry>::discMethod == DiscretizationMethod::cctpfa, void>
+    std::enable_if_t<GetPropType<T, Properties::GridGeometry>::discMethod == DiscretizationMethod::cctpfa, void>
     addFluxDerivatives(PartialDerivativeMatrices& derivativeMatrices,
                        const Problem& problem,
                        const Element& element,
@@ -256,7 +256,7 @@ public:
         // get references to the two participating vol vars & parameters
         const auto insideScvIdx = scvf.insideScvIdx();
         const auto outsideScvIdx = scvf.outsideScvIdx();
-        const auto outsideElement = fvGeometry.fvGridGeometry().element(outsideScvIdx);
+        const auto outsideElement = fvGeometry.gridGeometry().element(outsideScvIdx);
         const auto& insideScv = fvGeometry.scv(insideScvIdx);
         const auto& outsideScv = fvGeometry.scv(outsideScvIdx);
         const auto& insideVolVars = curElemVolVars[insideScvIdx];
@@ -313,7 +313,7 @@ public:
      * \param scvf The sub control volume face
      */
     template<class JacobianMatrix, class T = TypeTag>
-    std::enable_if_t<GetPropType<T, Properties::FVGridGeometry>::discMethod == DiscretizationMethod::box, void>
+    std::enable_if_t<GetPropType<T, Properties::GridGeometry>::discMethod == DiscretizationMethod::box, void>
     addFluxDerivatives(JacobianMatrix& A,
                        const Problem& problem,
                        const Element& element,
diff --git a/dumux/porousmediumflow/velocity.hh b/dumux/porousmediumflow/velocity.hh
index 83f3f69cad..28e9d3affa 100644
--- a/dumux/porousmediumflow/velocity.hh
+++ b/dumux/porousmediumflow/velocity.hh
@@ -80,7 +80,7 @@ public:
      */
     PorousMediumFlowVelocity(const GridVariables& gridVariables)
     : problem_(gridVariables.curGridVolVars().problem())
-    , fvGridGeometry_(gridVariables.fvGridGeometry())
+    , fvGridGeometry_(gridVariables.gridGeometry())
     , gridVariables_(gridVariables)
     {
         // set the number of scvs the vertices are connected to
diff --git a/examples/1ptracer/main.cc b/examples/1ptracer/main.cc
index c7054d4e4c..ba44ca3f76 100644
--- a/examples/1ptracer/main.cc
+++ b/examples/1ptracer/main.cc
@@ -87,7 +87,7 @@ int main(int argc, char** argv) try
     // #### Set-up
     // We create and initialize the finite volume grid geometry, the problem, the linear system, including the jacobian matrix, the residual and the solution vector and the gridvariables.
     // We need the finite volume geometry to build up the subcontrolvolumes (scv) and subcontrolvolume faces (scvf) for each element of the grid partition.
-    using FVGridGeometry = GetPropType<OnePTypeTag, Properties::FVGridGeometry>;
+    using FVGridGeometry = GetPropType<OnePTypeTag, Properties::GridGeometry>;
     auto fvGridGeometry = std::make_shared<FVGridGeometry>(leafGridView);
     fvGridGeometry->update();
 
diff --git a/examples/1ptracer/problem_1p.hh b/examples/1ptracer/problem_1p.hh
index 17a20ae5f7..82dd98a0cb 100644
--- a/examples/1ptracer/problem_1p.hh
+++ b/examples/1ptracer/problem_1p.hh
@@ -71,8 +71,8 @@ struct Problem<TypeTag, TTag::IncompressibleTest> { using type = OnePTestProblem
 template<class TypeTag>
 struct SpatialParams<TypeTag, TTag::IncompressibleTest>
 {
-    // We define convenient shortcuts to the properties `FVGridGeometry` and `Scalar`:
-    using FVGridGeometry = GetPropType<TypeTag, Properties::FVGridGeometry>;
+    // We define convenient shortcuts to the properties `GridGeometry` and `Scalar`:
+    using FVGridGeometry = GetPropType<TypeTag, Properties::GridGeometry>;
     using Scalar = GetPropType<TypeTag, Properties::Scalar>;
     // Finally, we set the spatial parameters:
     using type = OnePTestSpatialParams<FVGridGeometry, Scalar>;
@@ -118,9 +118,9 @@ class OnePTestProblem : public PorousMediumFlowProblem<TypeTag>
     using Element = typename GridView::template Codim<0>::Entity;
     using Scalar = GetPropType<TypeTag, Properties::Scalar>;
     using PrimaryVariables = GetPropType<TypeTag, Properties::PrimaryVariables>;
-    using FVElementGeometry = typename GetPropType<TypeTag, Properties::FVGridGeometry>::LocalView;
+    using FVElementGeometry = typename GetPropType<TypeTag, Properties::GridGeometry>::LocalView;
     using SubControlVolumeFace = typename FVElementGeometry::SubControlVolumeFace;
-    using FVGridGeometry = GetPropType<TypeTag, Properties::FVGridGeometry>;
+    using FVGridGeometry = GetPropType<TypeTag, Properties::GridGeometry>;
     using BoundaryTypes = GetPropType<TypeTag, Properties::BoundaryTypes>;
 
     static constexpr int dimWorld = GridView::dimensionworld;
@@ -144,7 +144,7 @@ public:
         // we define a small epsilon value
         Scalar eps = 1.0e-6;
         // We specify Dirichlet boundaries on the top and bottom of our domain:
-        if (globalPos[dimWorld-1] < eps || globalPos[dimWorld-1] > this->fvGridGeometry().bBoxMax()[dimWorld-1] - eps)
+        if (globalPos[dimWorld-1] < eps || globalPos[dimWorld-1] > this->gridGeometry().bBoxMax()[dimWorld-1] - eps)
             values.setAllDirichlet();
         else
             // The top and bottom of our domain are Neumann boundaries:
diff --git a/examples/1ptracer/problem_tracer.hh b/examples/1ptracer/problem_tracer.hh
index bd92485432..bebaa7abde 100644
--- a/examples/1ptracer/problem_tracer.hh
+++ b/examples/1ptracer/problem_tracer.hh
@@ -73,7 +73,7 @@ struct Problem<TypeTag, TTag::TracerTest> { using type = TracerTestProblem<TypeT
 template<class TypeTag>
 struct SpatialParams<TypeTag, TTag::TracerTest>
 {
-    using FVGridGeometry = GetPropType<TypeTag, Properties::FVGridGeometry>;
+    using FVGridGeometry = GetPropType<TypeTag, Properties::GridGeometry>;
     using Scalar = GetPropType<TypeTag, Properties::Scalar>;
     using type = TracerTestSpatialParams<FVGridGeometry, Scalar>;
 };
@@ -96,7 +96,7 @@ class TracerFluidSystem : public FluidSystems::Base<GetPropType<TypeTag, Propert
     using Problem = GetPropType<TypeTag, Properties::Problem>;
     using GridView = GetPropType<TypeTag, Properties::GridView>;
     using Element = typename GridView::template Codim<0>::Entity;
-    using FVElementGeometry = typename GetPropType<TypeTag, Properties::FVGridGeometry>::LocalView;
+    using FVElementGeometry = typename GetPropType<TypeTag, Properties::GridGeometry>::LocalView;
     using SubControlVolume = typename FVElementGeometry::SubControlVolume;
 
 public:
@@ -151,7 +151,7 @@ class TracerTestProblem : public PorousMediumFlowProblem<TypeTag>
     using Scalar = GetPropType<TypeTag, Properties::Scalar>;
     using Indices = typename GetPropType<TypeTag, Properties::ModelTraits>::Indices;
     using GridView = GetPropType<TypeTag, Properties::GridView>;
-    using FVGridGeometry = GetPropType<TypeTag, Properties::FVGridGeometry>;
+    using FVGridGeometry = GetPropType<TypeTag, Properties::GridGeometry>;
     using BoundaryTypes = GetPropType<TypeTag, Properties::BoundaryTypes>;
     using PrimaryVariables = GetPropType<TypeTag, Properties::PrimaryVariables>;
     using FluidSystem = GetPropType<TypeTag, Properties::FluidSystem>;
diff --git a/examples/2pinfiltration/main.cc b/examples/2pinfiltration/main.cc
index 01763ef623..46b31e111b 100644
--- a/examples/2pinfiltration/main.cc
+++ b/examples/2pinfiltration/main.cc
@@ -102,7 +102,7 @@ int main(int argc, char** argv) try
     // We create and initialize the finite volume grid geometry, the problem, the linear system, including the jacobian matrix, the residual and the solution vector and the gridvariables.
     //
     // We need the finite volume geometry to build up the subcontrolvolumes (scv) and subcontrolvolume faces (scvf) for each element of the grid partition.
-    using FVGridGeometry = GetPropType<TypeTag, Properties::FVGridGeometry>;
+    using FVGridGeometry = GetPropType<TypeTag, Properties::GridGeometry>;
     auto fvGridGeometry = std::make_shared<FVGridGeometry>(leafGridView);
     fvGridGeometry->update();
 
diff --git a/examples/2pinfiltration/problem.hh b/examples/2pinfiltration/problem.hh
index 7bd63d13f0..153e208065 100644
--- a/examples/2pinfiltration/problem.hh
+++ b/examples/2pinfiltration/problem.hh
@@ -101,9 +101,9 @@ namespace Dumux {
   template<class TypeTag>
   struct SpatialParams<TypeTag, TTag::PointSourceExample>
   {
-      // We define convenient shortcuts to the properties FVGridGeometry and Scalar:
+      // We define convenient shortcuts to the properties GridGeometry and Scalar:
   private:
-      using FVGridGeometry = GetPropType<TypeTag, Properties::FVGridGeometry>;
+      using FVGridGeometry = GetPropType<TypeTag, Properties::GridGeometry>;
       using Scalar = GetPropType<TypeTag, Properties::Scalar>;
       // Finally we set the spatial parameters:
   public:
@@ -136,7 +136,7 @@ class PointSourceProblem : public PorousMediumFlowProblem<TypeTag>
     using Scalar = GetPropType<TypeTag, Properties::Scalar>;
     using FluidSystem = GetPropType<TypeTag, Properties::FluidSystem>;
     using PrimaryVariables = GetPropType<TypeTag, Properties::PrimaryVariables>;
-    using FVGridGeometry = GetPropType<TypeTag, Properties::FVGridGeometry>;
+    using FVGridGeometry = GetPropType<TypeTag, Properties::GridGeometry>;
     using PointSource =  GetPropType<TypeTag, Properties::PointSource>;
     using BoundaryTypes = GetPropType<TypeTag, Properties::BoundaryTypes>;
     using GlobalPosition = typename Element::Geometry::GlobalCoordinate;
@@ -193,10 +193,10 @@ public:
           Scalar densityW = FluidSystem::density(fluidState, waterPhaseIdx);
 
           // The water phase pressure is the hydrostatic pressure, scaled with a factor:
-          Scalar height = this->fvGridGeometry().bBoxMax()[1] - this->fvGridGeometry().bBoxMin()[1];
-          Scalar depth = this->fvGridGeometry().bBoxMax()[1] - globalPos[1];
+          Scalar height = this->gridGeometry().bBoxMax()[1] - this->gridGeometry().bBoxMin()[1];
+          Scalar depth = this->gridGeometry().bBoxMax()[1] - globalPos[1];
           Scalar alpha = 1 + 1.5/height;
-          Scalar width = this->fvGridGeometry().bBoxMax()[0] - this->fvGridGeometry().bBoxMin()[0];
+          Scalar width = this->gridGeometry().bBoxMax()[0] - this->gridGeometry().bBoxMin()[0];
           Scalar factor = (width*alpha + (1.0 - alpha)*globalPos[0])/width;
 
           values[pressureH2OIdx] = 1e5 - factor*densityW*this->spatialParams().gravity(globalPos)[1]*depth;
@@ -229,7 +229,7 @@ public:
       // Accordingly, we need to find the index of our cells, depending on the x and y coordinates,
       // that corresponds to the indices of the input data set.
       const auto delta = 0.0625;
-      unsigned int cellsX = this->fvGridGeometry().bBoxMax()[0]/delta;
+      unsigned int cellsX = this->gridGeometry().bBoxMax()[0]/delta;
       const auto globalPos = element.geometry().center();
 
       unsigned int dataIdx = std::trunc(globalPos[1]/delta) * cellsX + std::trunc(globalPos[0]/delta);
@@ -257,23 +257,23 @@ public:
   private:
     bool onLeftBoundary_(const GlobalPosition &globalPos) const
     {
-        return globalPos[0] < this->fvGridGeometry().bBoxMin()[0] + eps_;
+        return globalPos[0] < this->gridGeometry().bBoxMin()[0] + eps_;
     }
 
     bool onRightBoundary_(const GlobalPosition &globalPos) const
     {
-        return globalPos[0] > this->fvGridGeometry().bBoxMax()[0] - eps_;
+        return globalPos[0] > this->gridGeometry().bBoxMax()[0] - eps_;
     }
 
     bool onUpperBoundary_(const GlobalPosition &globalPos) const
     {
-        return globalPos[1] > this->fvGridGeometry().bBoxMax()[1] - eps_;
+        return globalPos[1] > this->gridGeometry().bBoxMax()[1] - eps_;
     }
 
     bool onInlet_(const GlobalPosition &globalPos) const
     {
-        Scalar width = this->fvGridGeometry().bBoxMax()[0] - this->fvGridGeometry().bBoxMin()[0];
-        Scalar lambda = (this->fvGridGeometry().bBoxMax()[0] - globalPos[0])/width;
+        Scalar width = this->gridGeometry().bBoxMax()[0] - this->gridGeometry().bBoxMin()[0];
+        Scalar lambda = (this->gridGeometry().bBoxMax()[0] - globalPos[0])/width;
         return onUpperBoundary_(globalPos) && 0.5 < lambda && lambda < 2.0/3.0;
     }
 
diff --git a/examples/shallowwaterfriction/main.cc b/examples/shallowwaterfriction/main.cc
index 454411d73c..189fd19a0a 100644
--- a/examples/shallowwaterfriction/main.cc
+++ b/examples/shallowwaterfriction/main.cc
@@ -83,23 +83,23 @@ int main(int argc, char** argv) try
     // #### Setup
     // We create and initialize the finite volume grid geometry, the problem, the linear system, including the jacobian matrix, the residual and the solution vector and the gridvariables.
     // We need the finite volume geometry to build up the subcontrolvolumes (scv) and subcontrolvolume faces (scvf) for each element of the grid partition.
-    using FVGridGeometry = GetPropType<TypeTag, Properties::FVGridGeometry>;
-    auto fvGridGeometry = std::make_shared<FVGridGeometry>(leafGridView);
-    fvGridGeometry->update();
+    using GridGeometry = GetPropType<TypeTag, Properties::GridGeometry>;
+    auto gridGeometry = std::make_shared<GridGeometry>(leafGridView);
+    gridGeometry->update();
 
     // In the problem, we define the boundary and initial conditions.
     using Problem = GetPropType<TypeTag, Properties::Problem>;
-    auto problem = std::make_shared<Problem>(fvGridGeometry);
+    auto problem = std::make_shared<Problem>(gridGeometry);
 
     // We initialize the solution vector
     using SolutionVector = GetPropType<TypeTag, Properties::SolutionVector>;
-    SolutionVector x(fvGridGeometry->numDofs());
+    SolutionVector x(gridGeometry->numDofs());
     problem->applyInitialSolution(x);
     auto xOld = x;
 
     // And then use the solutionvector to intialize the gridVariables.
     using GridVariables = GetPropType<TypeTag, Properties::GridVariables>;
-    auto gridVariables = std::make_shared<GridVariables>(problem, fvGridGeometry);
+    auto gridVariables = std::make_shared<GridVariables>(problem, gridGeometry);
     gridVariables->init(x);
 
     // We get some time loop parameters from the input file.
@@ -125,11 +125,11 @@ int main(int argc, char** argv) try
 
     //we set the assembler with the time loop because we have an instationary problem.
     using Assembler = FVAssembler<TypeTag, DiffMethod::numeric>;
-    auto assembler = std::make_shared<Assembler>(problem, fvGridGeometry, gridVariables, timeLoop);
+    auto assembler = std::make_shared<Assembler>(problem, gridGeometry, gridVariables, timeLoop);
 
     // We set the linear solver.
     using LinearSolver = Dumux::AMGBackend<TypeTag>;
-    auto linearSolver = std::make_shared<LinearSolver>(leafGridView, fvGridGeometry->dofMapper());
+    auto linearSolver = std::make_shared<LinearSolver>(leafGridView, gridGeometry->dofMapper());
 
     // Additionaly, we set the non-linear solver.
     using NewtonSolver = Dumux::NewtonSolver<Assembler, LinearSolver>;
diff --git a/examples/shallowwaterfriction/problem.hh b/examples/shallowwaterfriction/problem.hh
index d3a9293f30..91f9b47cfa 100644
--- a/examples/shallowwaterfriction/problem.hh
+++ b/examples/shallowwaterfriction/problem.hh
@@ -69,7 +69,7 @@ struct SpatialParams<TypeTag, TTag::RoughChannel>
 {
 private:
     // We define convenient shortcuts to the properties FVGridGeometry, Scalar, ElementVolumeVariables and VolumeVariables:
-    using FVGridGeometry = GetPropType<TypeTag, Properties::FVGridGeometry>;
+    using FVGridGeometry = GetPropType<TypeTag, Properties::GridGeometry>;
     using Scalar = GetPropType<TypeTag, Properties::Scalar>;
     using ElementVolumeVariables = typename GetPropType<TypeTag, Properties::GridVolumeVariables>::LocalView;
     using VolumeVariables = typename ElementVolumeVariables::VolumeVariables;
@@ -103,13 +103,13 @@ class RoughChannelProblem : public ShallowWaterProblem<TypeTag>
     using BoundaryTypes = GetPropType<TypeTag, Properties::BoundaryTypes>;
     using Scalar = GetPropType<TypeTag, Properties::Scalar>;
     using Indices = typename GetPropType<TypeTag, Properties::ModelTraits>::Indices;
-    using FVGridGeometry = GetPropType<TypeTag, Properties::FVGridGeometry>;
+    using FVGridGeometry = GetPropType<TypeTag, Properties::GridGeometry>;
     using NeumannFluxes = GetPropType<TypeTag, Properties::NumEqVector>;
     using ElementVolumeVariables = typename GetPropType<TypeTag, Properties::GridVolumeVariables>::LocalView;
     using GridVariables = GetPropType<TypeTag, Properties::GridVariables>;
     using ElementFluxVariablesCache = typename GridVariables::GridFluxVariablesCache::LocalView;
     using VolumeVariables = typename ElementVolumeVariables::VolumeVariables;
-    using FVElementGeometry = typename GetPropType<TypeTag, Properties::FVGridGeometry>::LocalView;
+    using FVElementGeometry = typename GetPropType<TypeTag, Properties::GridGeometry>::LocalView;
     using SubControlVolumeFace = typename FVElementGeometry::SubControlVolumeFace;
     using GridView = GetPropType<TypeTag, Properties::GridView>;
     using Element = typename GridView::template Codim<0>::Entity;
@@ -161,12 +161,12 @@ public:
     {
         using std::abs;
 
-        for (const auto& element : elements(this->fvGridGeometry().gridView()))
+        for (const auto& element : elements(this->gridGeometry().gridView()))
         {
             const Scalar h = this->gauklerManningStrickler(discharge_,constManningN_,bedSlope_);
             const Scalar u = abs(discharge_)/h;
 
-            const auto eIdx = this->fvGridGeometry().elementMapper().index(element);
+            const auto eIdx = this->gridGeometry().elementMapper().index(element);
             exactWaterDepth_[eIdx] = h;
             exactVelocityX_[eIdx] = u;
         }
diff --git a/test/porousmediumflow/1pnc/implicit/1p2c/isothermal/problem.hh b/test/porousmediumflow/1pnc/implicit/1p2c/isothermal/problem.hh
index 4bb0e68b02..ad48175083 100644
--- a/test/porousmediumflow/1pnc/implicit/1p2c/isothermal/problem.hh
+++ b/test/porousmediumflow/1pnc/implicit/1p2c/isothermal/problem.hh
@@ -135,7 +135,7 @@ class OnePTwoCTestProblem : public PorousMediumFlowProblem<TypeTag>
     using Element = typename GridView::template Codim<0>::Entity;
 
     using FVGridGeometry = GetPropType<TypeTag, Properties::GridGeometry>;
-    using FVElementGeometry = typename GetPropType<TypeTag, Properties::FVGridGeometry>::LocalView;
+    using FVElementGeometry = typename GetPropType<TypeTag, Properties::GridGeometry>::LocalView;
     using SubControlVolumeFace = typename FVElementGeometry::SubControlVolumeFace;
 
     using GridVariables = GetPropType<TypeTag, Properties::GridVariables>;
@@ -263,7 +263,7 @@ public:
     {
         // no-flow everywhere except at the right boundary
         NumEqVector values(0.0);
-        const auto xMax = this->fvGridGeometry().bBoxMax()[0];
+        const auto xMax = this->gridGeometry().bBoxMax()[0];
         const auto& ipGlobal = scvf.ipGlobal();
         if (ipGlobal[0] < xMax - eps_)
             return values;
@@ -319,7 +319,7 @@ public:
      {
         // no-flow everywhere except at the right boundary
         NumEqVector values(0.0);
-        const auto xMax = this->fvGridGeometry().bBoxMax()[0];
+        const auto xMax = this->gridGeometry().bBoxMax()[0];
         const auto& ipGlobal = scvf.ipGlobal();
         if (ipGlobal[0] < xMax - eps_)
             return values;
diff --git a/test/porousmediumflow/1pnc/implicit/1p3c/main.cc b/test/porousmediumflow/1pnc/implicit/1p3c/main.cc
index 3495fe259f..5d5c2cf24a 100644
--- a/test/porousmediumflow/1pnc/implicit/1p3c/main.cc
+++ b/test/porousmediumflow/1pnc/implicit/1p3c/main.cc
@@ -85,7 +85,7 @@ int main(int argc, char** argv) try
     const auto& leafGridView = gridManager.grid().leafGridView();
 
     // create the finite volume grid geometry
-    using FVGridGeometry = GetPropType<TypeTag, Properties::FVGridGeometry>;
+    using FVGridGeometry = GetPropType<TypeTag, Properties::GridGeometry>;
     auto fvGridGeometry = std::make_shared<FVGridGeometry>(leafGridView);
     fvGridGeometry->update();
 
diff --git a/test/porousmediumflow/1pnc/implicit/1p3c/problem.hh b/test/porousmediumflow/1pnc/implicit/1p3c/problem.hh
index 9b482bf7af..7bcc590505 100644
--- a/test/porousmediumflow/1pnc/implicit/1p3c/problem.hh
+++ b/test/porousmediumflow/1pnc/implicit/1p3c/problem.hh
@@ -209,7 +209,7 @@ struct FluidSystem<TypeTag, TTag::MaxwellStefanOnePThreeCTest>
 template<class TypeTag>
 struct SpatialParams<TypeTag, TTag::MaxwellStefanOnePThreeCTest>
 {
-    using FVGridGeometry = GetPropType<TypeTag, Properties::FVGridGeometry>;
+    using FVGridGeometry = GetPropType<TypeTag, Properties::GridGeometry>;
     using Scalar = GetPropType<TypeTag, Properties::Scalar>;
     using type = OnePNCTestSpatialParams<FVGridGeometry, Scalar>;
 };
@@ -248,7 +248,7 @@ class MaxwellStefanOnePThreeCTestProblem : public PorousMediumFlowProblem<TypeTa
     using PrimaryVariables = GetPropType<TypeTag, Properties::PrimaryVariables>;
     using NumEqVector = GetPropType<TypeTag, Properties::NumEqVector>;
     using FluidSystem = GetPropType<TypeTag, Properties::FluidSystem>;
-    using FVGridGeometry = GetPropType<TypeTag, Properties::FVGridGeometry>;
+    using FVGridGeometry = GetPropType<TypeTag, Properties::GridGeometry>;
     using SolutionVector = GetPropType<TypeTag, Properties::SolutionVector>;
     using VolumeVariables = GetPropType<TypeTag, Properties::VolumeVariables>;
 
@@ -309,12 +309,12 @@ public:
             Scalar j = 0.0;
             if (!(time < 0.0))
             {
-                for (const auto& element : elements(this->fvGridGeometry().gridView()))
+                for (const auto& element : elements(this->gridGeometry().gridView()))
                 {
-                    auto fvGeometry = localView(this->fvGridGeometry());
+                    auto fvGeometry = localView(this->gridGeometry());
                     fvGeometry.bindElement(element);
 
-                    const auto elemSol = elementSolution(element, curSol, this->fvGridGeometry());
+                    const auto elemSol = elementSolution(element, curSol, this->gridGeometry());
                     for (auto&& scv : scvs(fvGeometry))
                     {
                         const auto& globalPos = scv.dofPosition();
-- 
GitLab