three dimensional rotations

44
1 Three-Dimensional  Rotations A rotation is a transformation that preserves the length, the volume (with sig n), and the angle between pairs of vect ors. If vector a is rotated into vector b, then the property of length preservation is expressed as |a| = |b|. (1.1) Furthermore, if vectors a 1 , a 2 and a 3 are transformed by the same identical rotation into vectors b 1 , b 2 and b 3 , respectively, by the property of volume preservation we have a 1 · a 2 × a 3 = b 1 · b 2 × b 3 . (1.2) Finally, by the property of angle preservation between vectors, we have cos ϕ a1,a2 = a 1 · a 2 |a 1 ||a 2 | = b 1 · b 2 |b 1 ||b 2 | = cos ϕ b1,b2 , (1.3) where ϕ i,  j indicates the angle between vector i and vector j . Because of these three properties, a rotation is termed a rigid transformation . In mechanics, rotations are used for expressing relationships between co- ordina te systems. A rec tangul ar coor dinate system is dened by a frame. Each frame is composed by a point, called the frame pole, and by a triad of orthogon al unit vectors with origi n in the pole. Since rota tions are rigid transformations, given two triads I and J , the latter can always be seen as obtained by a suitable rotation of the former. Hence, rotations play a funda- mental role whenever a problem is formulated in terms of multiple coordinate systems in relative motion with respect to one another. 1

Upload: andreansr125

Post on 07-Apr-2018

230 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 1/44

1Three-Dimensional

Rotations

A rotation is a transformation that preserves the length, the volume (withsign), and the angle between pairs of vectors. If vector a is rotated intovector b, then the property of length preservation is expressed as

|a| = |b|. (1.1)

Furthermore, if vectors a1, a2 and a3 are transformed by the same identicalrotation into vectors b1, b2 and b3, respectively, by the property of volumepreservation we have

a1 · a2 × a3 = b1 · b2 × b3. (1.2)

Finally, by the property of angle preservation between vectors, we have

cos ϕa1,a2 =a1 · a2|a1||a2| =

b1 · b2|b1||b2| = cos ϕb1,b2 , (1.3)

where ϕi, j indicates the angle between vector i and vector j. Because of these

three properties, a rotation is termed a rigid transformation .In mechanics, rotations are used for expressing relationships between co-

ordinate systems. A rectangular coordinate system is defined by a frame.Each frame is composed by a point, called the frame pole, and by a triadof orthogonal unit vectors with origin in the pole. Since rotations are rigidtransformations, given two triads I and J , the latter can always be seen asobtained by a suitable rotation of the former. Hence, rotations play a funda-mental role whenever a problem is formulated in terms of multiple coordinatesystems in relative motion with respect to one another.

1

Page 2: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 2/44

2 THREE-DIMENSIONAL ROTATIONS

In the formulation of flight mechanics problems, rotations are routinelyused for transforming the components of vectors from one coordinate systemto another. Furthermore, the motion of a vehicle with respect to a frameof reference is described in terms of the position and orientation of a bodyattached frame that is fixed to the vehicle and moves with it. The position of the vehicle with respect to the reference frame is given by the distance vectorbetween the pole of the reference frame and the pole of the vehicle attachedframe. On the other hand, the orientation of the vehicle with respect to thereference frame is given by the rotation that brings the reference triad into thevehicle attached triad. When only the orientations are of interest, as in mostinstances in the rest of this chapter, we can use triads rather than frames in

order to describe systems of coordinates.In this chapter we study the problem of three-dimensional rotations, andwe introduce the main instruments that are used for describing and manipu-lating rotations. The concepts and tools here exposed will be used later on inthe derivation of the vehicle equations of motion, and in their analysis and so-lution. Furthermore, in this chapter we show that rotations are characterizedby special properties. In fact, as with many other problems in mechanics,rotations can be described in terms of tensorial quantities. In particular,the first order tensors, called rotation vectors, belong to special spaces whoseproperties imply that: a) the composition of successive rotations can not be ex-pressed by simply adding the corresponding rotation vectors, and b) rotationsdo not commute, in the sense that changing the order in which two successiverotations are performed, changes the resulting composed rotation. These spe-

cial characteristics of rotations are found only in the three-dimensional case,while in two spatial dimensions rotations can be added and commute, and aretherefore much simpler to analyze. The title of this chapter emphasizes thespecial nature of the three-dimensional case. The treatment of the materialpresented herein is designed to be self-contained, however the reader mightwish to find further information and additional details in classical referencessuch as [5, 4].

We shall start the study of rotations by looking first at the problem of trans-forming components between triads, which leads to the concept of direction

cosine matrix .

1.1 THE DIRECTION COSINE MATRIX

Consider two orthonormal triads of unit vectors, I = (i1, i2, i3) and J =( j1, j2, j3), as shown in figure 1.1. Each unit vector jk of J can be expressedin terms of the unit vectors il of I as

jk = (i1 · jk) i1 + (i2 · jk) i2 + (i3 · jk) i3 =

3∑l=1

(il · jk) il, (1.4)

Page 3: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 3/44

THE DIRECTION COSINE MATRIX 3

i 1 i

2

j 2

j 3

i 3

j 1

Figure 1.1 Orthonormal triads of unit vectors, I = (i1, i2, i3) and J = ( j1, j2, j3).

where k = 1, 2, 3. This relationship between the vectors of two triads canbe conveniently expressed by means of the direction cosine matrix [Λ], whosescalar components are

Λkl = ik · jl, k, l = 1, 2, 3. (1.5)

The entries of this matrix represent the cosines of the angles between the unitvectors of triad I and those of triad J ,

ik · jl = cos ϕik, jl , (1.6)

as the name of the matrix suggests.The same matrix entries can also be interpreted in an alternative way.

In fact, from its definition, the columns of the direction cosine matrix areseen to represent the components of the unit vectors jk measured in triad I .Indicating the components of vector a in triad A with the notation aA, thedirection cosine matrix can be partitioned by columns as follows:

[Λ] = jI 1 jI 2 jI 3 . (1.7)

By a similar argument, the rows of the matrix are seen to represent the com-ponents of the unit vectors ik measured in triad J :

[Λ] =

iJ T 1

iJ T 2

iJ T 3

. (1.8)

Page 4: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 4/44

4 THREE-DIMENSIONAL ROTATIONS

Using now equation (1.4) and the direction cosine matrix definition, equa-tion (1.5), it is readily verified that the direction cosine matrix transforms thecomponents of the unit vectors ik measured in I into the components of theunit vectors jk measured in the same triad:

jI k = [Λ] iI k , k = 1, 2, 3. (1.9)

We shall use this fact later on for developing the rule of transformation of components of vectors and tensors in changing reference from one basis toanother.

The direction cosine matrix is orthogonal , i.e. it enjoys the following fun-damental property:

[Λ][Λ]T = [Λ]T [Λ] = [I ], (1.10)

where [I ] is the 3 × 3 identity matrix. In fact, using equation (1.7) whichexpresses the matrix partitioning by columns, we can immediately verify that

[Λ]T [Λ] =

jI T 1

jI T 2

jI T 3

jI 1 jI 2 jI 3

= jI T k jI l

= [δkl] = [I ], (1.11)

where δkl is the Kronecker symbol, i.e. δkl = 1 if k = l, δkl = 0 if k = l.The diagonal terms of the direction cosine matrix are equal to one becausevectors j

kare of unit length, j

k · jk

= 1, while the off-diagonal terms of thematrix are equal to zero because the triad vectors are mutually orthogonal, jk · jl = 0, k = l. Given the orthogonality of the direction cosine matrix, itsinverse is readily computed from (1.10) as

[Λ]−1 = [Λ]T . (1.12)

1.2 THE ANGULAR VELOCITY

Consider now [Λ] as a function of a scalar parameter t ∈ R+, [Λ] = [Λ(t)].This would be the case whenever one of the two triads moves with respect tothe other, for example, because it is attached to a body that is in motion with

respect to a fixed frame. Differentiating the orthogonality condition (1.10)with respect to t yields

˙[Λ][Λ]T + [Λ] ˙[Λ]T

= 0, (1.13)

where the notation ˙(·) = d · /dt was used to indicate differentiation withrespect to time. Setting now

[A] = ˙[Λ][Λ]T , (1.14)

Page 5: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 5/44

THE ANGULAR VELOCITY 5

equation (1.13) implies that [A] is a skew symmetric matrix:

[A] = −[A]T . (1.15)

Since a 3 × 3 skew symmetric matrix can depend on only three parameters,[A] can be expressed in terms of the components of a vector ωJ /I , termed theangular velocity vector of triad J with respect to triad I . When there are onlytwo triads, and where there is no possibility of confusion, in order to simplifythe notation we will indicate the angular velocity simply with the symbol ω,rather than with the more precise ωJ /I . Indicating the components of ω in

I with the notation ωI = (ω1, ω2, ω3)T , the skew symmetric matrix [A] canbe written as

[A] = ωI × =

0 −ω3 ω2

ω3 0 −ω1

−ω2 ω1 0

. (1.16)

The symbol (·)× is here used to indicate a skew symmetric tensor, whosecomponents in I are noted (·)I ×. This notation reminds the fact that a skewsymmetric matrix can be used for computing the components of the crossproduct between two vectors. In fact, given two vectors a and b, their crossproduct is defined as

