Physics Library
 An open source physics library
Encyclopedia | Forums | Docs | Random |  
Login
create new user
Username:
Password:
forget your password?
Main Menu
Sections

Meta

Talkback

Downloads

Information
[parent] example of Euler angles: direction cosine matrix to Euler angles (Example)

Euler Angles: Direction Cosine Matrix to Euler Angles Examples, Exercises, and Solutions

This entry is the self study companion to Euler Angles: direction cosine matrix to Euler angles.

The exercises develop the inverse attitude problem from basic convention recognition through numerical extraction, branch selection, singularity handling, DCM validation, reconstruction checks, and software-oriented diagnostics. The same passive intrinsic convention used throughout the PhysicsLibrary Euler series is retained.

All exercises appear first. Complete worked solutions follow afterward.

1 Convention summary

PhysicsLibrary uses

B     B   A
 v =   CA  v.
(1)

For an intrinsic i-j-k Euler sequence,

BCA  =  Ck(γ)Cj (β)Ci(α).
(2)

For Tait Bryan sequences the standard middle-angle branch is

− π-≤ β  ≤ π-,
  2        2
(3)

while for proper Euler sequences it is

0 ≤ β  ≤ π.
(4)

The outer angles are commonly normalized to

− π < α ≤ π,     − π < γ ≤  π.
(5)

2 Visual reference

PIC

Figure. A sequence-aware DCM-to-Euler workflow. Both the singular and nonsingular branches ultimately produce an Euler representative that must be normalized to the selected principal convention before reconstruction and verification.

PIC

Figure. The matrix elements used for intrinsic 3-2-1 and 3-1-3 extraction. The required elements depend on the selected sequence.

PIC

Figure. Common principal middle-angle branches for Tait Bryan and proper Euler sequences.

3 Exercises

  1. What information is missing from “DCM to Euler angles”?

    Explain why a direction cosine matrix does not determine a unique Euler triple until additional choices are specified. List at least four such choices.

  2. Passive map direction.

    A vector has coordinates

          ⌊  ⌋
       1
Av  = ⌈2 ⌉,
       3

    and the passive DCM from A coordinates to B coordinates is

            ⌊         ⌋
          0   1  0
BCA  =  ⌈− 1  0  0⌉ .
          0   0  1

    Compute Bv. What physical object has changed: the vector itself or only its coordinates?

  3. Is the input a proper rotation matrix?

    For

          ⌊1     0       0  ⌋
      ⌈                 ⌉
M  =   0   0.999   0.050  ,
       0  − 0.050  0.999

    compute the dot product of the second and third rows and their squared norms. Is M exactly orthogonal? Should Euler extraction silently assume that it is?

  4. Why determinant matters.

    Consider

        ⌊          ⌋
      1  0   0
R = ⌈ 0  1   0 ⌉ .
      0  0  − 1

    Show that RRT = I but det R = 1. Why is R not a valid attitude DCM?

  5. Why use atan2?

    Suppose a pair of DCM elements is proportional to

                   (   √ -- )
                   --3-1-
(cosλ, sin λ) =   −  2 ,2   .

    Compute λ using atan2 and compare with the result from arctan(y∕x). Explain the quadrant problem.

  6. Derive the 3-2-1 middle-angle formula.

    For intrinsic passive 3-2-1,

    C = C  (ϕ)C (𝜃)C  (ψ).
      1     2    3

    Using

    C13 = −  sin 𝜃,    C11 =  c𝜃cψ,     C12 = c𝜃sψ,

    derive the principal-branch formula

              (      ∘  ---------)
𝜃 = atan2  − C13,   C211 + C212  .
  7. Derive 3-2-1 yaw and roll extraction.

    Away from the 3-2-1 singularity, derive formulas for ψ and ϕ from the DCM elements.

  8. Numerical 3-2-1 extraction.

    For

         ⌊ 0.663414    0.556670   0.500000 ⌋
     ⌈                                 ⌉
