diff --git a/dune/gfe/surfacecosseratenergy.hh b/dune/gfe/surfacecosseratenergy.hh index e34f674016f88a23f353913b8981e01145634e3b..7ece7fe22f638490aeeec3469d6d7e8cb3bc92b0 100644 --- a/dune/gfe/surfacecosseratenergy.hh +++ b/dune/gfe/surfacecosseratenergy.hh @@ -263,6 +263,9 @@ RT energy(const typename Basis::LocalView& localView, auto aContravariant = aCovariant; aContravariant.invert(); + // The contravariant base vectors are the *columns* of the inverse of the covariant matrix + // To get an easier access to the columns, we use the transpose of the contravariant matrix + aContravariant = Dune::GFE::transpose(aContravariant); Dune::FieldMatrix<double,3,3> a(0); for (int alpha=0; alpha<boundaryDim; alpha++)