c = a× b = |a||b| sin ϕa,b n, (1.17)

where n is a unit vector orthogonal to the plane formed by a and b, and ϕa,bthe angle between them. In components measured in

I , equation (1.17) is

expressed as

cI =

a2b3 − a3b2

a3b1 − a1b3a1b2 − a2b1

, (1.18)

which can also be written as

cI = aI ×bI =

0 −a3 a2

a3 0 −a1−a2 a1 0

b1

b2b3

, (1.19)

where the components of the various vectors are aI = (a1, a2, a3)T , bI =(b1, b2, b3)T , and cI = (c1, c2, c3)T . Hence, the cross product between vectors

a and b can be regarded as the product between a skew symmetric secondorder tensor a× and vector b:

c = a× b = a×b. (1.20)

The skew symmetric second order tensor will be extensively used in the re-maining of this chapter. For future reference, we note that given a genericsecond order tensor T , its axial vector v is defined as v = axial(T ), such thatv× = (T −T T )/2. Hence, given the skew symmetric tensor a× above, vectora can be computed from tensor a× as a = axial(a×).

Page 6: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 6/44

6 THREE-DIMENSIONAL ROTATIONS

Returning to the problem of differentiating the orthogonality condition,using now (1.16), equation (1.14) becomes

˙[Λ] = ωI ×[Λ]. (1.21)

Examined column by column, this matrix ordinary differential equation yieldsthe time derivatives of the components of the jk unit vectors measured in the

I triad:d jI kdt

= ωI × jI k , k = 1, 2, 3. (1.22)

Since all components are referred to the same triadI

, these equations can beexpressed in vector form as

d jkdt

= ω × jk, k = 1, 2, 3. (1.23)

These equations express the time rates of change of the unit vectors of amoving triad, and are known as Poisson’s relations.

1.3 THE ROTATION TENSOR

So far, we have considered the problem of transforming vector components

from one basis to another. This has lead to the concept of a direction cosinematrix, and shown its orthogonality property. Orthogonality has then leadto the concept of angular velocity and shown the role of the skew symmetricsecond order tensor. These same concepts can be derived by looking at theproblem of rotating a vector a into a vector b, a transformation that we willindicate symbolically as

b = Rot(a). (1.24)

The analysis of the rotation problem shows that this transformation betweenvectors is accomplished by a tensor, known as the rotation tensor . In thissection we shall therefore study the derivation of the rotation tensor as afunction of its associated vectorial quantity, the rotation vector . This analysiswill provide the basis for discussing of the fundamental problem of how to

describe finite rotations in terms of suitable degrees of freedom, a problemthat is known in the literature as the parameterization of rotations.

The expression of the rotation tensor in terms of the rotation vector can bederived in at least two alternative ways: using purely geometric arguments,or using a differential approach. While both ways of looking at the problemclearly lead to the same results, both have their interesting peculiarities andhighlight different important properties of rotations. Hence, both paths willbe illustrated in the following pages. We shall start by the most intuitive andsimple one, which is the geometric approach.

Page 7: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 7/44

THE ROTATION TENSOR 7

1.3.1 Geometric Derivation of the Rotation Tensor

The geometric derivation of the rotation tensor can be based on the twofundamental theorems of Euler on rotations. Euler’s Displacement Theoremstates that any arbitrary displacement of a rigid body that leaves a point fixedis a rotation about a unit vector k by an angle φ. In other words, any three-dimensional rotation can be interpreted as a two-dimensional rotation thattakes place in a plane orthogonal to a suitably chosen direction. Furthermore,Euler’s Rotation Theorem states that any rotation may be described in termsof only three parameters.

i j

k

a b

c

d

e

j

a a

pa,k

Figure 1.2 Rotation of vector a into vector b through a rotation angle φ about unitvector k.

Consider in particular the rotation of vector a into vector b, as depictedin figure 1.2. According to Euler’s Displacement Theorem, the rotation of ainto b can be seen as produced by a rotation φ about the rotation axis k.The problem is now to compute b, given a, k and φ. With this goal in mind,define first a triad of orthogonal unit vectors i, j and k. Unit vector j isorthogonal to plane πa,k spanned by a and k,

j =k × a

|a| sin α, (1.25)

Page 8: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 8/44

8 THREE-DIMENSIONAL ROTATIONS

α being the angle between k and a, while unit vector i completes a right-handed triad,

i = j × k, (1.26)

and consequently lies in the plane πa,k. With reference to figure 1.2, vector bcan now be expressed as the sum of four vectors

b = a + c + d + e, (1.27)

where c and e are parallel to i, while d is parallel to j. Each one of thesevectors can be readily expressed in terms of only a, k and φ:

c = −|a| sin α i = −|a| sin α(k

×a)

×k

|a| sin α = k × k × a, (1.28)

d = |a| sin α sin φ j = |a| sin α sin φk× a

|a| sin α= sin φk × a, (1.29)

e = |a| sin α cos φ i = |a| sin α cos φ(k× a) × k

|a| sin α= − cos φk× k × a. (1.30)

Substituting these expressions into (1.27), vector b is now computed as

b = Ra, (1.31)

whereR = I + sin φk× + (1

−cos φ)k×k×, (1.32)

is the rotation tensor that transforms a into b, and ψ = φk is termed therotation vector . Note that, coherently with Euler’s Rotation Theorem, R ischaracterized by only three parameters: the rotation angle φ and the twoindependent parameters that define unit vector k. Equation (1.32) is knownas the Euler-Rodrigues formula .

For future reference and ease of notation, it is convenient to write R as

R =2∑

k=0

Rk(ψ×)k, (1.33)

where the rotation tensor coefficients are given by

R0 = 1, R1 = sin φφ

, R2 = 1 − cos φφ2

. (1.34)

The coefficients are well defined for the rotation angle that tends to zero, andin fact

limφ→0

R1 = 1, limφ→0

R2 =1

2. (1.35)

Hence, as expected,limφ→0

R = I , (1.36)

Page 9: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 9/44

THE ROTATION TENSOR 9

and b = a for φ = 0.The rotation tensor enjoys some important properties. In fact, using its

definition, equation (1.33), it is readily verified that R is an orthogonal tensor:

RR T = R T R = I . (1.37)

This could also be obtained by other means, for example by recalling that arotation is a length-preserving transformation, property (1.1). In fact, using(1.31), the length of vector b is

|b| =√b · b =

√a ·R T Ra. (1.38)

On the other hand, the length of a is

|a| =√a · a, (1.39)

and the condition |b| = |a| requires R to be orthogonal, equation (1.37).A second property of the rotation tensor is obtained by multiplication with

the rotation vector:

Rψ = ψ. (1.40)

This indicates that ψ is unaffected by the rotation, as in fact expected sincethe rotation takes place about k that is indeed parallel to ψ. This propertyis closely related to the eigen analysis of R . In fact, the eigenvalue problem

for R is written as(R − λiI )xi = 0, i = 1, 2, 3, (1.41)

where λi is the ith eigenvalue and xi its associated eigenvector. Rearranging(1.40) as

(R − I )ψ = 0, (1.42)

and comparing this expression with (1.41), we conclude that the axis of rota-tion k can be regarded as the (normalized to one) eigenvector of the rotationtensor corresponding to the eigenvalue λ = 1. Orthogonal tensors that havea positive unit eigenvalue are termed proper orthogonal tensors.

1.3.1.1 Virtual Variation and Angular Velocity We have already seen when

discussing of the direction cosine matrix that time derivatives of the orthog-onality property lead to the definition of the angular velocity. Here we shalltake a similar path but, having now derived the expression of the rotationtensor in terms of the rotation vector, we will be able to derive the expres-sion of the angular velocity as a function of the rotation vector and of itstime derivatives. This is useful in practical flight mechanics applications, forexample in the simulation of the vehicle response, or for computing the ve-hicle orientation based on measurements of the angular velocity obtained byonboard gyros.

Page 10: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 10/44

10 THREE-DIMENSIONAL ROTATIONS

Before starting, it should be noted that instead of considering derivativeswith respect to time, one could consider virtual variations. While time deriva-tives will lead to the definition of the the angular velocity, virtual variationswill lead to the definition of the virtual rotation.

To illustrate this point, let us start by taking a virtual variation of theorthogonality condition, equation (1.37). By the same argument used forthe direction cosine matrix, it is clear that this virtual variation leads to thedefinition of a skew symmetric tensor:

ψδ× = δRR T . (1.43)

The vector associated with this tensor is notedψδ = axial(

ψδ×), and it istermed virtual rotation . We anticipate, and it will become clear in the follow-

ing, that the virtual rotation can not be interpreted as the virtual variationof the rotation vector, δψ. The notation (·)δ, where the symbol of variationδ is used as a subscript, is a reminder of this important fact.

Computing δR from (1.33), one obtains

δR = δR1ψ× + R1δψ× + δR2ψ×ψ× + R2

(δψ×ψ× + ψ×δψ×

). (1.44)

Inserting into (1.43) and rearranging the terms, one gets the relationshipbetween the virtual rotation and the variation of the rotation vector as

ψδ = S δψ, (1.45)

where the following property was used for eliminating the powers of ψ× higherthan two:

(ψ×)3 + |ψ|ψ× = 0. (1.46)

Tensor S has the following expression

S =2∑

k=0

S k(ψ×)k, (1.47)

where the coefficients S k are found as