C =   − 0.735024   0.609923   0.296198   ,
      − 0.140077  − 0.564014  0.813798

    recover the principal intrinsic 3-2-1 angles (ψ,𝜃,ϕ).

  9. Reconstruction check for 3-2-1.

    Using the angles found in the previous exercise, reconstruct

    ^C = C1 (ϕ)C2(𝜃)C3 (ψ).

    State what a small reconstruction residual tells you and name three errors that a large residual could reveal.

  10. Active/passive transpose trap.

    The same numerical orientation relationship is represented actively by

               T
Ractive = C passive.

    Suppose a software library returns the active matrix but the PhysicsLibrary 3-2-1 extraction formulas are applied to it as though it were passive. Why should the resulting Euler angles not be trusted even if they look plausible?

  11. Derive the 3-1-3 middle-angle formula.

    For intrinsic passive 3-1-3,

    C  = C3 (γ)C1(β )C3 (α),

    use

    C   = cos β,     C   = s s ,     C   = − c s
  33              31    α β       32      α β

    to derive a robust principal-branch formula for β.

  12. Derive 3-1-3 outer-angle extraction.

    Away from sin β = 0, derive formulas for α and γ from the 3-1-3 DCM.

  13. Numerical 3-1-3 extraction.

    For

         ⌊                                 ⌋
      0.951934   0.208761    − 0.224144
C =  ⌈0.078027   0.542358     0.836516  ⌉ ,
      0.296198  − 0.813798    0.500000

    recover the principal intrinsic 3-1-3 triple (α,β,γ).

  14. Tait Bryan principal branch.

    Why does the standard Tait Bryan middle-angle range

      π        π
− --≤  β ≤ --
  2         2

    make

    ∘ ------
  cos2β =  cosβ

    rather than | cos β| ambiguous inside the extraction formulas? Where are the singular endpoints?

  15. Proper Euler principal branch.

    Why does

    0 ≤ β ≤ π

    make

    ∘ ------
  sin2β =  sin β

    on the principal branch? Where are the two singular endpoints?

  16. 3-2-1 singularity at positive ninety degrees.

    A 3-2-1 orientation is generated by

          ∘            ∘            ∘
ψ = 50 ,     𝜃 = 90 ,     ϕ = 20 .

    At this singularity the software policy sets ϕ = 0 and uses

    ψreport = atan2 (− C21,C22).

    What yaw does the policy report? Why is it different from the original 50 yet still represents the same physical orientation when combined with 𝜃 = 90 and ϕ = 0?

  17. 3-2-1 singularity at negative ninety degrees.

    Repeat the previous exercise for

           ∘             ∘            ∘
ψ = 50 ,     𝜃 = − 90 ,    ϕ =  20 .

    What yaw is reported under the same ϕ = 0 policy?

  18. 3-1-3 singularity at beta equals zero.

    For intrinsic 3-1-3, set β = 0 and show that the DCM depends only on α + γ. If a singular policy sets γ = 0, what should be reported for α?

  19. 3-1-3 singularity at beta equals pi.

    Set β = π and show that only αγ is observable. Under the same γ = 0 policy, derive the reported α.

  20. Normalize, do not blindly modulo every angle.

    Explain the difference between

    wrapping  an outer angle modulo  2π

    and

    normalizing an  Euler triple to a selected principal branch.

    Why should the middle angle not simply be treated as another freely wrapped 2π-periodic coordinate?

  21. Alternate 3-2-1 branch.

    Show that the two intrinsic 3-2-1 triples

       ∘   ∘   ∘
(40 ,30 ,20 )

    and

    (220 ∘,150 ∘,200∘)

    produce the same DCM, even though only the first lies on the usual Tait Bryan principal branch.

  22. A non-3-2-1 Tait Bryan example.

    For intrinsic 1-3-2,

    C  = C2 (γ)C3(β )C1 (α),

    and the DCM is

         ⌊                                 ⌋
      0.719846   0.094493    − 0.687672
C =  ⌈0.342020   0.813798     0.469846  ⌉ .

      0.604023  − 0.573415    0.553491

    Using the sequence-specific formulas

    α = atan2 (C23, C22),

               (      ∘  ---------)
