Skip to main content
Log in

On the use of Generalized Rodrigues Parameters for Representing Rigid Body Rotations

  • Published:
The Journal of the Astronautical Sciences Aims and scope Submit manuscript

Abstract

This work complements the body of studies on the use of generalized Rodrigues parameters (GRPs) for describing the orientation of a rigid body. A simple decision logic is designed for handling the GRPs so that singular configurations are avoided, while enforcing the one-to-one mapping between the set of orientation parameters and the unique rotation matrix.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

Notes

  1. The case \(\mathbf {p}^{\scriptscriptstyle \mathrm {T}}\mathbf {p}=\frac {1}{a^{2}}\) is discussed in Appendix A.4

  2. The case \(\mathbf {p}_{s}^{\scriptscriptstyle \mathrm {T}}\mathbf {p}_{s}=\frac {1}{a^{2}}\) is discussed in Appendix A.4

References

  1. Stillwell, J.: Naive Lie Theory. Springer, Berlin (2008)

    Book  Google Scholar 

  2. Kirillov, A.J. Jr: An Introduction to Lie Groups and Lie Algebras. Cambridge University Press, Cambridge (2008)

    Book  Google Scholar 

  3. Hamilton, W.R.: On Quaternions; or on a new System of Imaginaries in Algebra, The London, Edinburgh and Dublin Philosophical Magazine and Journal of Science (3rd Series), vol. XXV-XXXVI. Edited by David R. Wilkins, 2000, 1844-1850

  4. Rodrigues, O.: Des lois gé,ométriques qui régissent les déplacements d’un système solide dans l’espace, et la variation des coordonnées provenant de ses déplacements considérés indépendamment des causes qui peuvent les produire. Journal de Mathématiques Pures et Appliquées 5, 380–440 (1840)

    Google Scholar 

  5. Gibbs, J.W.: The Collected Works of J. Willard Gibbs, vol. 2. Yale University Press, New Haven (1948)

    MATH  Google Scholar 

  6. Wiener, T.F.: Theoretical Analysis of Gimballess Inertial Reference Equipment Using Delta-modulated Instruments. PhD dissertation, Massachusetts Institute of Technology, Cambridge (1962)

    Google Scholar 

  7. Marandi, S.R., Modi, V.J.: A preferred coordinate system and the associated orientation representation in attitude dynamics. Acta Astronaut. 15(11), 833–843 (1987)

    Article  Google Scholar 

  8. Tsiotras, P.: New Control Laws for the Attitude Stabilization of Rigid Bodies. IFAC Proceedings Volumes 27(13), 321–326 (1994)

    Article  Google Scholar 

  9. Schaub, H., Junkins, J.L.: Stereographic orientation parameters for attitude dynamics: a generalization of the rodrigues parameters. J. Astronaut. Sci. 44(1), 1–19 (1996)

    MathSciNet  Google Scholar 

  10. Southward, C.M., Ellis, J.R., Schaub, H.: Symmetric stereographic orientation parameters applied to constrained spacecraft attitude control. J. Astronaut. Sci. 55 (3), 389–405 (2007)

    Article  Google Scholar 

  11. Hopf, H.: Systeme Symmetrischer Bilinearformen und Euklidische Modelle der Projektiven räume. In: Selecta Heinz Hopf, pp. 107–118. Springer, Berlin (1964)

  12. Stuelpnagel, J.: On the parameterization of the Three-Dimensional rotation group. SIAM Rev. 6(4), 422–430 (1964)

    Article  MathSciNet  Google Scholar 

  13. Klumpp, A.R.: Singularity-free extraction of a quaternion from a direction-cosine matrix. J. Spacecr. Rocket. 13(12), 754–755 (1976)

    Article  Google Scholar 

Download references

Acknowledgments

The author would like to thank Andreas Brack (German Research Center for Geosciences - GFZ) and Bethany Kroese (US Air Force Research Laboratory) for their valuable comments on the original manuscript.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Gabriele Giorgi.

Ethics declarations

Conflict of interests

The author states that there is no conflict of interest.

Additional information

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

Appendix

A.1 Proof: \(\mathbf {R}(\mathbf {p}) \in \mathbb {SO}(3) , \forall \mathbf {p} \in \mathbb {R}^{3}\)

The product RT(p)R(p) reads, using (7)

$$ \mathbf{R}^{\scriptscriptstyle \mathrm{T}}(\mathbf{p})\mathbf{R}(\mathbf{p}) = \mathbf{I}_3 + 4\xi^2 \left( \mathbf{I}_3 + \xi^2 \boldsymbol{\Omega}_{\mathbf{p}}^2 - (a-\xi)^2\mathbf{I}_3 \right) \boldsymbol{\Omega}_{\mathbf{p}}^2 $$
(39)