S 0 = 1, S 1 = R2 =

1

−cos φ

φ2 , S 2 =

1

φ2

1 −sin φ

φ

. (1.48)

These coefficients are well defined for the rotation angle that tends to zero:

limφ→0

S 1 =1

2, lim

φ→0S 2 =

1

6. (1.49)

Notice further that

limφ→0

S = I . (1.50)

Page 11: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 11/44

THE ROTATION TENSOR 11

Using its definition, the determinant of S can be readily computed as

det(S ) =2

φ2(1 − cos φ). (1.51)

Therefore, tensor S is singular for φ = 2kπ, k = (1, ∞). This means that thedescription of rotations based on the rotation vector has only a finite range of validity: −2π < φ < 2π. We shall come back to this problem later on whendiscussing of the parameterization of rotations.

From equation (1.45) and the expression for S that we have just derived,it can be observed that, unless φ = 0 or δψ is parallel to ψ (two-dimensionalrotation), the virtual rotation differs from the virtual variation of the rotation

vector, i.e.ψδ = δψ, (1.52)

as previously anticipated.The variation of the rotation vector can be computed as a function of the

virtual rotation by inverting equation (1.45), which gives

δψ = S −1ψδ. (1.53)

Due to the singularity of S , this relationship is not defined for φ = 2kπ,k = (1, ∞), and it will be ill conditioned in the close neighborhood of thesevalues. Setting

S −1 =

2

∑k=0

S k(ψ×)k, (1.54)

and inserting the coefficients of S given in (1.48) into the identity SS −1 = I ,one can readily find the coefficients of S −1, which write

S 0 = 1, S 1 = −1

2, S 2 =

1

φ3

φ − sin φ

det(S )

. (1.55)

Tensors R and S are closely related. The following expressions of R interms of S and S −T can be easily verified using the definitions of the twotensors:

R = SS −T = S −T S . (1.56)

Another property between the two tensors will emerge from the differential

approach presented later on.The same identical procedure that has been followed so far and that has

led to the expression between virtual rotation and variation of the rotationvector, can now be repeated by replacing variations with derivatives. This willyield the expression of the angular velocity in terms of the time rate of changeof the rotation vector. Considering R as a function of the scalar parametert ∈ R+, and differentiating the orthogonality condition (1.37), yields a skewsymmetric tensor

ω× = RR T , (1.57)

Page 12: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 12/44

12 THREE-DIMENSIONAL ROTATIONS

whose associated axial vector ω can be interpreted as the angular velocity.Computing R from (1.33) and inserting into the previous expression, theangular velocity can be written as

ω = S ψ. (1.58)

Here again, notice that the angular velocity can not in general be interpretedas the time rate of change of the rotation vector, unless the problem is two-dimensional or we are at the origin, i.e. φ = 0. The inverse relationship isthen

ψ = S −1ω, (1.59)

which however will be undefined or ill conditioned in the neighborhood of thesingular points of S .

1.3.2 Differential Approach to the Derivation of the Rotation Tensor

In the previous section, the rotation tensor was derived based solely on ge-ometric considerations. Here it will be derived using a differential approachthat highlights some other important characteristics of this tensor.

k

a b

a1

a2

b1

b2

Figure 1.3 The rotation of the sum of two vectors is equivalent to the sum of therotated vectors.

To begin with, it is necessary to establish the functional form of the relationbetween a generic vector a and its rotated vector b, equation (1.24). In theprevious section this relationship was found to be b = Ra, based on thegeometry of the problem. Here, we will derive this same result based on adifferent argument. With reference to figure 1.3, consider two vectors a1 anda2 and their sum a = a1+a2. Given the length, volume and angle preservingcharacteristics of rotations, equations (1.1-1.3), the triangle formed by vectorsa, a1 and a2 is rigidly rotated into the triangle formed by vectors b, b1 and

Page 13: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 13/44

THE ROTATION TENSOR 13

b2. This means that it is possible to rotate the sum a of vectors a1 and a2into b, or rotate a1 into b1 and a2 into b2 and then sum the rotated vectorsto yield b = b1 +b2, obtaining the same resulting vector b in both cases. Thisestablishes the fact that a rotation is a linear transformation:

Rot(a1 + a2) = Rot(a1) + Rot(a2). (1.60)

Consequently, the operator Rot(·) must have the following form

Rot(·) = R · +r, (1.61)

where R is some tensor and r some vector, both yet to be determined. How-ever, a rotation is a length-preserving operation, i.e.

|a| = |b| = |Ra + r| =√ a ·R T Ra + a ·R T r + r ·Ra+ r · r, (1.62)

a fact that leads to conclude that r = 0 and R is orthogonal, RR T = I .This establishes the fact that the rotation of vector a into vector b can beexpressed as

b = Ra, (1.63)

as previously derived by a different argument. However, the functional formof tensor R remains yet to be determined.

With the goal of determining R , consider now a scalar parameter ξ ∈ [0, 1],such that

bξ = R ξa. (1.64)

For each ξ, R ξ is a rotation, so that |bξ| = |a|. Furthermore, each rotation R ξhas the same rotation axis k. This way we have defined a family of parallelrotations, whose parameter is ξ; for increasing values of ξ, bξ is progressivelyrotated from a until the total rotation from a to b is achieved for ξ = 1, i.e.R = R ξ=1. This situation is depicted in figure 1.4.

k

ab

bxxj x=1

Figure 1.4 Family of parallel rotations, with parameter 0 ≤ ξ ≤ 1 and rotation axisk, such that bξ=0 = a, bξ=1 = b.

Tensor R ξ represents a rotation only if it is orthogonal. Hence, we musthave

R ξR T ξ = I . (1.65)

Page 14: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 14/44

14 THREE-DIMENSIONAL ROTATIONS

Differentiating this orthogonality condition with respect to the parameter ξyields

R ′ξ = ψ×R ξ, (1.66)

where the following notation was used (·)′ = d · /dξ to indicate differentiationwith respect to ξ, and where ψ is a yet unknown constant (with respect toξ) vector. Equation (1.66) can be regarded as a first order tensor ordinarydifferential equation, subjected to the initial conditions

R ξ=0 = I , (1.67)

that ensure that the rotation is null at the origin, i.e. bξ=0 = a. Using the fact

that this ordinary differential equation has constant coefficients, the solutionis readily found in the form of an exponential

R ξ = eξψ× , (1.68)

where the exponential of a tensor is defined through the following infiniteseries

eA =∞∑k=0

Ak

k!. (1.69)

Evaluating (1.68) for ξ = 1 gives

R = eψ× , (1.70)

which shows that the rotation tensor can be regarded as the exponential of the skew symmetric tensor ψ×, a property that was not immediately apparentin the geometric derivation of the tensor pursued in the previous section.

Furthermore, using the definition of the tensor exponential in terms of infinite series of powers of ψ×, it is immediate to verify that

eψ×ψ = ψ. (1.71)

This condition states that ψ is unaffected by the rotation, and hence vectorψ can be interpreted as the rotation vector, i.e. that vector about which a

rotates to go into b.Although here we have arrived to the expression of the rotation tensor from

a different point of view than in the previous section, equations (1.70) and(1.33) must clearly be identical:

R = eψ× =∞∑k=0

(ψ×)k

k!=

2∑k=0

Rk(ψ×)k. (1.72)

This is in fact the case, as it can be readily shown using property (1.46) of skew symmetric tensors to eliminate powers of ψ× higher than two in theinfinite series of the exponential.

Page 15: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 15/44

THE ROTATION TENSOR 15

1.3.2.1 Virtual Variation and Angular Velocity It is possible to derive theexpression for the angular velocity, or the virtual rotation, using the sameapproach that we used above, that is integrating the governing differentialequations. To this effect, take now a virtual variation of (1.66), that givesthe following first order tensor ordinary differential equation in the unknowntensor δR ξ:

δR ′ξ = ψ×δR ξ + δψ×R ξ. (1.73)

Since R ξ satisfies initial conditions at ξ = 0, equation (1.67), the correspond-ing virtual variations must vanish:

δR ξ=0 = 0. (1.74)

These represent the initial conditions for the tensor ordinary differential equa-tion. Integrating now (1.73) subjected to (1.74), one finds

δR ξ = eξψ×∫ ξ0

e−ζψ×δψ×R ζdζ,

= R ξ

∫ ξ0

R T ζ δψ×R ζdζ. (1.75)

Taking now a variation of the orthogonality condition (1.65), gives a secondform of the unknown tensor δR ξ, which writes

δR ξ

= ψδ×R

ξ, (1.76)

where ψδ is the virtual rotation. Eliminating δR ξ between (1.76) and (1.75),the following expression is found

ψδ× =

∫ ξ0

(R ζδψ)×dζ, (1.77)

which implies, by taking the axial of both sides of the equation,

ψδ =∫ ξ

0

R ζdζ

δψ. (1.78)

The integral on the right hand side of this expression is readily computed

using the definition of the exponential of a tensor

∫ ξ0

R ζdζ =

∫ ξ0

∞∑k=0

(ζ ψ×)k

k!dζ = ξ

∞∑k=0

(ξψ×)k

(k + 1)!, (1.79)

Finally, evaluating this expression for ξ = 1 and inserting the result into(1.78), gives ψδ in terms of the virtual variation of the rotation vector δψ,

ψδ = S δψ, (1.80)

Page 16: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 16/44

