diff --git a/dumux/geomechanics/el2p/el2pelementvolumevariables.hh b/dumux/geomechanics/el2p/el2pelementvolumevariables.hh
index 146de06017169f4ff66e61bf9ccc6ffcb9bab204..e2ae28d3fed57cb6f5e284f0a69a993b70595349 100644
--- a/dumux/geomechanics/el2p/el2pelementvolumevariables.hh
+++ b/dumux/geomechanics/el2p/el2pelementvolumevariables.hh
@@ -50,6 +50,11 @@ class ElTwoPElementVolumeVariables : public std::vector<typename GET_PROP_TYPE(T
 
     typedef typename GET_PROP_TYPE(TypeTag, PTAG(GridView)) GridView;
     typedef typename GridView::template Codim<0>::Entity Element;
+#if DUNE_VERSION_NEWER(DUNE_GRID, 2, 3)
+            typedef typename Element::Geometry::JacobianInverseTransposed JacobianInverseTransposed;
+#else
+            typedef typename Element::Geometry::Jacobian JacobianInverseTransposed;
+#endif
     enum { dim = GridView::dimension };
     enum { numEq = GET_PROP_VALUE(TypeTag, NumEq) };
     typedef typename GET_PROP_TYPE(TypeTag, PTAG(FluxVariables)) FluxVariables;
@@ -224,7 +229,7 @@ public:
             displacementLFS.child(0).finiteElement().localBasis().evaluateJacobian(scvCenter, vRefShapeGradient);
 
             // transform gradient to element in global coordinates
-            const Dune::FieldMatrix<DF,dim,dim> jacInvT = element.geometry().jacobianInverseTransposed(scvCenter);
+            const JacobianInverseTransposed jacInvT = element.geometry().jacobianInverseTransposed(scvCenter);
             std::vector<Dune::FieldVector<RF,dim> > vShapeGradient(dispSize);
 
             // loop over element vertices
diff --git a/dumux/geomechanics/el2p/el2plocaloperator.hh b/dumux/geomechanics/el2p/el2plocaloperator.hh
index 243e1d387e4b2611b3b85dd868f7a67fb780a500..636aea8043cb2c3ff557a10e324537d7df7aa6b0 100644
--- a/dumux/geomechanics/el2p/el2plocaloperator.hh
+++ b/dumux/geomechanics/el2p/el2plocaloperator.hh
@@ -62,6 +62,11 @@ class El2PLocalOperator
     typedef typename GET_PROP_TYPE(TypeTag, PTAG(MaterialLaw)) MaterialLaw;
     typedef typename GET_PROP_TYPE(TypeTag, PTAG(MaterialLawParams)) MaterialLawParams;
     typedef typename GET_PROP_TYPE(TypeTag, PTAG(GridView)) GridView;
+#if DUNE_VERSION_NEWER(DUNE_GRID, 2, 3)
+            typedef typename GridView::template Codim<0>::Entity::Geometry::JacobianInverseTransposed JacobianInverseTransposed;
+#else
+            typedef typename GridView::template Codim<0>::Entity::Geometry::Jacobian JacobianInverseTransposed;
+#endif
     typedef typename GridView::IntersectionIterator IntersectionIterator;
     typedef typename GridView::Intersection Intersection;
     typedef typename Dune::PDELab::IntersectionGeometry<Intersection>::ctype DT;
@@ -228,7 +233,7 @@ public:
 
 
              // get inverse transposed jacobian for quadrature point
-             const Dune::FieldMatrix<DF,dim,dim> jacobian = eg.geometry().jacobianInverseTransposed(it->position());
+             const JacobianInverseTransposed jacobian = eg.geometry().jacobianInverseTransposed(it->position());
 
              // calculate shape function gradients at the quadrature point in global coordinates. This is done
              // by multiplying the reference element shape functions with the inverse transposed jacobian
diff --git a/dumux/geomechanics/el2p/el2pmodel.hh b/dumux/geomechanics/el2p/el2pmodel.hh
index 69fa2c121108bd3f76ee89167c6386181569b2c2..09e49e8368aaf3f7fba5ec76dd3241c7df72ab9e 100644
--- a/dumux/geomechanics/el2p/el2pmodel.hh
+++ b/dumux/geomechanics/el2p/el2pmodel.hh
@@ -129,7 +129,11 @@ class ElTwoPModel: public GET_PROP_TYPE(TypeTag, BaseModel)
     typedef typename GridView::template Codim<0>::Entity Element;
     typedef typename GridView::template Codim<0>::Iterator ElementIterator;
     typedef typename GridView::ctype CoordScalar;
-
+#if DUNE_VERSION_NEWER(DUNE_GRID, 2, 3)
+            typedef typename Element::Geometry::JacobianInverseTransposed JacobianInverseTransposed;
+#else
+            typedef typename Element::Geometry::Jacobian JacobianInverseTransposed;
+#endif
 
     typedef Dune::FieldVector<Scalar, numPhases> PhasesVector;
     typedef Dune::FieldVector<Scalar, dimWorld> GlobalPosition;
@@ -422,7 +426,7 @@ public:
             displacementLFS.child(0).finiteElement().localBasis().evaluateJacobian(cellCenterLocal, vRefShapeGradient);
 
             // get jacobian to transform the gradient to physical element
-            const Dune::FieldMatrix<DF, dim, dim> jacInvT =    elemIt->geometry().jacobianInverseTransposed(cellCenterLocal);
+            const JacobianInverseTransposed jacInvT = elemIt->geometry().jacobianInverseTransposed(cellCenterLocal);
             std::vector < Dune::FieldVector<RF, dim> > vShapeGradient(dispSize);
             for (size_t i = 0; i < dispSize; i++) {
                 vShapeGradient[i] = 0.0;