Skip to content
Snippets Groups Projects
  • Oliver Sander's avatar
    276bd937
    Hack around an inconsistency between Rotation<3> and other target spaces, · 276bd937
    Oliver Sander authored
    notably the almost-equivalent UnitVector<4>: A vector with three entries
    is interpreted by the UnitVector<4> class as a tangent vector given in
    the basis returned by orthonormalFrame.  That is correct as it works
    for all kinds of manifolds.  On the other hand, the Rotation<3> class
    interprets as a 3x3 skew matrix (a tangent vector at the identity in
    the matrix representation) even though the implementation used quaternion
    coordinates.
    
    To trick around this the use of exp methods with FieldVector<3> is avoided
    by this patch.  A real fix would involve introducing a SkewMatrix class
    and using that in Rotation<3>.
    
    [[Imported from SVN: r7575]]
    276bd937
    History
    Hack around an inconsistency between Rotation<3> and other target spaces,
    Oliver Sander authored
    notably the almost-equivalent UnitVector<4>: A vector with three entries
    is interpreted by the UnitVector<4> class as a tangent vector given in
    the basis returned by orthonormalFrame.  That is correct as it works
    for all kinds of manifolds.  On the other hand, the Rotation<3> class
    interprets as a 3x3 skew matrix (a tangent vector at the identity in
    the matrix representation) even though the implementation used quaternion
    coordinates.
    
    To trick around this the use of exp methods with FieldVector<3> is avoided
    by this patch.  A real fix would involve introducing a SkewMatrix class
    and using that in Rotation<3>.
    
    [[Imported from SVN: r7575]]
riemanniantrsolver.cc 18.15 KiB