16 THREE-DIMENSIONAL ROTATIONS

where

S =∞∑k=0

(ψ×)k

(k + 1)!. (1.81)

Equation (1.79) shows that tensor S can be interpreted as the integral of the rotation tensor R , when this is expressed in terms of the rotation vectorψ, a property that was not immediately apparent in the derivations of theprevious section. Clearly, the new expression of tensor S , equation (1.81),must be identical to the one given previously in (1.47),

S =∞

∑k=0

(ψ×)k

(k + 1)!=

2

∑k=0

S k(ψ×)k, (1.82)

as it is readily shown using here again property (1.46) to eliminate powers of ψ× higher than two from the infinite series.

Replacing variations with time derivatives, the expression for the angularvelocity as a function of the time rate of change of the rotation vector is foundby exactly the same arguments:

ω = S ψ. (1.83)

1.4 RELATIONSHIP BETWEEN DIRECTION COSINE MATRIX

AND ROTATION TENSOR

Up to this point, we have analyzed the transformation of components betweentwo triads and the rotation of one vector into another. The first problem haslead to the definition of the direction cosine matrix, while the second has leadto the expression of the rotation tensor in terms of the rotation vector. Sinceany triad can always be seen as obtained by the rotation of another triad,these two seemingly different concepts must be related. This is in fact thecase, as it can be readily shown by a simple argument.

Consider the orthonormal triads of unit vectors I = (i1, i2, i3), and rotateit to bring it into triad J = ( j1, j2, j3). Using (1.31), the rotation of the unitvectors is expressed as

jk = Rik, k = 1, 2, 3. (1.84)

This relationship can be expressed in terms of components measured in I : jI k = R I iI k , k = 1, 2, 3. (1.85)

Comparing now (1.85) with (1.9), leads to the conclusion that

[Λ] = R I , (1.86)

and hence the elements of the direction cosine matrix correspond to the com-ponents of the rotation tensor measured in I .

Page 17: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 17/44

CHANGE OF BASIS 17

1.5 CHANGE OF BASIS

In practical applications, it is often necessary to express the components of vectors and second order tensors in different systems of axes. For example, inflight mechanics it is common to have the necessity of transferring quantitiesbetween inertial and body axes, or between different sets of body axes. Thisis easily accomplished using direction cosine matrices or, which is exactly thesame as just shown, using the components of rotation tensors.

i 1 i 2

j 2

j 3

i 3

R

a

b

j 1

Figure 1.5 Rotation of triad I = (i1, i2, i3) into triad J = ( j1, j2, j3) by R , and of vector a into b by the same rotation.

Consider again triads I and J , where the latter triad was obtained from theformer through a rotation ψ corresponding to a rotation tensor R . Considerfurther a vector a, and rotate it by R to bring it into b:

b = Ra, (1.87)

as shown in figure 1.5. In components measured in I , this vector rotation isexpressed as

bI = R I aI . (1.88)

Clearly, the components of a in I , aI , and of b in J , bJ , are identical,

aI = bJ , (1.89)

since both I and a underwent the same identical rotation R to bring theminto J and b, respectively. Consequently, inserting (1.89) into (1.88), one

Page 18: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 18/44

18 THREE-DIMENSIONAL ROTATIONS

finds

bI = R I bJ . (1.90)

This relationship expresses the transformation of the components of vector bchanging basis from J to I . Recalling the orthogonality of R , R −1 = R T ,the transformation of components from I to J writes

bJ = R I T bI . (1.91)

Recalling now the unit eigenvalue property, Rψ = ψ, and setting b = ψ

in (1.91), one has

ψJ = R I T ψI = ψI , (1.92)

which expresses the fact that ψ has identical components in both systems of axes I and J . This was expected, being ψ unaffected by the rotation. SinceR is a sole function of ψ, R = R (ψ), as shown by equations (1.33) and (1.70),it is concluded that R also has identical components in both bases I and J :

R I = R J . (1.93)

Example 1.5.1 Consider the spinning aircraft depicted in figure 1.6. FrameF C,B with origin in C and triad B = (b1, b2, b3) is rigidly attached to thevehicle and moves with it, while the fixed inertial frame is

F O,I , with origin

in O and triad I = (i1, i2, i3). The orientation of B with respect to I ischaracterized by a rotation vector with components in I given by

ψI = (0, θ, 0)T , θ = 30 deg.

If the components of the angular velocity ω of the vehicle in I are

ωI = Ω(0, sin γ, cos γ )T , Ω = 45 deg/sec, γ = 15 deg,

what are the components of ω in B?

Solution. The components of the unit vectors bk, k = 1, 2, 3, in the I triadare

b1 = (cos θ, 0, − sin θ)T , b2 = (0, 1, 0)T , b3 = (sin θ, 0, cos θ)T .

Using equation (1.7), the direction cosine matrix is readily obtained as

R I I→B =

cos θ 0 sin θ

0 1 0− sin θ 0 cos θ

,

Page 19: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 19/44

CHANGE OF BASIS 19

i 1 i

2 , b

2

i 3

b 1

b 3

q

q

w

O,C

Figure 1.6 Spinning aircraft. The fixed inertial frame is F O,I , with origin in O andtriad I = (i1, i2, i3). The body attached frame is F C,B, with origin in C and triadB = (b1, b2, b3).

where R I→B denotes the rotation that brings

I into

B. Using (1.91), the

components of ω in B are

ωB = R I T I→BωI =

cos θ 0 − sin θ

0 1 0sin θ 0 cos θ

Ω

0

sin γ cos γ

,

= Ω

− sin θ cos γ

sin γ cos θ cos γ

.

Denoting the components of ω in B as ωB = ( p,q,r)T , the result is found as

p = −21.7333 deg/sec, q = 11.6569 deg/sec, r = 37.6432 deg/sec.

The rules of transformation of the components of tensors are derived next.Consider a vector c that is rotated into d through a rotation characterized bythe rotation tensor T ,

d = Tc. (1.94)

This vector rotation can be expressed in terms of components measured in I dI = T I cI , (1.95)

or in J dJ = T J cJ . (1.96)

Page 20: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 20/44

20 THREE-DIMENSIONAL ROTATIONS

Using (1.91), the components of c and d in J are

cJ = R I T cI , dJ = R I T dI . (1.97)

Inserting these expressions into (1.96) yields

R I T dI = T J R I T cI , (1.98)

and therefore, multiplying from the left by R I ,

dI = R I T J R I T cI = T I cI , (1.99)

that givesT I = R I T J R I T . (1.100)

This relationship expresses the transformation of the components of tensorT changing basis from J to I . The transformation from components mea-sured in I to components expressed in J is readily obtained by recalling theorthogonality of R as

T J = R I T T I R I . (1.101)

Example 1.5.2 With reference to the spinning aircraft of example 1.5.1, con-sider a frame F R,R with origin at point R and triad R = (r1, r2,r3), that isrigidly attached to the rudder. Triad R is parallel to triad B in the undeflectedrudder position, and the rudder hinge is parallel to r3.

i 1

i 2 , b

2

i 3

b 1

b 3

r 2

r 1

r 3

O,C

R

Figure 1.7 Rudder attached frame F R,R, with origin in R and triad R = (r1, r2, r3).

Page 21: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 21/44

COMPOSITION OF ROTATIONS 21

After the pitching rotation R I→B of example 1.5.1, the rudder of the air-craft is deflected of an angle δr = −25 deg about its hinge r3, as shownin figure 1.7. Noting as T the rotation tensor corresponding to the rudderdeflection, what are the components of T in I ?Solution. The components of T measured in B are easily obtained as

T B =

cos δr − sin δr 0

sin δr cos δr 00 0 1

.

Using (1.100), the components of T in I are computed as

T I = R I I→BT BR I T I→B,

=

cos θ 0 sin θ

0 1 0− sin θ 0 cos θ

cos δr − sin δr 0

sin δr cos δr 00 0 1

cos θ 0 − sin θ

0 1 0sin θ 0 cos θ

,

=

cos2 θ cos δr + sin2 θ − cos θ sin δr sin θ cos θ(1 − cos δr)

cos θ sin δr cos δr − sin θ sin δrsin θ cos θ(1 − cos δr) sin θ sin δr sin2 θ cos δr + cos2 θ

,

=

0.9297 0.3660 0.0406

−0.3660 0.9063 0.21130.0406 −0.2113 0.9766

.

Alternatively, we could also note that

rI 3 = bI 3 = R I I→BiI 3 ,

where iI 3 = (0, 0, 1)T . Hence, rI 3 is just the third column of matrix R I I→B .Then, the components of T in I are simply the components of the rotationtensor, equation (1.33), computed from the rotation vector ψ = δrr3, wherethe components of r3 are given above.

1.6 COMPOSITION OF ROTATIONS

We have previously anticipated that rotations do not commute and that ro-tations vectors can not be added together. We have now the tools for il-lustrating these points. Consider a rotation denoted by a rotation vectorψA = φAkA and rotation tensor R A, that brings triad I = (i1, i2, i3) intotriad J = ( j1, j2, j3). This first rotation is followed by a second rotation,characterized by a rotation vector ψB = φBkB and rotation tensor R B, thatbrings J into K = (k1,k2,k3).

We have

jk = R Aik, kk = R B jk, k = 1, 2, 3, (1.102)

Page 22: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 22/44