By substituting \(\boldsymbol {\Omega }_{\mathbf {p}}^{2} = \mathbf {p}\mathbf {p}^{\scriptscriptstyle \mathrm {T}}-\mathbf {p}^{\scriptscriptstyle \mathrm {T}}\mathbf {p}\mathbf {I}_{3}\), one obtains

$$ \mathbf{R}^{\scriptscriptstyle \mathrm{T}}(\mathbf{p})\mathbf{R}(\mathbf{p})= \mathbf{I}_3 $$
(40)

since Ωpp = 0.

The determinant of matrix R(p) can be derived as follows:

$$ \det \left( \mathbf{R}^{\scriptscriptstyle \mathrm{T}}(\mathbf{p})\mathbf{R}(\mathbf{p})\right) = \left( \det \mathbf{R}(\mathbf{p})\right)^2 = 1 $$
(41)

Thus, det R(p) = ± 1, but since the determinant for p = 0 is + 1, and R(p) is a continuous function of the GRPs, the determinant is identically one for any real-valued vector p. This demonstrates that expression (7) always produces a proper rotation matrix.

A.2 Inverse map

The orientation matrix in terms of GRPs is explicitly given as

$$ \begin{array}{@{}rcl@{}} \mathbf{R}(\mathbf{p}) &=& \mathbf{I}_3 + 2\xi^2 \left[\frac{a-\xi}{\xi}\boldsymbol{\Omega}_{\mathbf{p}} + \boldsymbol{\Omega}_{\mathbf{p}}^2 \right]\\ &=& \left[\begin{array}{lll} 1-2\xi^2(p_{2}^2+p_{3}^2) & 2\xi^2p_{1}p_{2}+2\xi(a-\xi)p_{3} & 2\xi^2p_{1}p_{3}-2\xi(a-\xi)p_{2} \\ 2\xi^2p_{1}p_{2}-2\xi(a-\xi)p_{3} & 1-2\xi^2(p_{1}^2+p_{3}^2) & 2\xi^2p_{2}p_{3}+2\xi(a-\xi)p_{1} \\ 2\xi^2p_{1}p_{3}+2\xi(a-\xi)p_{2} & 2\xi^2p_{2}p_{3}-2\xi(a-\xi)p_{1} & 1-2\xi^2(p_{1}^2+p_{2}^2) \end{array}\right]\\ \end{array} $$
(42)

from which relations (14)-(15) are easily obtained.

Note that, should the sum r12 + r21 in (15) approach zero, it is sufficient to use one of the two alternatives

$$ \begin{array}{@{}rcl@{}} \underline{\xi} &=& a \pm \frac{1}{2} \sqrt{\frac{(r_{32}-r_{23})(r_{21}-r_{12})}{r_{13}+r_{31}}}\\ &=& a \pm \frac{1}{2} \sqrt{\frac{(r_{13}-r_{31})(r_{21}-r_{12})}{r_{23}+r_{32}}} \end{array} $$
(43)

The same reasoning applies to the shadow set of GRPs.

Expressions (14)–(20) are specifically worked out to analyze internal consistency properties. From a computational perspective, it is easier to use the quaternion inversion formulas to obtain the inverse mapping:

$$ q_0 = \frac{1}{2} \sqrt{1+\text{tr}(\mathbf{R})} \quad ; \quad \mathbf{q} = \frac{1}{4q_0} \left( \begin{array}{lll} r_{23}-r_{32} \\ r_{31}-r_{13} \\ r_{12}-r_{21} \end{array}\right) $$
(44)

from which

$$ \mathbf{p} = \frac{1}{\sqrt{1+\text{tr}(\mathbf{R})} \left( 2a+\sqrt{1+\text{tr}(\mathbf{R})} \right)} \left( \begin{array}{lll} r_{23}-r_{32} \\ r_{31}-r_{13} \\ r_{12}-r_{21} \end{array}\right) $$
(45)

This function diverges in two cases. The first is for rotations about any axis and angle ϕ = (2k + 1)π (\(k \in \mathbb {Z}\)), for which tr(R) = − 1, corresponding to a null quaternion scalar component. Obviously, this is not a degenerate point, and the issue is circumvented by taking one of the following alternative inverse functions [13]:

$$ \begin{array}{@{}rcl@{}} \gamma &=& \frac{1}{2}\sqrt{1+r_{11}-r_{22}-r_{33}}\\ \mathbf{p} &=& \frac{1}{4\gamma a+r_{23}-r_{32}} \left( \begin{array}{lll} (2\gamma)^2 \\ r_{12}+r_{21} \\ r_{13}+r_{31} \end{array}\right) \end{array} $$
(46)

or

$$ \begin{array}{@{}rcl@{}} \gamma &=& \frac{1}{2}\sqrt{1+r_{11}-r_{22}-r_{33}}\\ \mathbf{p} &=& \frac{1}{4\gamma a+r_{23}-r_{32}} \left( \begin{array}{lll} (2\gamma)^2 \\ r_{12}+r_{21} \\ r_{13}+r_{31} \end{array}\right) \end{array} $$
(47)

or

$$ \begin{array}{@{}rcl@{}} \gamma &=& \frac{1}{2}\sqrt{1+r_{11}-r_{22}-r_{33}}\\ \mathbf{p} &=& \frac{1}{4\gamma a+r_{23}-r_{32}} \left( \begin{array}{lll} (2\gamma)^2 \\ r_{12}+r_{21} \\ r_{13}+r_{31} \end{array}\right) \end{array} $$
(48)

Since both (q0,q) and (−q0,−q) are valid parameterizations of the same attitude matrix R, for each of the four possible inversions (45)–(48) both the direct and the shadow GRPs can be recovered by simply inverting the sign of scalar a. It is then straightforward to apply the logic reported in Table 5 to select the appropriate set that guarantees both internal and external consistency.

The second degenerate point is at a rotation for which \(2a+\sqrt {1+\text {tr}(\mathbf {R})}=0\), corresponding to a quaternion scalar component q0 = −a, which is indeed a singularity point for the GRPs direct representation. This singularity is avoided by switching to the shadow set through inversion of the sign of parameter a.

A.3 Derivation of identity (26)

Using identity (25) in (24), one obtains

(49)

Using (6), expression (49) works out as

(50)

with \(\beta =\sqrt {(1-a^{2})\mathbf {p}^{\scriptscriptstyle \mathrm {T}}\mathbf {p}+1}\). The last ratio on the right-hand side in (50) only retains the sign of the scalar apTpβ, and identity (26) is thus obtained.

A.4 Rotations characterized by \(\mathbf {p}^{\scriptscriptstyle \mathrm {T}}\mathbf {p}=\mathbf {p}_{s}^{\scriptscriptstyle \mathrm {T}}\mathbf {p}_{s}=\frac {1}{a^{2}}\)

Functions (26) and (29) may take an indeterminate value when the squared norm of the GRPs approaches the value \(\frac {1}{a^{2}}\). However, any of the alternative inversion functions (46)–(48) can be used to study internal consistency. Such rotations are characterized by symmetric rotation matrices (the scalar component of quaternion is null, thus ξ = a and ξs = −a), and R(p) = R(p) = R(ps), thus the direct and the shadow GRPs can be swapped without altering the result.

A.5 Derivation of identity (32)

Substituting (6) into (31) gives

$$ \frac{\xi-a}{q_0} = \frac{1}{q_0}\left( \frac{a\pm\sqrt{(1-a^2)\mathbf{p}^{\scriptscriptstyle \mathrm{T}}\mathbf{p}+1}}{1+\mathbf{p}^{\scriptscriptstyle \mathrm{T}}\mathbf{p}}-a\right) $$
(51)

From relation (4) one obtains \(\mathbf {p}^{\scriptscriptstyle \mathrm {T}}\mathbf {p}=\frac {1-{q_{0}^{2}}}{(q_{0}+a)^{2}}\). Expression (51) then works out as

$$ \begin{array}{@{}rcl@{}} \frac{\xi-a}{q_0} &=& \frac{1}{q_0} \frac{\pm\sqrt{(q_0+a)^2(aq_0+1)^2}-a(1-q_0^2)}{a^2+2aq_0+1}\\ &=& \frac{1}{q_0} \frac{\pm|q_0+a||aq_0+1|+a(q_0^2-1)}{a^2+2aq_0+1} \end{array} $$
(52)

Since both a and q0 are only defined in the interval [− 1; + 1], the term |aq0 + 1| is always larger than, or equal to, zero. Expression (32) is then obtained.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Giorgi, G. On the use of Generalized Rodrigues Parameters for Representing Rigid Body Rotations. J Astronaut Sci 67, 815–828 (2020). https://doi.org/10.1007/s40295-019-00183-2

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s40295-019-00183-2

Keywords

Navigation