On Cayley’s Factorization of 4D Rotations and Applications Federico Thomas and Alba Pérez-Gracia IRI (CSIC-UPC) and Idaho State University
Preamble In Computational Kinematics, dual quaternions are used to model the movement of solid objects in 3D, i.e., to represent the group of spatial displacements SE(3). Dual Quaternion G+ 0,3,1 1 i e23 j e31 k e12 iε e41 jε e42 kε e43 ε e1234
Outline of the presentation Rotations in 4D Isoclinic rotations Cayley’s factorization Elfrinkhof-Rosen method Our alternative Rotations in 3D A useful mapping Example Conclusion
Rotations in 4D By properly choosing the reference frame, a rotation in 4D can be expressed as:
Isoclinic rotations Cayley’s factorization: any 4D rotation matrix can be decomposed into the product of a right- and a left-isoclinic matrix. The product of a right- and a left-isoclinic matrix is commutative. The product of two right- (left-) isoclinic matrices is a right- (left-) isoclinic matrix.
Isoclinic rotations
Isoclinic rotations A rotation in 4D can be represented as a double quaternion
Cayley’s factorization (Elfrinkhof-Rosen method) If we square and add all the elements in row i
Cayley’s factorization (our method)
Cayley’s factorization (our method) We can define the following linear operators:
Rotations in 3D
Rotations in 3D
Rotations in 3D
Rotations in 3D The representation based on a double quaternion is redundant. One quaternion is enough to represent a 3D rotation
From quaternion to matrix representation A rotation in 3D can be either represented as or How to recover the matrix representation? Easy!
Geometric interpretation of Alternative expression to Rodrigues’ formula
A useful mapping We define the “magic” mapping: The interest of this mapping is that, applying Cayley’s factorization, we get
Geometric interpretation Chasles’ theorem d
Example
Example
Conclusion Cayley’s factorization is a fundamental tool in Computational Kinematics. It can be seen as a unifying procedure to: obtain the double quaternion representation of 4D rotations, the dual quaternion representation of 3D displacements (as a particular case, the quaternion representation of 3D rotations).
Degenerate cases >> [L R]= CayleyFactorization(trotz(0)) L = L = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 = I R = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 >> [L R]= CayleyFactorization(trotz(pi)) L = 0 -1 0 0 1 0 0 0 0 0 0 -1 0 0 1 0 = A_3 R = 0 -1 0 0 1 0 0 0 0 0 0 1 0 0 -1 0 = B_3