22 THREE-DIMENSIONAL ROTATIONS

i 1 i 2

j 3

i 3

j 1

j 2

k 1

k 2

k 3

R A

R B

Figure 1.8 Rotation of triad I into triad J , followed by rotation of J into K.

and hence, eliminating the intermediate configuration J ,

kk = R BR Aik, k = 1, 2, 3. (1.103)

The total rotation from I to K is given by

R = R BR A. (1.104)

This product of rotations tensors is called composition of rotations. Thisformula can be used recursively to compose as many successive rotations asnecessary. The word “composition” used when combining rotations, stressesthe fact that successive rotations can not be obtained by simply adding theircorresponding rotations vectors. In fact, if ψ = φk is the rotation vectorcorresponding to the composed rotation R , then

ψ = ψA + ψB. (1.105)

This fact can be shown by a self-evident geometric example, as the one of figure 1.9 that considers successive rotations with orthogonal axes.

Expressing the composition of rotations (1.104) using the definition of therotation tensor, equation (1.33), it can be shown that the relationship betweenψ = φk, ψA = φAkA and ψB = φBkB is considerably more complicated than

Page 23: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 23/44

COMPOSITION OF ROTATIONS 23

p k A

p k B

p k A+p k

B

Figure 1.9 At left, rotation πkA, followed by rotation πkB , kB orthogonal to kA. Atright, rotation about π(kA + kB).

an addition, and it is in fact as follows:

cosφ

2= cos

φA

2cos

φB

2− sin

φA

2sin

φB

2kA · kB, (1.106)

sinφ

2k = sin

φA

2cos

φB

2kA + cos

φA

2sin

φB

2kB

+ sinφA

2sin

φB

2kB × kA. (1.107)

Using the first equation one can compute the rotation angle φ, while thesecond equation can be used to determine the rotation axis k.

Using again the definition of the rotation tensor, it is readily verified that

R BR A = R AR B, (1.108)

and hence rotations do not commute. Furthermore, we note that the orderof the matrix products that appear in the composition of successive rotationsdepends on the bases in which the components of the various rotations tensorsare measured. In fact, the transformation from the I to the K triad, equation(1.103), can be expressed in terms of components in the I , J or K bases:

k

I

k = R

I

BR

I

Ai

I

k , (1.109)kJ k = R J BR

J A iJ k , (1.110)

kKk = R KBR KAiKk . (1.111)

However, R B can, for example, be measured in the J triad rather than the I triad. This is achieved using the transformation of tensor components,equation (1.100), which gives

R I B = R I AR J BR

I T A . (1.112)

Page 24: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 24/44

24 THREE-DIMENSIONAL ROTATIONS

Inserting this expression for R I B into (1.109), gives now

kI k = R I BR I AiI k = R I AR

J BR

I T A R I Ai

I k = R I AR

J B iI k . (1.113)

Hence, we have found that

R I = R I BR I A = R I AR

J B , (1.114)

which shows that the order of multiplication of the tensor components indeedis affected by the bases used for measuring them.

i 1

i 2 , b

2

i 3

b 1

b 3

i 1

i 3

i 2

r 2

r 3

Figure 1.10 At left, rotation of triad R by T . At right, subsequent rotation by R I→B.

Example 1.6.1 With reference to example 1.5.2, the components of the rud-der triad R in I are obtained as

[Λ]rudder =rI 1rI 2 rI 3

= T I R I I→B .

This corresponds to having first rotated the vehicle using R I→B, and thenhaving deflected the rudder using the rotation of components T I .

Now, try inverting the order of the composition of rotations, computingR I I→BT

I . After rotation T , the aircraft is as in figure 1.10, at left, where wehave left the lower hinge point of the rudder fixed. After rotation R I→B, theaircraft is as in figure 1.10, at right. Clearly, rotations do not commute!

Example 1.6.2 Consider again the spinning aircraft of example 1.5.1, andapply now a rotation of B into B0, obtained through a rotation vector

ψB = (ϕ, 0, 0)T , ϕ = 25 deg.

Page 25: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 25/44

THE INVERSE PROBLEM 25

What are the components of ω in B0?

Solution. The rotation from B to B0 can be expressed in components mea-sured in B as

R BB→B0 =

1 0 0

0 cos ϕ − sin ϕ0 sin ϕ cos ϕ

.

Hence, using the change of basis rule, equation (1.91), and the compositionof rotations rule, equation (1.113), we find

ωB0 = R BT B→B0R I T I→Bω

I ,

= 1 0 0

0 cos ϕ sin ϕ0 − sin ϕ cos ϕ

cos θ 0−

sin θ0 1 0

sin θ 0 cos θ

Ω 0

sin γ cos γ

,

= Ω

− sin θ cos γ

cos ϕ sin γ + cos θ sin ϕ cos γ − sin ϕ sin γ + cos θ cos ϕ cos γ

,

=

−21.7333

26.464429.1942

deg/sec.

1.7 THE INVERSE PROBLEM

The term inverse problem indicates the process of obtaining the rotation vec-tor ψ based on the knowledge of the rotation tensor R . We use the followingnotation to indicate this operation:

ψ = R−1(R ). (1.115)

Recalling that the rotation tensor, equation (1.32), writes

R = I + sin φk× + (1 − cos φ)k×k×, (1.116)

and that the rotation vector is ψ = φk, the procedure for computing ψ fromR is as follows:

1. Noting that trace(k×) = 0, and that trace(k×k×) = −2 when k is aunit vector, we have

trace(R ) = 1 + 2 cos φ. (1.117)

Hence, the cosine of the rotation angle can be computed as

cos φ =1

2(trace(R ) − 1). (1.118)

Page 26: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 26/44

26 THREE-DIMENSIONAL ROTATIONS

2. Next, it is necessary to distinguish between the case cos φ > 0 and thecase cos φ ≤ 0:

(a) If cos φ > 0, we first compute

1

2(R −R T ) = sin φk× = z×. (1.119)

The sine of the rotation angle is then readily obtained as the lengthof vector z:

sin φ =√z · z. (1.120)

The angle of rotation follows immediately as

φ = atan2(sin φ, cos φ), (1.121)

where atan2(·, ·) is the four-quadrant arc-tangent operation. Fi-nally, the rotation vector is obtained as

ψ =φ

sin φz. (1.122)

If φ is small, say φ < 0.01, the sine of the angle should be replacedwith its Taylor series expansion at the origin, which yields thefollowing alternative expression for ψ:

ψ = 1

1 − 1

6φ2

1 − 1

20φ2 z. (1.123)

(b) If on the other hand cosφ ≤ 0, we begin by computing

1

1 − cos φ

1

2

(R + R T

)− cos φ I

=

I + k×k× = kkT . (1.124)

Next, vector k is extracted from kkT noticing that

kkT =

k1kk2k

k3k

. (1.125)

This is best accomplished by selecting the largest component of k,i.e.

k2imax = max(

diag(kkT

)), imax = 1, 2 or 3, (1.126)

k =1

kimaxcolimax

(kkT

), (1.127)

Page 27: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 27/44

PARAMETERIZATION OF ROTATIONS 27

where coli(·) extracts the ith column from a matrix. Noticing thenthat trace(k×k×k×) = 0, we compute the sine of the rotation angleas

− 1

2trace(k×R ) =

− 1

2trace

(k× + sin φk×k× + (1 − cos φ)k×k×k×

)=

sin φ, (1.128)

and obtain the rotation angle from sin φ and cos φ as in the previouscase:

φ = atan2(sin φ, cos φ). (1.129)

Finally, the rotation vector is computed as

ψ = φk. (1.130)

Example 1.7.1 With reference to example 1.6.2, compute the rotation vectorψ0 that corresponds to the rotation R 0 from I to B0.

Solution. The components of R 0 in I are

R I 0 = R I I→BR BB→B0

=

cos θ sin θ sin ϕ sin θ cos ϕ0 cos ϕ − sin ϕ

−sin θ cos θ sin ϕ cos θ cos ϕ

.

Inserting the values θ = 30 deg, ϕ = 25 deg, and applying the procedure justdescribed, we obtain

ψI 0 = ψB0 = (0.4263, 0.5152, −0.1142)T ,

and φ0 = |ψ0| = 38.8666 deg. Note that the components of ψ0 do notcorrespond to the angles of the two successive rotations I → B and B → B0!

1.8 PARAMETERIZATION OF ROTATIONS

In the previous sections, the rotation tensor was derived in terms of the rota-

tion vector ψ. The three components of this vector were used to parameterizethe rotation, according to Euler’s Rotation Theorem. However, rotations canbe expressed in terms of parameters other than the rotation vector. The choiceof a parameterization is usually made by considering the characteristics of aspecific application, for example for avoiding singularities or for reducing thecomputational cost of certain operations. More often than not, the choiceis also based on personal taste. Two main families of parameterizations ex-ist: vectorial and non-vectorial. In this section, we shall illustrate the mainfeatures of both families.

Page 28: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 28/44

28 THREE-DIMENSIONAL ROTATIONS

However, before studying the possible forms of parameterizations, it shouldbe mentioned that one could also avoid the use of parameterizations alto-gether, and work directly with the components of the direction cosine matrix.Using this approach, the components of [Λ] play the role of nine parametersthat obey the ordinary differential matrix equation (1.21), here reported forconvenience,

˙[Λ] = ωI ×[Λ]. (1.131)