β =  atan2  − C21,   C222 + C223  ,

    and

    γ = atan2(C31, C11),

    recover the principal angles.

  23. A non-3-1-3 proper Euler example.

    For intrinsic 2-3-2,

    C  = C2 (γ)C3(β )C2 (α),

    and

         ⌊                                 ⌋
       0.496321    0.769751   0.401433
C =  ⌈− 0.851651   0.342020   0.397131 ⌉ .
       0.168394   − 0.538986  0.825311

    Use

    α = atan2 (C23,− C21),

               (∘  ----------   )
                2     2
β =  atan2     C21 + C23,C22  ,

    and

    γ = atan2 (C32,C12)

    to recover the principal angles.

  24. Near-singular conditioning.

    For a Tait Bryan sequence, the outer-angle extraction becomes poorly conditioned as | cos β| approaches zero. Compare

            ∘
β1 =  60

    with

    β =  89.9∘
 2

    by computing | cos β| for each. Approximately how many times smaller is the common outer-angle scale factor at 89.9?

  25. relative attitude and final implementation audit.

    Frame B1 has intrinsic 3-2-1 angles

    (ψ1, 𝜃1,ϕ1 ) = (10 ∘,5∘,− 2 ∘),

    and frame B2 has

    (ψ2,𝜃2,ϕ2 ) = (30 ∘,− 10 ∘,15 ∘),

    both relative to frame A.

    Explain why simple componentwise subtraction is not the exact finite relative attitude. Form the correct expression

    B2       B2    (B1   )T
  CB1  =   CA     CA

    and state the approximate principal 3-2-1 relative angles obtained by extracting from this matrix.

    Finally, list at least six checks that should appear in a production DCM-to-Euler implementation.

4 Solutions

  1. What information is missing from “DCM to Euler angles”?

    A DCM stores the orientation itself, whereas Euler angles are coordinates of that orientation in a chosen chart. The inverse map is therefore not unique until the chart is specified.

    At minimum one must specify:

    • the Euler sequence, such as 3-2-1 or 3-1-3;
    • intrinsic versus extrinsic interpretation;
    • active versus passive matrix convention;
    • DCM map direction, such as BC A versus AC B;
    • principal angle ranges;
    • a singularity / gauge policy;
    • an angle-wrapping convention for the outer angles.

    Thus the meaningful inverse operation is

    (C,  sequence, convention, branch  policy) −→  (α, β,γ).
  2. Passive map direction.

    Apply the passive coordinate map:

    Bv =  BCA Av.
    (6)

    Hence

          ⌊  0   1  0⌋ ⌊1⌋    ⌊ 2 ⌋
B     ⌈          ⌉ ⌈ ⌉    ⌈   ⌉
  v =   − 1  0  0   2  =   − 1  .
         0   0  1   3       3
    (7)

    The physical vector has not changed. Only the coordinates used to describe that same vector have changed from frame A to frame B.

  3. Is the input a proper rotation matrix?

    Let the second and third rows be

         [               ]           [                 ]
r2 =  0  0.999  0.050  ,    r3 =  0  − 0.050  0.999 .

    Their dot product is

    r2 ⋅ r3 = (0.999 )(− 0.050) + (0.050 )(0.999 ) = 0.
    (8)

    Their squared norms are

    ∥r ∥2 = 0.9992 + 0.0502 = 1.000501,
  2
    (9)

    and the same for r3.

    Thus the rows are mutually perpendicular but not exactly unit length. Therefore

    M  M T ⁄=  I

    exactly.

    Euler extraction should not silently assume arbitrary input matrices are perfect rotations. A production implementation should test orthogonality and determinant and, when appropriate, repair a noisy matrix before extraction.

  4. Why determinant matters.

    Because R is diagonal,

       T
RR   =  I.
    (10)

    However,

    det R = (1)(1)(− 1) = − 1.
    (11)

    A proper three-dimensional rotation must lie in SO(3) and therefore satisfy

    detC  = +1.
    (12)

    The matrix R is an improper orthogonal transformation containing a reflection. It is not a physically valid attitude DCM.

  5. Why use atan2?

    Take

          √3--         1
