In the theory of three-dimensional rotation, Rodrigues' rotation formula, named after Olinde Rodrigues, is an efficient algorithm for rotating a vector in space, given an axis and angle of rotation. By extension, this can be used to transform all three basis vectors to compute a rotation matrix in SO(3), the group of all rotation matrices, from an axis–angle representation. In terms of Lie theory, the Rodrigues' formula provides an algorithm to compute the exponential map from the Lie algebra so(3) to its Lie group SO(3).
This formula is variously credited to Leonhard Euler, Olinde Rodrigues, or a combination of the two. A detailed historical analysis in 1989 concluded that the formula should be attributed to Euler, and recommended calling it "Euler's finite rotation formula." This proposal has received notable support, but some others have viewed the formula as just one of many variations of the Euler–Rodrigues formula, thereby crediting both.
The intuition of the above formula is that the first term scales the vector down, while the second skews it (via vector addition) toward the new rotational position. The third term re-adds the height (relative to ) that was lost by the first term.
An alternative statement is to write the axis vector as a cross product a × b of any two nonzero vectors a and b which define the plane of rotation, and the sense of the angle θ is measured away from a and towards b. Letting α denote the angle between these vectors, the two angles θ and α are not necessarily equal, but they are measured in the same sense. Then the unit axis vector can be written
This form may be more useful when two vectors defining a plane are involved. An example in physics is the Thomas precession which includes the rotation given by Rodrigues' formula, in terms of two non-collinear boost velocities, and the axis of rotation is perpendicular to their plane.
where the component parallel to k is called the vector projection of v on k,
and the component perpendicular to k is called the vector rejection of v from k:
where the last equality follows from the vector triple product formula: . Finally, the vector is a copy of rotated 90° around . Thus the three vectors
Under the rotation, the component parallel to the axis will not change magnitude nor direction:
while the perpendicular component will retain its magnitude but rotate its direction in the perpendicular plane spanned by and , according to
Now the full rotated vector is:
Substituting or in the last expression gives respectively:
The linear transformation on defined by the cross product is given in coordinates by representing v and k × v as column matrices:
That is to say,
The last formula in the previous section can therefore be written as:
Collecting terms allows the compact expression
is the rotation matrix through an angle θ counterclockwise about the axis k, and I the 3 × 3 identity matrix. This matrix R is an element of the rotation group SO(3) of ℝ3, and K is an element of the Lie algebra generating that Lie group (note that K is skew-symmetric, which characterizes ).
In terms of the matrix exponential,
To see that the last identity holds, one notes that
characteristic of a one-parameter subgroup, i.e. exponential, and that the formulas match for infinitesimal θ.
The Hodge dual of the rotation is just which enables the extraction of both the axis of rotation and the sine of the angle of the rotation from the rotation matrix itself, with the usual ambiguity,
where . The above simple expression results from the fact that the Hodge duals of and are zero, and .
When applying the Rodrigues' formula, however, the usual ambiguity could be removed with an extended form of the formula.a
- Cheng, Hui; Gupta, K. C. (March 1989). "An Historical Note on Finite Rotations". Journal of Applied Mechanics. American Society of Mechanical Engineers. 56 (1): 139–145. Retrieved 2022-04-11.
- Fraiture, Luc (2009). "A History of the Description of the Three-Dimensional Finite Rotation". The Journal of the Astronautical Sciences. Springer. 57: 207–232. Retrieved 2022-04-15.
- Dai, Jian S. (October 2015). "Euler–Rodrigues formula variations, quaternion conjugation and intrinsic connections". Mechanism and Machine Theory. Elsevier. 92: 144–152. Retrieved 2022-04-14.
- Belongie, Serge. "Rodrigues' Rotation Formula". mathworld.wolfram.com. Retrieved 2021-04-07.
- Leonhard Euler, "Problema algebraicum ob affectiones prorsus singulares memorabile", Commentatio 407 Indicis Enestoemiani, Novi Comm. Acad. Sci. Petropolitanae 15 (1770), 75–106.
- Olinde Rodrigues, "Des lois géométriques qui régissent les déplacements d'un système solide dans l'espace, et de la variation des coordonnées provenant de ces déplacements considérés indépendants des causes qui peuvent les produire", Journal de Mathématiques Pures et Appliquées 5 (1840), 380–440. online.
- Friedberg, Richard (2022). "Rodrigues, Olinde: "Des lois géométriques qui régissent les déplacements d'un systéme solide...", translation and commentary". arXiv:2211.07787.
- Don Koks, (2006) Explorations in Mathematical Physics, Springer Science+Business Media,LLC. ISBN 0-387-30943-8. Ch.4, pps 147 et seq. A Roundabout Route to Geometric Algebra
- ^a Liang, Kuo Kan (2018). "Efficient conversion from rotating matrix to rotation axis and angle by extending Rodrigues' formula". arXiv:1810.02999 [cs].
- Johan E. Mebius, Derivation of the Euler-Rodrigues formula for three-dimensional rotations from the general formula for four-dimensional rotations., arXiv General Mathematics 2007.
- For another descriptive example see: http://chrishecker.com/Rigid_Body_Dynamics#Physics_Articles, Chris Hecker, physics section, part 4. "The Third Dimension" – on page 3, section ``Axis and Angle, http://chrishecker.com/images/b/bb/Gdmphys4.pdf