These nine parameters are subjected to the orthogonality constraints

[Λ][Λ]T = [I ]. (1.132)

Notice that, due to the symmetry of (1.132), only six of these constraintconditions are independent. Taking the upper triangle of this matrix equation,the independent constraints write

3∑n=1

ΛknΛln = δkl, k = (1, 3), l = (k, 3), (1.133)

leaving a total of three degrees of freedom, in accordance with Euler’s Theoremof Rotations.

The increase in the number of unknowns and equations, together withthe need of introducing Lagrange multipliers to enforce the satisfaction of the constraints (1.133), makes this approach not commonly used in practicalapplications. On the other hand, a possible advantage of this method is that

it is free from singularities for arbitrarily large rotations, while methods basedon a minimal set of parameters have only a finite range of validity, as we havealready seen for the rotation vector and as it will be illustrated in the followingfor other parameterizations.

Let us start then by considering the case of vectorial parameterizations.

1.8.1 Vectorial Parameterizations

Vectorial descriptions of rotations use as parameters the components of vectorsthat are parallel to the rotation vector. The general form of such vectors is

p = f k, (1.134)

where p is termed the generalized rotation vector [2, 3], f = f (φ) is some yetunspecified function of the angle of rotation φ, termed generating function,and k is the axis of rotation. A part for an obvious requirement on regularity,the generating function f must obey certain conditions. First, we must have

f (0) = 0, (1.135)

which means that the magnitude of the generalized rotation vector must benull for a null rotation angle φ. This ensures that if b = Ra and φ = 0, then

Page 29: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 29/44

PARAMETERIZATION OF ROTATIONS 29

b = a. Taking now the time derivative of p in the origin

˙ p(0) = f ,φ(0) φk + f (0)k, (1.136)

we recognize that the generating function f must be such that

f ,φ(0) = 0, (1.137)

in order for ˙ p(0) to be different from zero when φ is different from zero.The following notation was used to indicate derivatives with respect to φ,(·),φ = d · /dφ. Some common parameterizations are characterized by havingf ,φ(0) = 1 which, although not necessary, ensures that the behavior of the

vectorial parameters matches the one of the rotation vector in the limitingcase of vanishing rotation, i.e.

limφ→0

p = limφ→0

ψ. (1.138)

In fact, expanding in Taylor series at the origin, we have

f = f (0) + f ,φ(0)φ +1

2!f ,φφ(0)φ2 + . . . , (1.139)

whose leading term is φ if f ,φ(0) = 1.Recalling the expression for the rotation vector, ψ = φk, the relationship

between p and ψ is readily found as

p = f φψ. (1.140)

Having established the expressions of the rotation and angular velocity tensorsin terms of ψ, it is now a simple matter to derive the corresponding expressionsin terms of p using (1.140). Starting with the rotation tensor, equation (1.33),we get

R =2∑

k=0

R pk( p×)k, (1.141)

where

R p0 = 1, R p

1 =sin φ

f , R p

2 =1 − cos φ

f 2. (1.142)

It is readily verified that, thanks to condition (1.137), the limits of R p1 and

R p2 for φ → 0 are well defined.

To express the angular velocity ω in terms of the generalized rotation vector p and its time rates ˙ p, one can proceed as follows. First, note that

ψ · kk = φk = (I + k×k×)ψ, (1.143)

and hence

ψ =φ

φψ − 1

φ2ψ×ψ×ψ. (1.144)

Page 30: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 30/44

30 THREE-DIMENSIONAL ROTATIONS

Inserting into the expression of the angular velocity, equation (1.47), we get

ω =2∑

k=0

S k(ψ×)kψ =φ

φψ + S 1ψ×ψ +

S 2 − 1

φ2

ψ×ψ×ψ. (1.145)

Next, we seek coefficients S pk , k = 0, 1, 2, such that

ω = S p ˙ p =

2∑k=0

S pk( p×)k ˙ p. (1.146)

To determine these coefficients, take the time derivative of p

˙ p =f φ − f φ

φ2ψ +

f

φψ, (1.147)

replace into (1.146) and, using (1.144), write

ω = S p0f

φψ + S p1

f 2

φψ×ψ +

f

φ3

S p2f 2 − S p0

ψ×ψ×ψ. (1.148)

Matching now the various terms in (1.145) and (1.148), we get

S p0 =1

f ,φ, S p1 = R p

2 =1 − cos φ

f 2, S p2 =

1

f 2

1

f ,φ− sin φ

f

. (1.149)

Here again it is readily verified that the limits of S pk , k = 0, 1, 2, are all welldefined for φ → 0, based on the sole condition f ,φ(0) = 0. The determinantof S p is

det(S p) =2(1 − cos φ)

f 2f ,φ. (1.150)

The inverse of S p is easily computed as

S p−1

=2∑

k=0

S pk( p×)k, (1.151)

whose coefficients are

S p0 = f ,φ, S p1 = −12

, S p2 = 1f 3f ,φ

1

f f 2,φ− sin φ

det(S p)

. (1.152)

The range of validity in terms of magnitude of the rotation angle φ for eachspecific choice of the generating function f can be determined by verifying thefollowing conditions:

• f = ∞ in equation (1.134);

• R pk = ∞, k = 1, 2, in the coefficient expressions (1.142);

Page 31: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 31/44

PARAMETERIZATION OF ROTATIONS 31

Table 1.1 Commonly used vectorial parameterizations of three-dimensional rotations.

Name f Range

Finite rotation vector, or exponential mapor natural parameters

φ −2π < φ < 2π

Linear parameters sin φ −π < φ < πEuler-Rodrigues, or reduced Euler param-eters

2 sin(φ/2) −π < φ < π

Cayley-Gibbs-Rodrigues parameters 2 tan(φ/2) −π < φ < πWiener-Milenkovich, or conformal rota-tion

4tan(φ/4) −2π < φ < 2π

• S pk = ∞, k = 0, 1, 2, in the coefficient expressions (1.149);

• S pk = 0, k = 0, 1, in equation (1.150).

The choices for the generating function f that are well established in theliterature are given in table 1.1. Other choices are possible, such as for example

f = k sinφ

k, k = (1, ∞), (1.153)

or

f = k tanφ

k, k = (1, ∞). (1.154)

In any case, the maximum range that is achievable by a generalized rotation

vector of the form (1.134) is always limited between −2π and 2π at the most.This means that no vectorial parameterization, or more in general, no param-eterization based on only three parameters, can be global, i.e. well defined forany value of the rotation angle.

Example 1.8.1 With reference to the spinning aircraft of example 1.6.2, con-sider that the vehicle angular velocity ω has a processing motion about i3 withangular velocity µ = −270 deg/sec, and that at t = 0, ω has the value givenin example 1.5.1, i.e.

ωI (0) = ωI 0 = Ω(0, sin γ, cos γ )T , Ω = 45 deg/sec, γ = 15 deg.

Compute the orientation of the aircraft in terms of the components of itsrotation tensor in the fixed I basis for t ∈ [0, T ], T = 20 sec, using the Euler-Rodrigues rotation parameters. At time t = 0, the orientation of the aircraftis given by triad B0 as computed in example 1.6.2.

Solution. The components of the Euler-Rodrigues rotation vector in I canbe computed integrating the ordinary differential equations

˙ pI = S pI −1

ωI ,

Page 32: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 32/44

32 THREE-DIMENSIONAL ROTATIONS

for t ∈ [0, T ]. The components of the vehicle angular velocity are computedas

ωI = R I t ωI 0 ,

where R t is the rotation tensor that corresponds to the precession rotationvector ψt evaluated at the generic time instant t,

ψt = µti3.

The coefficients of S p−1

for the Euler-Rodrigues parameterization are foundby setting f = 2sin(φ/2), f ,φ = cos(φ/2) in (1.151), which gives

S p0 = cosφ

2=

1 − 1

4p · p, S p1 = −1

2, S p2 = 0.

Notice the particularly simple expression of S p−1

in this case, due to theabsence of the p× p× term.

Due to the finite range of vectorial parameterizations, which is in partic-ular −π < φ < π in the case of the Euler-Rodrigues parameters, we use anincremental approach. To illustrate the procedure, consider a partition of thetime range

0 ≡ t0 < t1 < t2 < .. . < tn−1 < tn ≡ T,

composed of n ≥ 1 intervals T i

= [ti, ti+1] of size hi

= ti+1 − ti, i = (0, n − 1).On each interval, the ordinary differential problem is solved with null initialconditions using a numerical method. In this example we have used the vari-able order explicit Runge-Kutta scheme implemented in the odeset Matlab[1] routines. The solution at the end of the generic ith interval, time ti+1, islabelled pI incr,i+1. This solution represents the incremental rotation from time

ti to time ti+1. By selecting the size hi of the increments, the incrementalrotation can be made suitably small and hence within the parameterizationrange. In particular one could choose hi to coincide with the time step sizeused by the time integration scheme, which will be small for accuracy and/orstability requirements. For this example, we have simply set hi = h = 1 sec,which ensures incremental rotations of about 150 deg, and hence within the

validity range.Next, the total rotation from t0 is updated using the composition of rota-tions, equation (1.104), which in this case writes in terms of components inthe fixed basis

R I i+1 = R I incr,i+1R I i ,

where R I incr,i+1 are the components of the incremental rotation tensor that