x = − ---,     y = --.
       2           2

    Then

              (     √ --)
            1-  --3-        ∘
λ = atan2   2,−  2    = 150  .
    (13)

    By contrast,

          (  )          (      )
        y-              -1--        ∘
arctan  x  =  arctan  − √3--  = − 30 .
    (14)

    The tangent is the same for angles differing by 180, so arctan(y∕x) cannot determine the quadrant. The two-argument atan2 preserves the signs of both inputs and returns the correct quadrant.

  6. Derive the 3-2-1 middle-angle formula.

    From

    C11 = c𝜃cψ,     C12 = c𝜃sψ,

    we obtain

                   (       )
C211 + C212 = c2𝜃  c2ψ + s2ψ =  c2𝜃.
    (15)

    On the principal Tait Bryan branch,

      π-       π-
− 2 ≤  𝜃 ≤ 2 ,

    so

    c𝜃 ≥ 0.

    Therefore

    ∘ ----------
    2     2
  C 11 + C 12 = cos 𝜃.
    (16)

    Also,

    − C13 = sin𝜃.

    Hence

              (                  )
                 ∘  ----------
𝜃 = atan2  − C13,   C211 + C212  .
    (17)

  7. Derive 3-2-1 yaw and roll extraction.

    Away from the singularity, cos 𝜃≠0.

    For yaw,

    C11 = c𝜃cψ,     C12 = c𝜃sψ.

    The common positive factor c𝜃 cancels in the two-argument inverse, giving

    ψ = atan2 (C12, C11).
    (18)

    For roll,

    C23 =  sϕc𝜃,    C33 = cϕc𝜃,

    so

    ϕ = atan2 (C   ,C  ).
            23  33
    (19)

    Thus the complete nonsingular principal extraction is

    ψ = atan2 (C   ,C  ),
            12  11
    (20)

              (         ---------)
                 ∘   2     2
𝜃 = atan2  − C13,   C11 + C12  ,
    (21)

    ϕ = atan2 (C23, C33).
    (22)

  8. Numerical 3-2-1 extraction.

    Yaw:

                                       ∘
ψ  = atan2(0.556670, 0.663414 ) ≈ 40 .
    (23)

    Pitch:

              (           √ ----------------------)
𝜃 = atan2  − 0.500000,  0.6634142 + 0.5566702   ≈ − 30∘.
    (24)

    Roll:

                                       ∘
ϕ =  atan2(0.296198, 0.813798 ) ≈ 20 .
    (25)

    Therefore

                  ∘     ∘   ∘
(ψ, 𝜃,ϕ) = (40 ,− 30 ,20 ).
    (26)

  9. Reconstruction check for 3-2-1.

    The reconstructed matrix is

    ^C =  C1(20∘)C2 (− 30∘)C3 (40∘).
    (27)

    Numerically,

         ⌊                                 ⌋
^      0.663414    0.556670   0.500000
C ≈  ⌈− 0.735024   0.609923   0.296198 ⌉ .
      − 0.140077  − 0.564014  0.813798
    (28)

    Thus C matches the supplied C to the shown precision.

    A small reconstruction residual strongly suggests that the extraction formula, sequence, signs, branch, and matrix convention are mutually consistent.

    A large residual can reveal, among other things:

    • the wrong Euler sequence;
    • active/passive transpose confusion;
    • wrong map direction;
    • a sign error in an elementary rotation matrix;
    • swapped first and third angles;
    • an invalid input DCM.
  10. Active/passive transpose trap.

    The PhysicsLibrary formulas assume the passive map

    Bv =  BCA Av.

    For the same orientation geometry, the corresponding active matrix is

    Ractive = CTpassive.
    (29)

    Transposition changes the matrix elements used by the sequence-specific inverse formulas. Applying passive extraction to the active matrix is therefore solving a different inverse problem.

    The returned numbers may still look smooth and physically plausible because the transpose is itself a valid rotation matrix. Plausibility is not a convention check. Reconstruction with the intended passive product is the appropriate diagnostic.

  11. Derive the 3-1-3 middle-angle formula.

    From

    C31 = sαs β,    C32 =  − cαsβ,

    we have

                   (       )
