From 42991aaba2c18ef8d0b2eaa688e1b470ee8de675 Mon Sep 17 00:00:00 2001 From: Oliver Sander <sander@igpm.rwth-aachen.de> Date: Sun, 1 May 2011 08:58:31 +0000 Subject: [PATCH] Allow to compute the gradient of the harmonic energy functional using a finite-difference approximation only for the derivative of the gfe gradients wrt coefficients. [[Imported from SVN: r7230]] --- dune/gfe/harmonicenergystiffness.hh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/dune/gfe/harmonicenergystiffness.hh b/dune/gfe/harmonicenergystiffness.hh index 863a4a9c..f24a7676 100644 --- a/dune/gfe/harmonicenergystiffness.hh +++ b/dune/gfe/harmonicenergystiffness.hh @@ -137,7 +137,12 @@ assembleEmbeddedGradient(const Entity& element, for (size_t i=0; i<localSolution.size(); i++) { Tensor3<double, TargetSpace::EmbeddedTangentVector::size,TargetSpace::EmbeddedTangentVector::size,gridDim> referenceDerivativeDerivative; +#ifdef HARMONIC_ENERGY_FD_INNER_GRADIENT +#warning Using finite differences to compute the inner gradients! + localGeodesicFEFunction.evaluateFDDerivativeOfGradientWRTCoefficient(quadPos, i, referenceDerivativeDerivative); +#else localGeodesicFEFunction.evaluateDerivativeOfGradientWRTCoefficient(quadPos, i, referenceDerivativeDerivative); +#endif // multiply the transformation from the reference element to the actual element Tensor3<double, TargetSpace::EmbeddedTangentVector::size,TargetSpace::EmbeddedTangentVector::size,gridDim> derivativeDerivative; -- GitLab