corresponds to pI incr,i+1. Using the Euler-Rodrigues parameters, this incre-mental rotation tensor is computed in terms of the coefficients R p

k of equation

Page 33: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 33/44

PARAMETERIZATION OF ROTATIONS 33

(1.141), which are

R p0 = 1, R p

1 = cosφ

2, R p

2 =1

2.

The initial rotation tensor at time t = 0, R 0, is set equal to the value of example 1.7.1, which corresponds to the rotation from triad I to triad B0.

0 2 4 6 8 10 12 14 16 18 20−3

−2

−1

0

1

2

3

Time [sec]

ψ I [ r a d ]

Figure 1.11 Time history plot of the components of the total rotation vector from I ,measured in I , ψI .

From each rotation tensor R i, the corresponding rotation vector ψi can becomputed using the inverse problem:

ψi = R−1(R i).

The resulting components ψI i of the total rotation vector measured from I are plotted versus time in figure 1.11. Notice the switching of the rotationvector components due to the solution of the inverse problem, every time thetotal rotation magnitude goes past the value of π.

1.8.2 Non-Vectorial Parameterizations

1.8.2.1 Euler Parameters or Quaternions Euler parameters or quaternions areredundant parameters defined as

q0 = cosφ

2, q = sin

φ

2k, (1.155)

where q0 is the scalar component of the quaternion, while q is the vectorialcomponent. The vectorial component q can be regarded as a special case of

Page 34: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 34/44

34 THREE-DIMENSIONAL ROTATIONS

the generalized vectorial parameterization discussed in the previous section,with generating function f = sin φ/2. The scalar and vector components arerelated by a constraint:

q20 + q · q = 1. (1.156)

A quaternion that satisfies this constraint is called a unit quaternion and canbe used for the parameterization of rotations.

The complication of working with four parameters and a constraint equa-tion, instead of three free parameters as with the vectorial parameterizationsdiscussed above, can be offset in certain applications by the fact that thisparameterization is singularity free, in the sense that it is well defined for

−∞< φ <

∞.

It is customary to use a four-dimensional notation when working withquaternions, since this allows for a compact expression of most relations. Inparticular, the following four-dimensional array is defined by stacking thescalar and vector components of the quaternion:

q = (q0,qT )T . (1.157)

The unit quaternion condition becomes in this case

qT q = 1. (1.158)

The developments of the generalized vectorial parameterization discussedin the previous section can be readily used for the case of the Euler parameters.

The coefficients R

p

1, R

p

2 of the rotation tensor, equation (1.141), are found bysimply setting f = sin φ/2 into (1.142), obtaining

R p1 = 2q0, R p

2 = 2, (1.159)

so that the rotation tensor has the following simple form

R = I + 2qoq× + 2q×q×. (1.160)

The four-dimensional rotation operator associated with the rotation tensor isdefined as

R =

[1 0

T

0 R

]. (1.161)

Notice that here again

R q = q, (1.162)

which shows that q is the (normalized to one) eigenvalue of R that correspondsto the unitary eigenvalue, in close analogy with the generalized vectorial pa-rameterizations.

Similarly, the coefficients S pk , k = 0, 1, 2, of the angular velocity tensor,equation (1.146), are

S p0 =2

q0, S p1 = 2, S p2 =

2

q0, (1.163)

Page 35: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 35/44

PARAMETERIZATION OF ROTATIONS 35

so that the angular velocity can be written as

ω = 2

q0+ 2q× +

2

q0q×q×

q. (1.164)

This expression can be given a more convenient form. To this purpose, notethat

q · kk = (I + k×k×)q, (1.165)

and, differentiating the unit quaternion constraint, equation (1.156), that

q · q = −q0q0. (1.166)

Inserting into (1.165), we get

q×q×q = −q0q0q − (1 − q0)q. (1.167)

Substituting into (1.164), we find

ω = 2(

q0q − qq0 + q×q)

. (1.168)

Next, a scalar angular velocity is defined as the time derivative of the unitquaternion constraint:

ω0 = 2(

q0q0 + q · q). (1.169)

This quantity is clearly zero for a unit quaternion. Using even in this casea four-dimensional notation, the scalar and vectorial parts of the angularvelocity are stacked in a single array:

ω = (ω0,ωT )T . (1.170)

This way equations (1.168) and (1.169) can be written in compact form as

ω = S ˙q, (1.171)

which closely resembles the analogous expression of the angular velocity foundfor the vectorial parameterizations, and where matrix S is defined as

S = 2[ q0 qT

−q q0I + q×]

. (1.172)

Note that for a unit quaternion, we have

det(S ) = 16, (1.173)

so that the inverse transformation ˙q = S −1ω is singularity free. Furthermore,we have

S S T = S T S = 4I , (1.174)

Page 36: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 36/44

36 THREE-DIMENSIONAL ROTATIONS

and therefore the inverse of S is readily computed as

S −1 =1

2

[q0 −qT q q0I − q×

]. (1.175)

Noting that f , R , S and S −1 are well defined for all values of φ, we concludethat the Euler parameterization is singularity free for −∞ < φ < ∞. For thisreason, it is termed a global parameterization.

The inverse problem for quaternions amounts to computing the quaternionq given the rotation vector R :

q = R−1q (R ). (1.176)

The problem can be solved by noticing that

q20 =1

4

(trace(R ) + 1

), (1.177)

and

q0q =1

2axial(R ). (1.178)

Furthermore, we also note that

qqT =1

4

(1 − trace(R )

)I + R + R T

. (1.179)

Hence, in order to derive q from R , one can first compute the matrix

1

4

[trace(R ) + 1 2 axial(R )T

2 axial(R ) (1 − traceR )I + R + R T

]= qqT , (1.180)

and then extract q from qqT as

q2imax = max(diag(qqT )), imax = 1, 2, 3 or 4, (1.181)

q =1

qimaxcolimax

(qqT

). (1.182)

1.8.2.2 Euler Angles Finite rotations can be described through a sequenceof three planar rotations about three different axes. This is yet another conse-

quence of Euler’s Theorem of Rotations. In this case, the angles of the threeplanar rotations will play the role of the rotation parameters.

To describe the Euler angles, let us start by defining a planar rotation . Letus consider a rotation ψ = φk, that brings triad I = (i1, i2, i3) into triadJ = ( j1, j2, j3),

jk = Rik, k = 1, 2, 3, (1.183)

or, in components expressed in I jI k = R I iI k , k = 1, 2, 3. (1.184)

Page 37: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 37/44

PARAMETERIZATION OF ROTATIONS 37

If k = il, l = 1, 2 or 3, which means that the rotation vector is parallel to oneof the unit base vectors of I , than R is a planar rotation with respect to I .The components in I of the three possible planar rotations are, as shown infigure 1.12,

R I 1 =

1 0 0

0 cos φ1 − sin φ1

0 sin φ1 cos φ1

, (1.185)

R I 2 =

cos φ2 0 sin φ2

0 1 0− sin φ2 0 cos φ2

, (1.186)

and

R I 3 =

cos φ3 − sin φ3 0

sin φ3 cos φ3 00 0 1

. (1.187)

i 1 i 2

i 3

i 3

i 1

i 2

j 1

j 2

j 3

j 1

j 2

j1

j 2

j3

Figure 1.12 The three possible planar rotations about i1 (left), i2 (center), and i3(right).

Let us now consider three successive planar rotations:

A. Rotation R A is characterized by a rotation vector ψA = φAiA, A = 1, 2or 3, and brings triad I = (i1, i2, i3) into triad J = ( j1, j2, j3), jk =R Aik, k = 1, 2, 3.

B. RotationR

B is characterized by a rotation vectorψB = φB

jB, B = 1, 2or 3, B = A, and brings triad J into triad K = (k1,k2,k3), kk = R B jk,

k = 1, 2, 3.

C. Finally, rotation R C is characterized by a rotation vector ψC = φC kC ,C = 1, 2 or 3, C = B, and brings triad K into triad L = (l1, l2, l3),lk = R C kk, k = 1, 2, 3.

In order to avoid ambiguities, the range of the various rotations is customarilylimited between −π and π, and hence −π ≤ φA, φB, φC ≤ π, unless this

Page 38: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 38/44

38 THREE-DIMENSIONAL ROTATIONS

condition leads to crossing a singular point in the parameterization. We shallcome back to this problem shortly.

The total rotation from I to L can be expressed by eliminating the inter-mediate configurations as

lk = R ABC ik, k = 1, 2, 3, (1.188)

with

R ABC = R C R BR A. (1.189)

Expressed in I , the components of the total rotation tensor are

R I ABC = R I C R I BR I A. (1.190)

Recalling the transformation of components of a tensor due to a change of basis, equation (1.100), we have

R I B = R I AR J BR

I T A , R J C = R J BR

KC R

J T B , R I C = R I AR

J C R

I T A . (1.191)

Inserting in (1.190), we obtain the following composed rotation

R I ABC = R I AR J BR

KC . (1.192)

All three matrices on the right hand side of this expression represent thecomponents of a planar rotation. The angles φA, φB and φC are called the

Euler angles, and the sequence ABC is called the Euler sequence. Since thepossible rotations are

A,B,C = 1, 2 or 3, A = B, B = C, (1.193)

there are twelve possible Euler sequences and twelve associated triples of Eulerangles.

In order to compute the components of the angular velocity vector in termsof the Euler angles, we differentiate (1.192) with respect to time, to yield