C231 + C232 = s2β s2α + c2α = sin2β.
    (30)

    On the proper Euler principal branch

    0 ≤ β  ≤ π,

    so

    sin β ≥  0.

    Therefore

    ∘ ----------
  C231 + C232 = sin β.
    (31)

    Since

    C33 = cosβ,

    the robust middle-angle formula is

               (                )
            ∘  -2-----2--
β =  atan2     C31 + C32,C33  .
    (32)

  12. Derive 3-1-3 outer-angle extraction.

    Away from sin β = 0,

    C31 = sαs β,    − C32 = cαsβ.

    Hence

    α = atan2 (C31,− C32).
    (33)

    Also,

    C   = s  s ,    C   = s  c ,
  13    β  γ       23    β  γ

    so

    γ = atan2(C13, C23).
    (34)

  13. Numerical 3-1-3 extraction.

    First,

                                       ∘
α =  atan2(0.296198, 0.813798 ) ≈ 20 .
    (35)

    Then,

               (∘ -------------------------          )
β =  atan2    0.2961982 + (− 0.813798)2,0.500000   ≈ 60∘.
    (36)

    Finally,

                                          ∘
γ = atan2(− 0.224144, 0.836516 ) ≈ − 15 .
    (37)

    Therefore

                  ∘    ∘    ∘
(α, β,γ) = (20 ,60 ,− 15 ).
    (38)

  14. Tait Bryan principal branch.

    For

      π        π
− --≤ β  ≤ --,
  2        2

    the cosine is nonnegative:

    cosβ ≥  0.
    (39)

    Therefore

      ------
∘ cos2 β = |cosβ | = cos β
    (40)

    throughout the principal branch.

    The singular endpoints are

          π-                   π-
β = −  2     and     β = + 2 ,
    (41)

    where cos β = 0 and the two outer rotations lose independent observability.

  15. Proper Euler principal branch.

    For

    0 ≤ β  ≤ π,

    we have

    sin β ≥  0.
    (42)

    Thus

    ∘ ------
  sin2β =  |sin β| = sin β.
    (43)

    The singular endpoints are

    β =  0    and     β =  π.
    (44)

    At both endpoints the first and third physical rotation axes become collinear.

  16. 3-2-1 singularity at positive ninety degrees.

    For

    (ψ, 𝜃,ϕ) = (50∘,90∘,20∘),

    the singular DCM contains only the coupled outer-angle combination

    ψ −  ϕ = 30∘.

    Indeed the relevant matrix elements are

    C21 = − 0.500000,     C22 = 0.866025.

    The chosen gauge gives

    ψreport = atan2 (0.500000, 0.866025) = 30∘.
    (45)

    Therefore the software may report

    (ψ,𝜃,ϕ ) = (30∘,90∘,0∘).
    (46)

    This differs from the original coordinate triple but represents the same DCM. At the singularity, ψ and ϕ are not independently observable.

  17. 3-2-1 singularity at negative ninety degrees.

    At

    𝜃 = − 90∘,

    the observable combination for this convention is

    ψ  + ϕ.

    With

    ψ =  50∘,    ϕ = 20 ∘,

    the coupled value is

      ∘
70 .

    The DCM gives approximately

    C21 = − 0.939693,     C22 = 0.342020.

    Hence

                                           ∘
