From 6fcdb0cc52d276875f2fe44f6c23e370c5acd70c Mon Sep 17 00:00:00 2001 From: Oliver Sander <sander@igpm.rwth-aachen.de> Date: Fri, 12 Jul 2013 14:05:27 +0000 Subject: [PATCH] Use the type provided by Geometry for jacobianInverseTransposed Because nowadays, it may not be a FieldMatrix anymore [[Imported from SVN: r9305]] --- dune/gfe/harmonicenergystiffness.hh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/dune/gfe/harmonicenergystiffness.hh b/dune/gfe/harmonicenergystiffness.hh index 79d0da07..44e3a4cc 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; -- GitLab