R I ABC = R I AR J BR

KC + R I AR

J BR

KC + R I AR

J BR

KC . (1.194)

Next, using the orthogonality of the rotation tensors, we introduce the angular

velocities of the planar rotations:

R I A = ωI J /I ×R I A, R J B = ωJ K/J ×R J B , R KC = ωKL/K ×R KC , (1.195)

where we recall that the notation ωP/Q indicates the angular velocity of triadP with respect to triad Q. Inserting into (1.194) and multiplying from theright by R I T ABC we have

R I ABC R I T ABC =

(ωI J /I

+(R I Aω

J K/J

+(R I AR

J Bω

KL/K

. (1.196)

Page 39: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 39/44

PARAMETERIZATION OF ROTATIONS 39

Introducing the angular velocity ωL/I of triad L with respect to triad I ,

R ABC R T ABC =

(ωL/I

, (1.197)

we can compute its expression as a function of the angular velocities of thesingle planar rotations:

ωI L/I = ωI J /I + R I AωJ K/J + R I AR

J Bω

KL/K. (1.198)

Notice that ωL/I is an intrinsic property of the motion of triad L with respectto triad I , and hence does not depend on the Euler sequence, and this isreflected in the notation.

In the mechanics of flight, the most commonly used sequence is ABC = 321.The corresponding angles are indicated as φ3 = ψ, termed heading , φ2 = θ,termed pitch , and φ1 = ϕ, termed bank . The 321 Euler sequence is illustratedin figure 1.13.

Using (1.192), the components of the rotation tensor for this sequence arereadily computed as

R I 321 = R I 3 (ψ)R J 2 (θ)R K1 (ϕ),

=

c ψ c θ c ψ s θ s ϕ − s ψ c ϕ c ψ s θ c ϕ + s ψ s ϕ

s ψ c θ s ψ s θ s ϕ + c ψ c ϕ s ψ s θ c ϕ − c ψ s ϕ− s θ c θ s ϕ c θ c ϕ

, (1.199)

where here s(

·) = sin(

·) and c(

·) = cos(

·).

The components of the angular velocity in the I triad for the 321 sequenceare, using (1.198),

ωI L/I = ωI J /I + R I 3 (ψ)ωJ K/J + R I 3 (ψ)R J 2 (θ)ωKL/K, (1.200)

where

ωI J /I = (0, 0, ψ)T , ωJ K/J = (0, θ, 0)T , ωKL/K = (ϕ, 0, 0)T . (1.201)

This givesωI L/I = S I 321e321, (1.202)

where e321 = (ϕ,θ,ψ)T is a column vector made with the three Euler angles,and

S I 321 = I + R I 3 (ψ)(I + R J 2 (θ)),

=

cos ψ cos θ − sin ψ 0

sin ψ cos θ cos ψ 0− sin θ 0 1

. (1.203)

The components of the angular velocity in the L triad are defined as

ωLL/I = ( p,q,r)T , (1.204)

Page 40: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 40/44

40 THREE-DIMENSIONAL ROTATIONS

i 2

j 3

j 1 j 2

k 1 k 2

k 3

i 3

k 2

k 3

l 1

l 2

3

i 1 i 2

i 3

j 3

j 1

j 2f

y

q

R( )3 y

R( )2 q

R( )1 f

Figure 1.13 Euler sequence 321: triad I is rotated by R 3(ψ) into J ; J is rotated byR 2(θ) into K; finally, K is rotated by R 1(ϕ) into L.

and are readily obtained as

ωLL/I = R I T 321ωI L/I = S L321e321, (1.205)

where

S L321 = R I T 321S I 321,

=

1 0 − sin θ

0 cos ϕ cos θ sin ϕ0 − sin ϕ cos θ cos ϕ

. (1.206)

The inverse relationship gives the time rates of the 321 Euler sequence anglesas a function of the angular velocity components in the rotated triad L, a

Page 41: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 41/44

PARAMETERIZATION OF ROTATIONS 41

problem often encountered in the applications, and writes

e321 = S L−1

321 ωLL/I , (1.207)

where

S L−1

321 =

1 tan θ sin ϕ tan θ cos ϕ

0 cos ϕ − sin ϕ0 sec θ sin ϕ sec θ cos ϕ

. (1.208)

Notice thatdet(S I 321) = det(S L321) = cos θ. (1.209)

Hence, the Euler sequence 321 is singular for

θ =k

2π, k = (1, ∞). (1.210)

To avoid crossing a singular point in the parameterization, the pitch angle θof the 321 sequence is customarily limited within the range −π/2 ≤ θ ≤ π/2,while the other two angles have the usual ranges −π ≤ ϕ ≤ π, and −π ≤ ψ ≤π. Since the pitch angle experienced in the flight envelope of most typicalairplanes is usually limited, the sequence 321 is often the most convenient forflight mechanics applications. However, it should be stressed that each Eulersequence has its own range of validity, and this justifies the fact that differentEuler sequences are used for different applications.

The inverse problem for the Euler sequence 321,

e321 = R−1e (R I 321), (1.211)

is easily solved using equation (1.199). Setting for convenience R I 321 = [Rkl],k, l = 1, 2, 3, one first computes

θ = − asin R31. (1.212)

Then the bank angle is obtained as

ϕ = atan2(R32, R33), (1.213)

and finally the heading is computed as

ψ = atan2(R21, R11), (1.214)

where atan2(·, ·) is the four-quadrant arctangent operator.

Example 1.8.2 Solve example 1.8.1 using the Euler angles corresponding tothe 321 sequence.

Solution. The problem is solved by integrating the ordinary differentialequations

e321 = S I −1

321 ωI ,

Page 42: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 42/44

42 THREE-DIMENSIONAL ROTATIONS

starting from the initial conditions at t = 0 as given in examples 1.5.1 and1.6.2:

e3210 = (25, 30, 0)T deg.

The time history of the angles are given in figure 1.14. The heading angle ψwas divided by a factor of 10 in the plot, since it is substantially larger thanthe other two due to the predominant spinning motion of the aircraft. Thevalues of the Euler angles at t = T are

e321T = (29.7012, 30.8612, 876.0238)T deg.

The corresponding rotation tensor components in I

are computed using (1.199)as

R I I→T =

−0.7843 −0.5852 −0.2058

0.3488 −0.6904 0.6338−0.5130 0.4253 0.7456

.

0 2 4 6 8 10 12 14 16 18 200

10

20

30

40

50

60

70

80

90

Time [sec]

E u l e r a n g l e s

3 2 1

: φ , θ , ψ

/ 1 0

[ d e g ]

Figure 1.14 Time history plot of the Euler angles corresponding to the sequence 321.

Alternatively, one could start from null initial conditions at time t = 0,

e3210 = (0, 0, 0)T deg,

finding the following values of the Euler angles at time t = T :

e321T = (4.0349, 0.9440, 873.6749)T deg.

Using these values into (1.199) gives the components of the rotation tensorthat brings B0 into the body attached triad in the final configuration, R I 0→T .

Page 43: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 43/44

PROBLEMS 43

Combining this rotation with the one that brings I into B0, matrix R I 0 of example 1.6.2, we have

R I I→T = R I 0→T R I 0 ,

which clearly yields the same values as given above starting from non-nullinitial conditions.

1.9 PROBLEMS

1.1 Consider the composition of rotations expressed by equations (1.106)

and (1.107). Which one of the classical vectorial parameterizations of table1.1 will lead to the simplest formula for the composed rotation?

1.2 Find a vectorial parameterization such that tensor S has no term in p× p×, i.e. S p2 = 0 in (1.149).

1.3 Consider a launcher whose body attached triad has the unit vector b1along the main axis of the vehicle. Since the launcher will operate for valuesof the pitch angle θ in close proximity of the value π/2, the Euler sequence321 is not a convenient choice in this case. Derive a more convenient Eulersequence for this problem.

1.4 Compute the singular points for the Euler sequence 323.

1.5 Solve example 1.8.1 using the finite rotation vector. From your results,compute the corresponding Euler angles 321.

1.6 Prove the following property between tensors R and S expressed in termsof the rotation vector (equations (1.33), (1.47), (1.54)): R = SS −T = S −T S .

1.7 With reference to problem 1.6, is there an analogous property betweentensors R and S p expressed in terms of the generalized vectorial parameters p?

REFERENCES

1. MATLAB, Product Documentation, The MathWorks, Inc., 3 Apple HillDrive, Natick, MA.

2. O.A. Bauchau, C.L. Bottasso, “On the Design of Energy Preserving andDecaying Schemes for Flexible, Nonlinear Multibody Systems,” Computer

Methods in Applied Mechanics and Engineering, 169, 61–79 (1999).

3. O.A. Bauchau, L. Trainelli, “The Vectorial Parameterization of Rotation,”Nonlinear Dynamics, 32, 71–92 (2003).

Page 44: Three Dimensional Rotations

8/4/2019 Three Dimensional Rotations

http://slidepdf.com/reader/full/three-dimensional-rotations 44/44

44 THREE-DIMENSIONAL ROTATIONS

4. H. Goldstein, Classical Mechanics, 2nd ed., Addison-Wesley, Reading,MA, 1980.

5. J. Stuelpnagel, “On the Parameterization of the Three-Dimensional Ro-tation Group,” SIAM Review, 6, 422–430 (1964).