ψreport = atan2 (0.939693, 0.342020) = 70 .
    (47)

    Under the ϕ = 0 gauge the reported triple is therefore

    (70∘,− 90∘,0∘).
    (48)

  18. 3-1-3 singularity at beta equals zero.

    At β = 0,

    C =  C3(γ)C3 (α) = C3(α +  γ).
    (49)

    Thus only

    δ0 = α +  γ
    (50)

    is observable.

    The matrix has

    C11 = cos δ0,    C12 = sin δ0.

    Therefore

    δ0 = atan2 (C12,C11).
    (51)

    If the policy chooses γ = 0, then it reports

    α =  δ =  atan2(C  ,C   ).
      0          12   11
    (52)

  19. 3-1-3 singularity at beta equals pi.

    At β = π, the full matrix depends on the outer angles only through

    δπ = α − γ.
    (53)

    The upper-left pair becomes

    C11 = cos δπ,    C12 = sin δπ.

    Hence

    δπ = atan2 (C12,C11).
    (54)

    With the policy γ = 0,

    α =  δπ = atan2(C12,C11 ).
    (55)

    The numerical formula happens to look the same as at β = 0, but the underlying observable combination is different: sum at one endpoint, difference at the other.

  20. Normalize, do not blindly modulo every angle.

    An outer Euler Angle is ordinarily periodic modulo 2π, so a value such as

        ∘
370

    may be wrapped to

    10∘.

    The middle Euler angle is different because the selected Euler chart imposes a restricted principal interval.

    For Tait Bryan sequences,

      π        π
− --≤ β  ≤ --,
  2        2

    while for proper Euler sequences,

    0 ≤ β  ≤ π.

    Moving the middle angle outside those ranges generally requires a coordinated change in the two outer angles to preserve the same orientation.

    Therefore a robust implementation should normalize the Euler triple to the selected principal branch, not apply an independent modulo-2π operation to every coordinate.

  21. Alternate 3-2-1 branch.

    The first triple is

    (ψ, 𝜃,ϕ) = (40∘,30∘,20∘).

    The alternate Tait Bryan branch rule is

      ′  ′  ′
(α ,β ,γ ) = (α + π, π − β,γ + π ).
    (56)

    Applying it gives

    (220∘,150 ∘,200 ∘).

    Substituting either triple into

    C =  C1(ϕ)C2 (𝜃)C3(ψ)
    (57)

    produces the same matrix.

    The first triple lies on the usual principal branch because

    − 90 ∘ ≤ 30∘ ≤ 90∘.

    The second does not. DCM-to-Euler extraction therefore requires a branch choice even away from singularity.

  22. A non-3-2-1 Tait Bryan example.

    For 1-3-2,

    α  = atan2(0.469846, 0.813798 ) = 30∘.
    (58)

    The middle angle is

              (           √ ----------------------)       ∘
β = atan2  − 0.342020,  0.8137982 + 0.4698462   = − 20 .
    (59)

    The third angle is

                                      ∘
γ = atan2(0.604023, 0.719846 ) = 40 .
    (60)

    Therefore

    (α, β,γ) = (30∘,− 20∘,40∘).
    (61)

    This example demonstrates why the 3-2-1 matrix-element pattern cannot simply be reused for another Tait Bryan sequence.

  23. A non-3-1-3 proper Euler example.

    For 2-3-2,

    α  = atan2(0.397131, 0.851651 ) = 25∘.
    (62)

    The middle angle is

               (∘ ------------2-----------2          )     ∘
β =  atan2    (− 0.851651)  + 0.397131 ,0.342020   = 70 .
    (63)

    The third angle is

    γ = atan2 (− 0.538986, 0.769751 ) = − 35∘.
    (64)

    Thus

    (α, β,γ) = (25∘,70 ∘,− 35∘).
    (65)

    Again, the DCM elements used by the inverse map are sequence specific.

  24. Near-singular conditioning.

    For

    β1 = 60 ∘,
    |cosβ1| = 0.5.
    (66)

    For

             ∘
β2 = 89.9 ,
    |cosβ2| ≈ 0.00174533.
    (67)

    The ratio is

    ----0.5----≈  286.5.
0.00174533
    (68)

    Thus the common outer-angle scale factor is about 286 times smaller at 89.9 than at 60.

    This explains why small perturbations in DCM elements can produce large changes in the recovered outer angles near a Tait Bryan singularity even before the singularity is reached exactly.

  25. Relative attitude and final implementation audit.

    The two Euler triples are coordinates of two separate rotations. Euler coordinates do not obey finite vector subtraction.

    The exact passive relative map is

                  (     )T
