From de6578f0f3139698ec0992a0bea091c6ebe70535 Mon Sep 17 00:00:00 2001 From: Jonathan Youett <youett@mi.fu-berlin.de> Date: Thu, 20 Oct 2011 09:29:42 +0000 Subject: [PATCH] add method to transform an embedded tangent vector into the corresponding SkewMatrix and use this method in the old tangentToSkew method [[Imported from SVN: r7971]] --- dune/gfe/rotation.hh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/dune/gfe/rotation.hh b/dune/gfe/rotation.hh index d19f8247..90589caf 100644 --- a/dune/gfe/rotation.hh +++ b/dune/gfe/rotation.hh @@ -300,9 +300,15 @@ public: Dune::FieldMatrix<T,3,4> basis = p.orthonormalFrame(); Quaternion<T> embeddedTangent; basis.mtv(tangent, embeddedTangent); + + tangentToSkew(p,embeddedTangent); + } + /** \brief Compute skew matrix from given basepoint and an embedded tangent vector. */ + static SkewMatrix<T,3> tangentToSkew(const Rotation<3,T>& p, const EmbeddedTangentVector& q) { + // left multiplication by the inverse base point yields a tangent vector at the identity - Quaternion<T> vAtIdentity = p.inverse().mult(embeddedTangent); + Quaternion<T> vAtIdentity = p.inverse().mult(q); assert( std::fabs(vAtIdentity[3]) < 1e-8 ); SkewMatrix<T,3> skew; -- GitLab