diff --git a/dune/gfe/harmonicenergystiffness.hh b/dune/gfe/harmonicenergystiffness.hh index 79d0da07f36b4f68277bbb5300add4f813146914..44e3a4cc10ad3efe993761d00ea5874249f4d45f 100644 --- a/dune/gfe/harmonicenergystiffness.hh +++ b/dune/gfe/harmonicenergystiffness.hh @@ -57,6 +57,7 @@ energy(const Entity& element, const std::vector<TargetSpace>& localSolution) const { assert(element.type() == localFiniteElement.type()); + typedef typename GridView::template Codim<0>::Entity::Geometry Geometry; RT energy = 0; LocalGeodesicFEFunction<gridDim, double, LocalFiniteElement, TargetSpace> localGeodesicFEFunction(localFiniteElement, @@ -77,7 +78,7 @@ energy(const Entity& element, const double integrationElement = element.geometry().integrationElement(quadPos); - const Dune::FieldMatrix<double,gridDim,gridDim>& jacobianInverseTransposed = element.geometry().jacobianInverseTransposed(quadPos); + const typename Geometry::JacobianInverseTransposed& jacobianInverseTransposed = element.geometry().jacobianInverseTransposed(quadPos); double weight = quad[pt].weight() * integrationElement; @@ -108,6 +109,8 @@ assembleEmbeddedGradient(const Entity& element, const std::vector<TargetSpace>& localSolution, std::vector<typename TargetSpace::EmbeddedTangentVector>& localGradient) const { + typedef typename GridView::template Codim<0>::Entity::Geometry Geometry; + // initialize gradient localGradient.resize(localSolution.size()); std::fill(localGradient.begin(), localGradient.end(), typename TargetSpace::EmbeddedTangentVector(0)); @@ -131,7 +134,7 @@ assembleEmbeddedGradient(const Entity& element, const double integrationElement = element.geometry().integrationElement(quadPos); - const Dune::FieldMatrix<double,gridDim,gridDim>& jacobianInverseTransposed = element.geometry().jacobianInverseTransposed(quadPos); + const typename Geometry::JacobianInverseTransposed& jacobianInverseTransposed = element.geometry().jacobianInverseTransposed(quadPos); double weight = quad[pt].weight() * integrationElement;