B2CB1 =  B2CA  B1CA    .
    (69)

    Using

    B1            ∘     ∘       ∘
  CA =  C1(− 2 )C2(5 )C3 (10  )

    and

    B2            ∘        ∘       ∘
  CA  = C1 (15 )C2(− 10 )C3(30 ),

    one obtains approximately

             ⌊                                 ⌋
           0.906761    0.327767   0.265243
B2C   ≈  ⌈− 0.393396   0.884030   0.252449 ⌉ .
   B1
          − 0.151739  − 0.333256  0.930546
    (70)

    Extracting intrinsic passive 3-2-1 angles gives approximately

    ψ   = 19.873∘,
 rel
    (71)

                  ∘
𝜃rel = − 15.381  ,
    (72)

    and

    ϕ  =  15.179∘.
 rel
    (73)

    Simple componentwise subtraction would have produced

    (20∘,− 15∘,17∘),

    which is close in two components for this particular example but is not the exact finite relative orientation.

    A production DCM-to-Euler implementation should include checks such as:

    • explicit passive/active convention identification;
    • explicit DCM map direction;
    • explicit Euler sequence selection;
    • orthogonality residual check;
    • determinant check;
    • appropriate DCM repair or rejection policy;
    • sequence-specific singularity detection;
    • documented singular gauge policy;
    • principal-branch normalization;
    • outer-angle wrapping convention;
    • reconstruction of C;
    • reconstruction residual test;
    • tests near and exactly at singular configurations;
    • regression tests for multiple Euler sequences.

5 Further study

The parent article Euler angles: direction cosine matrix to Euler angles contains the full extraction tables for all twelve standard intrinsic Euler sequences and develops the numerical workflow in detail.

The next article in the Euler series develops singularities, gimbal lock, and nonuniqueness as geometric properties of Euler coordinate charts rather than failures of the underlying physical attitude.

For numerical state propagation, a DCM or quaternion is generally preferable to an Euler triple. Euler angles are especially useful as human-readable derived outputs when the selected chart remains well conditioned.

6 References and further reading

References

[1]   D. M. Henderson, Euler Angles, Quaternions, and Transformation Matrices: Working Relationships, JSC-12960, NASA Johnson Space Center, 1977. NASA Technical Reports Server

[2]   J. K. Moore, Learn Multibody Dynamics, chapters “Orientation of Reference Frames” and “Angular Kinematics.” Licensed CC BY 4.0. Learn Multibody Dynamics

[3]   J. Diebel, “Representing Attitude: Euler Angles, Unit Quaternions, and Rotation Vectors,” Stanford University, 2006. Online PDF

License

Unless otherwise noted, this PhysicsLibrary entry is intended for release under the Creative Commons Attribution ShareAlike 4.0 International license.


"example of Euler angles: direction cosine matrix to Euler angles" is owned by bloftin.
(view preamble)
View style:
Keywords:  Euler angles, direction cosine matrix, DCM, inverse Euler transformation, 3-2-1, 3-1-3, passive transformation, intrinsic rotation, atan2, principal branch, gimbal lock, singularity, reconstruction check, examples, exercises, worked solutions

This object's parent.

Cross-references: quaternion, detection, Tait Bryan sequence, Euler Angle, operation, relative attitude, observable, formula, determinant, norms, dot product, vector, direction cosine matrix, matrix, Tait Bryan sequences, direction cosine matrix to Euler angles, Euler Angles

This is version 1 of example of Euler angles: direction cosine matrix to Euler angles, born on 2026-08-31.
Object id is 1137, canonical name is ExampleOfEulerAnglesDirectionCosineMatrixToEulerAngles.
Accessed 3 times total.

Classification:
Physics Classification45.40.-f (Dynamics and kinematics of rigid bodies)
 02.40.Yy (Geometric mechanics )
 06.30.Gv (Velocity, acceleration, and rotation)
Pending Errata and Addenda
None.
Discussion
Style: Expand: Order:

No messages.

Interact
rate | post | correct | update request | add example | add (any)