Skip to content
Snippets Groups Projects
Commit d7c1f1f3 authored by Oliver Sander's avatar Oliver Sander Committed by sander@FU-BERLIN.DE
Browse files

transpose one gradient matrix. This makes the code run, but it still doesn't...

transpose one gradient matrix.  This makes the code run, but it still doesn't work even for RealTuple<1>

[[Imported from SVN: r6547]]
parent 6bbf585e
No related branches found
No related tags found
No related merge requests found
......@@ -146,14 +146,15 @@ assembleEmbeddedGradient(const Entity& element,
// loop over all the element's degrees of freedom and compute the gradient wrt it
for (size_t i=0; i<localSolution.size(); i++) {
Tensor3<double, TargetSpace::EmbeddedTangentVector::size, gridDim,TargetSpace::EmbeddedTangentVector::size> derivativeDerivative;
Tensor3<double, TargetSpace::EmbeddedTangentVector::size,TargetSpace::EmbeddedTangentVector::size,gridDim> derivativeDerivative;
localGeodesicFEFunction.evaluateDerivativeOfGradientWRTCoefficient(quadPos, i, derivativeDerivative);
for (int j=0; j<derivative.rows; j++) {
for (int k=0; k<derivative.cols; k++) {
localGradient[i].axpy(weight*derivative[j][k], derivativeDerivative[j][k]);
for (int l=0; l<TargetSpace::EmbeddedTangentVector::size; l++)
localGradient[i][l] += weight*derivative[j][k] * derivativeDerivative[l][j][k];
}
......
......@@ -88,7 +88,7 @@ public:
/** \brief Evaluate the derivative of the gradient of the function with respect to a coefficient */
void evaluateDerivativeOfGradientWRTCoefficient(const Dune::FieldVector<ctype, dim>& local,
int coefficient,
Tensor3<double, TargetSpace::EmbeddedTangentVector::size,dim,TargetSpace::EmbeddedTangentVector::size>& result) const;
Tensor3<double, TargetSpace::EmbeddedTangentVector::size,TargetSpace::EmbeddedTangentVector::size,dim>& result) const;
private:
......@@ -280,7 +280,7 @@ template <int dim, class ctype, class TargetSpace>
void LocalGeodesicFEFunction<dim,ctype,TargetSpace>::
evaluateDerivativeOfGradientWRTCoefficient(const Dune::FieldVector<ctype, dim>& local,
int coefficient,
Tensor3<double, TargetSpace::EmbeddedTangentVector::size,dim,TargetSpace::EmbeddedTangentVector::size>& result) const
Tensor3<double, TargetSpace::EmbeddedTangentVector::size,TargetSpace::EmbeddedTangentVector::size,dim>& result) const
{
const int embeddedDim = EmbeddedTangentVector::size;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment