Three-Dimensional Rotation Matrices: 1 T T T T 2

Download as pdf or txt
Download as pdf or txt
You are on page 1of 18

Physics 216 Spring 2012

Three-Dimensional Rotation Matrices

1. Rotation matrices

A real orthogonal matrix R is a matrix whose elements are real numbers and satisfies
1
R = RT (or equivalently, RRT = I, where I is the n n identity matrix). Taking
the determinant of the equation RRT = I and using the fact that det(RT ) = det R,
it follows that (det R)2 = 1, which implies that either det R = 1 or det R = 1. A
real orthogonal n n matrix with det R = 1 is called a special orthogonal matrix and
provides a matrix representation of a n-dimensional proper rotation1 (i.e. no mirrors
required!).
The most general three-dimensional rotation matrix represents a counterclockwise
rotation by an angle about a fixed axis that lies along the unit vector n. The rotation
matrix operates on vectors to produce rotated vectors, while the coordinate axes are
held fixed. This is called an active transformation. In these notes, we shall explore the
general form for the matrix representation of a three-dimensional (proper) rotations,
and examine some of its properties.

2. Properties of the 3 3 rotation matrix

A rotation in the xy plane by an angle measured counterclockwise from the


positive x-axis is represented by the real 2 2 special orthogonal matrix,2
 
cos sin
.
sin cos

If we consider this rotation as occurring in three-dimensional space, then it can be


described as a counterclockwise rotation by an angle about the z-axis. The matrix
representation of this three-dimensional rotation is given by the real 3 3 special
orthogonal matrix,
cos sin 0
R(z, ) sin cos 0 , (1)
0 0 1
where the axis of rotation and the angle of rotation are specified as arguments of R.
The most general three-dimensional rotation, denoted by R(n, ), can be specified
by an axis of rotation, n, and a rotation angle . Conventionally, a positive rotation
angle corresponds to a counterclockwise rotation. The direction of the axis is deter-
mined by the right hand rule. Namely, curl the fingers of your right hand around
1
In typical parlance, a rotation refers to a proper rotation.
2
As noted in Section 1, the term special refers to the property that the determinant of the matrix
is equal to 1.

1
the axis of rotation, where your fingers point in the direction. Then, your thumb
points perpendicular to the plane of rotation in the direction of n. In general, rotation
matrices do not commute under multiplication. However, if both rotations are taken
with respect to the same fixed axis, then

R(n, 1 )R(n, 2 ) = R(n, 1 + 2 ) . (2)

Simple geometric considerations will convince you that the following relations are
satisfied:

R(n, + 2k) = R(n, ) , k = 0, 1 2 . . . , (3)

[R(n, )]1 = R(n, ) = R(n, ) . (4)

Combining these two results, it follows that

R(n, 2 ) = R(n, ) , (5)

which implies that any three-dimensional rotation can be described by a counterclock-


wise rotation by an angle about an arbitrary axis n, where 0 . However, if
we substitute = in eq. (5), we conclude that

R(n, ) = R(n, ) , (6)

which means that for the special case of = , R(n, ) and R(n, ) represent the
same rotation. In particular, note that

[R(n, )]2 = I . (7)

Indeed for any choice of n, the R(n, ) are the only non-trivial rotation matrices whose
square is equal to the identity operator. Finally, if = 0 then R(n, 0) = I is the identity
operator (sometimes called the trivial rotation), independently of the direction of n.
To learn more about the properties of a general three-dimensional rotation, consider
the matrix representation R(n, ) with respect to the standard basis Bs = {x , y , z}.
We can define a new coordinate system in which the unit vector n points in the
direction of the new z-axis; the corresponding new basis will be denoted by B . The
matrix representation of the rotation with respect to B is then given by R(z, ). Thus,
there exists a real 3 3 special orthogonal matrix P such that3

R(n, ) = P R(z, )P 1 , where n = P z , (8)

and R(z, ) is given by eq. (1). The existence of the matrix P in eq. (8) [even without
knowing its explicit form] is sufficient to provide a simple algorithm for determining
the rotation axis n (up to an overall sign) and the rotation angle that characterize a
general three-dimensional rotation matrix.4
3
Eq. (8) is a special case of a more general result given by eq. (72), which is proved in Appendix B.
4
An explicit form for the matrix P is obtained in eq. (80) in Appendix B.

2
To determine the rotation angle , we note that the properties of the trace imply
that Tr(P RP 1) = Tr(P 1 P R) = Tr R. Hence, it immediately follows from eq. (8)
that
Tr R(n, ) = Tr R(z, ) = 2 cos + 1 , (9)
after taking the trace of eq. (1). By convention, 0 , which implies that sin 0.
Hence, the rotation angle is uniquely determined by eq. (9) To identify n, we observe
that any vector that is parallel to the axis of rotation is unaffected by the rotation
itself. This last statement can be expressed as an eigenvalue equation,

R(n, )n = n . (10)

Thus, n is an eigenvector of R(n, ) corresponding to the eigenvalue 1. In particular,


the eigenvalue 1 is unique for any 6= 0, in which case n can be determined up to an
overall sign by computing the eigenvalues and the normalized eigenvectors of R(n, ). A
simple proof of this result is given in Appendix A. Here, we shall establish this assertion
by noting that the eigenvalues of any matrix are invariant with respect to a similarity
transformation. Using eq. (8), it follows that the eigenvalues of R(n, ) are identical to
the eigenvalues of R(z, ). The latter can be obtained from the characteristic equation,

(1 ) (cos )2 + sin2 = 0 ,
 

which simplifies to:


(1 )(2 2 cos + 1) = 0 .
Solving the quadratic equation, 2 2 cos + 1 = 0, yields:

= cos cos2 1 = cos i 1 cos2 = cos i sin = ei . (11)

It follows that the three eigenvalues of R(z, ) are given by,

1 = 1 , 2 = ei , 3 = ei , for 0 .

There are three distinct cases:


Case 1: =0 1 = 2 = 3 = 1 , R(n, 0) = I ,
Case 2: = 1 = 1 , 2 = 3 = 1 , R(n, ) ,
i i
Case 3: 0<< 1 = 1, 2 = e , 3 = e , R(n, ) ,
where the corresponding rotation matrix is indicated for each of the three cases. Indeed,
for 6= 0 the eigenvalue 1 is unique. Moreover, the other two eigenvalues are complex
conjugates of each other, whose real part is equal to cos , which uniquely fixes the
rotation angle in the convention where 0 . Case 1 corresponds to the identity
(i.e. no rotation) and Case 2 corresponds to a 180 rotation about the axis n. In
Case 2, the interpretation of the the doubly degenerate eigenvalue 1 is clear. Namely,
the corresponding two linearly independent eigenvectors span the plane that passes
through the origin and is perpendicular to n. In particular, the two doubly degenerate
eigenvectors (along with any linear combination ~ v of these eigenvectors that lies in the

3
plane perpendicular to n) are inverted by the 180 rotation and hence must satisfy
R(n, )~
v = ~ v.
Since n is a real vector of unit length, it is determined only up to an overall sign
by eq. (10) when its corresponding eigenvalue 1 is unique. This sign ambiguity is
immaterial in Case 2 in light of eq. (6). The sign ambiguity in Case 3 cannot be
resolved without further analysis. To make further progress, in Section 3 we shall
obtain the general expression for the three dimensional rotation matrix R(n, ).

3. An explicit formula for the matrix elements of a general 3 3 rotation


matrix

In this section, the matrix elements of R(n, ) will be denoted by Rij . Since R(n, )
describes a rotation by an angle about an axis n, the formula for Rij that we seek
will depend on and on the coordinates of n = (n1 , n2 , n3 ) with respect to a fixed
Cartesian coordinate system. Note that since n is a unit vector, it follows that:

n21 + n22 + n23 = 1 . (12)

Using the techniques of tensor algebra, we can derive the formula for Rij in the
following way. We can regard Rij as the components of a second-rank Cartesian tensor.5
Likewise, the ni are components of a vector (equivalently, a first-rank tensor). Two
other important quantities for the analysis are the invariant tensors ij (the Kronecker
delta) and ijk (the Levi-Civita tensor). If we invoke the covariance of tensor equations,
then one must be able to express Rij in terms of a second-rank tensor composed of ni ,
ij and ijk , as there are no other tensors in the problem that could provide a source
of indices. Thus, the form of the formula for Rij must be:

Rij = aij + bni nj + cijk nk , (13)

where there is an implicit sum over the index k in the third term of eq. (13).6 The
numbers a, b and c are real scalar quantities. As such, a, b and c are functions of ,
since the rotation angle is the only non-trivial scalar quantity in this problem. If
we also allow for transformations between right-handed and left-handed orthonormal
coordinate systems, then Rij and ij are true second-rank tensors and ijk is a third-rank
pseudotensor. Thus, to ensure that eq. (13) is covariant with respect to transformations
between two bases that are related by either a proper or an improper rotation, we
conclude that a and b are true scalars, and the product cn is a pseudovector.7
5
This statement is justified in Appendix C to these notes.
6
We follow the Einstein summation convention in these notes. That is, there is an implicit sum
over any pair of repeated indices in the present and all subsequent formulae.
7
Under inversion of the coordinate system, and n n. Since 0 , one must then
use eq. (4) to flip the signs of both and n to represent the rotation R(n, ) in the new coordinate
system. Hence, the signs of and n effectively do not change under the inversion of the coordinate
system. That is, any scalar function of is a true scalar and n is a pseudovector. It follows that the
product cn is a pseudovector as asserted in the text above.

4
The quantities a, b and c can be determined as follows. First, we rewrite eq. (10)
in terms of components,
Rij nj = ni . (14)
To determine the consequence of this equation, we insert eq. (13) into eq. (14) and
make use of eq. (12). Noting that

ij nj = ni , nj nj = 1 ijk nj nk = 0 , (15)

it follows immediately that ni (a + b) = ni . Hence,

a+b = 1. (16)

Since the formula for Rij given by eq. (13) must be completely general, it must hold
for any special case. In particular, consider the case where n = z. In this case, eqs. (1)
and (13) yields:

R(z, )11 = cos = a , R(z, )12 = sin = c 123 n3 = c . (17)

Using eqs. (16) and (17) we conclude that,

a = cos , b = 1 cos , c = sin . (18)

Inserting these results into eq. (13) yields the Rodrigues formula,

Rij (n, ) = cos ij + (1 cos )ni nj sin ijk nk , (19)

which is called the angle-and-axis parameterization of the three-dimensional rotation


matrix. In Appendix D, we show that R(n, ) can be expressed in exponential form,
~),
R(n, ) = exp(in S

where S~ = (S1 , S2 , S3 ) is a vector whose components are the three real 3 3


antisymmetric matrices Sk (k = 1, 2, 3), with matrix elements given by (Sk )ij = iijk .
Using eq. (19), we can write R(n, ) explicitly in 3 3 matrix form,

cos + n21 (1 cos ) n1 n2 (1 cos ) n3 sin n1 n3 (1 cos ) + n2 sin
R(n, ) = n1 n2 (1 cos ) + n3 sin cos + n22 (1 cos ) n2 n3 (1 cos ) n1 sin .
n1 n3 (1 cos ) n2 sin n2 n3 (1 cos ) + n1 sin cos + n23 (1 cos )
(20)
One can easily check that eqs. (3) and (4) are satisfied. In particular, as indicated by
eq. (5), the rotations R(n, ) and R(n, ) represent the same rotation,
2
2n1 1 2n1 n2 2n1 n3
Rij (n, ) = 2n1 n2 2n22 1 2n2 n3 = 2ni nj ij . (21)
2n1 n3 2n2 n3 2n23 1

Finally, as expected, Rij (n, 0) = ij , independently of the direction of n. I leave it as


an exercise to the reader to verify explicitly that R R(n, ) given in eq. (20) satisfies
the conditions RRT = I and det R = +1.

5
In Section 5, we show that it is possible to express a general rotation matrix R(n, )
as a product of simpler rotations. This will provide further geometrical insights into
the properties of rotations.

4. Determining the rotation axis and the rotation angle

Given a general three-dimensional rotation matrix, R(n, ), we can determine the


angle of rotation and the axis of rotation n. Using eq. (20), the trace of R(n, ) is
given by:
Tr R(n, ) = 1 + 2 cos , (22)
which coincides with our previous result obtained in eq. (9). Thus eq. (22) yields,
p
cos = 21 (Tr R 1) and sin = (1 cos2 )1/2 = 12 (3 Tr R)(1 + Tr R) , (23)

where sin 0 is a consequence of the range of the rotation angle, 0 .


To determine n, we multiply eq. (19) by ijm and sum over i and j. Noting that

ijm ij = ijm ni nj = 0 , ijk ijm = 2km , (24)

it follows that
2nm sin = Rij ijm . (25)
If R is a symmetric matrix (i.e. Rij = Rji ), then Rij ijm = 0 automatically since
ijk is antisymmetric under the interchange of the indices i and j. In this case sin = 0
and we must seek other means to determine n. If sin 6= 0, then one can divide both
sides of eq. (25) by sin . Using eq. (23), we obtain:

Rij ijm Rij ijm


nm = =p , sin 6= 0 . (26)
2 sin (3 Tr R)(1 + Tr R)

More explicitly,
 
1
n = p R32 R23 , R13 R31 , R21 R12 , Tr R 6= 1 , 3 .
(3 Tr R)(1 + Tr R)
(27)
If we multiply eq. (25) by nm and sum over m, then

sin = 12 ijm Rij nm , (28)

after using nm nm = 1. This provides an additional check on the determination of the


rotation angle.
Alternatively, we can define a matrix S whose matrix elements are given by:

Sjk Rjk + Rkj + (1 Tr R)jk


= 2(1 cos )nj nk = (3 Tr R)nj nk , (29)

6
after using eq. (19) for Rjk . Hence,
Sjk
nj nk = , Tr R 6= 3 . (30)
3 Tr R
To determine n up to an overall sign, we simply set j = k (no sum) in eq. (30), which
fixes the value of
Sjj
n2j = , Tr R 6= 3 , (no sum over j) . (31)
3 Tr R
If sin 6= 0, the overall sign of n is fixed by eq. (26). Note that eq. (29) implies that
Tr S = 3 Tr R. Summing over j in eq. (31) then yields
Tr S
n n = = 1,
3 Tr R
as required for a unit vector.
As noted above, if R is a symmetric matrix (i.e. Rij = Rji ), then sin = 0 and
n cannot be determined from eq. (26). In this case, eq. (22) determines whether
cos = +1 or cos = 1. For cos = 1, eq. (29) yields nj nk = 41 Sjk , which
determines n up to an overall sign. Equivalently, one can use eq. (20) to derive
 q q q 
1 1 1
n = 1 2 (1 + R11 ) , 2 2 (1 + R22 ) , 3 2 (1 + R33 ) , if Tr R = 1 , (32)

where the individual signs i = 1 are determined up to an overall sign via


Rij
i j = p , for fixed i 6= j , Rii 6= 1 , Rjj 6= 1 . (33)
(1 + Rii )(1 + Rjj )
The ambiguity in the overall sign of n is immaterial, in light of eq. (6). Finally, in the
case of cos = +1 (which corresponds to Tr R = 3), R(n, 0) = I is the 3 3 identity
matrix, which is independent of the direction of n.
To summarize, eqs. (23), (27) and (30) provide a simple algorithm for determining
the unit vector n and the rotation angle for any rotation matrix R(n, ) 6= I.

5. Euler angle representation of R(n, )

An arbitrary rotation matrix can can be written as:


R(n, ) = R(z, )R(y, )R(z, ) , (34)
where , and are called the Euler angles. The ranges of the Euler angles are:
0 , < 2 and 0 . We shall prove these statements by construction.
That is, we shall explicitly derive the relations between the Euler angles and the angles
, n and n that characterize the rotation R(n, ), where n and n are the polar and
azimuthal angle that define the axis of rotation n,
n = (sin n cos n , sin n sin n , cos n ) . (35)

7
Multiplying out the three matrices on the right-hand side of eq. (34), we obtain the
Euler angle parameterization of the three-dimensional rotation matrix,

cos cos cos sin sin cos cos sin sin cos cos sin
R(n, ) = sin cos cos + cos sin sin cos sin + cos cos sin sin .
sin cos sin sin cos
(36)
One can now make use of the results of Section 4 to obtain and n in terms of the
Euler angles , and . For example, cos is obtained from eq. (23). Simple algebra
yields:
cos = cos2 (/2) cos( + ) sin2 (/2) , (37)
where I have used cos2 (/2) = 21 (1 + cos ) and sin2 (/2) = 12 (1 cos ). Thus, we
have determined mod , consistent with our convention that 0 [cf. eq. (23)
and the text preceding this equation]. One can also rewrite eq. (37) in a slightly more
convenient form,
cos = 1 + 2 cos2 (/2) cos2 21 ( + ) . (38)
We examine separately the cases for which sin = 0. First, cos = cos( + ) = 1
implies that = 0 and R(n, ) = I. In this case, the axis of rotation, n, is undefined.
Second, if = then cos = 1 and n is determined up to an overall sign (which is
not physical). Eq. (38) then implies that cos2 (/2) cos2 12 ( + ) = 0, or equivalently
(1 + cos ) [1 + cos( + )] = 0, which yields two possible subcases,

(i) cos = 1 and/or (ii) cos( + ) = 1 .

In subcase (i), if cos = 1, then eqs. (32) and (33) yield



cos( ) sin( ) 0
R(n, ) = sin( ) cos( ) 0 ,
0 0 1

where 
n = sin 21 ( ) , cos 21 ( ) , 0 .
In subcase (ii), if cos( + ) = 1, then

cos + cos = 2 cos 21 ( ) cos 12 ( + ) = 0 ,


sin sin = 2 sin 12 ( ) cos 12 ( + ) = 0 ,

since cos2 21 ( + ) = 12 [1 + cos( + )] = 0. Thus, eqs. (32) and (33) yield

cos 2 sin2 sin2 (/2) sin(2) sin2 (/2)



cos sin
R(n, ) = sin(2) sin2 (/2) 1 + 2 sin2 sin2 (/2) sin sin ,
cos sin sin sin cos

where 
n = sin(/2) cos , sin(/2) sin , cos(/2) .

8
Finally, we consider the generic case where sin 6= 0. Using eqs. (27) and (36),
R32 R23 = 2 sin sin 12 ( ) cos 21 ( + ) ,
R13 R31 = 2 sin cos 12 ( ) cos 12 ( + ) ,
R21 R12 = 2 cos2 (/2) sin( + ) .
In normalizing the unit vector n, it is convenient to write sin = 2 sin(/2) cos(/2)
and sin( + ) = 2 sin 21 ( + ) cos 21 ( + ). Then, we compute:

(R32 R23 )2 + (R13 R31 )2 + (R12 R21 )2 1/2


 

q 2
= 4 cos 2 ( + ) cos(/2) sin (/2) + cos2 (/2) sin2 21 ( + ) . (39)
1

Hence,8

n = q
sin2 (/2) + cos2 (/2) sin2 21 ( + )
 
1 1 1
sin(/2) sin 2 ( ) , sin(/2) cos 2 ( ) , cos(/2) sin 2 ( + ) ,
(40)
where = 1 according to the following sign,

sgn cos 12 ( + ) cos(/2) , sin 6= 0 . (41)
Remarkably, eq. (40) reduces to the correct results obtained above in the two subcases
corresponding to = , where cos(/2) = 0 and/or cos 21 ( + ) = 0, respectively.
Note that in the latter two subcases, as defined in eq. (41) is indeterminate. This
is consistent with the fact that the sign of n is indeterminate when = . Finally,
one can easily verify that when = 0 [corresponding to cos = cos( + ) = 1], the
direction of n is indeterminate and hence arbitrary.
One can rewrite the above results as follows. First, use eq. (38) to obtain:
q
sin(/2) = sin2 (/2) + cos2 (/2) cos2 21 ( + ) ,

cos(/2) = cos(/2) cos 12 ( + ) , (42)


where we have used cos2 (/2) = 21 (1 + cos ) and sin2 (/2) = 12 (1 cos ). Since
0 , it follows that 0 sin(/2) , cos(/2) 1. Hence, the factor of defined
by eq. (41) is required in eq. (42) to ensure that cos(/2) is non-negative. In the
mathematics literature, it is common to define the following vector consisting of four-
components, q = (q0 , q1 , q2 , q3 ), called a quaternion, as follows:
 
q = cos(/2) , n sin(/2) , (43)

8
One can can also determine n up to an overall sign starting from eq. (36) by employing the
relation R(n, )n = n. The sign of n sin can then be determined from eq. (27).

9
where the components of n sin(/2) comprise the last three components of the quater-
nion q and

q0 = cos(/2) cos 21 ( + ) , q1 = sin(/2) sin 21 ( ) ,


q2 = sin(/2) cos 21 ( ) , q3 = cos(/2) sin 21 ( + ) . (44)

Since 0 , it follows that q0 0.9 Quaternions are especially valuable for


representing rotations in computer graphics software.
If one expresses n in terms of a polar angle n and azimuthal angle n as in eq. (35),
then one can also write down expressions for n and n in terms of the Euler angles ,
and . Comparing eqs. (35) and (40), it follows that:

(n21 + n22 )1/2 tan(/2)


tan n = = , (45)
n3 sin 12 ( + )

where we have noted that (n21 + n22 )1/2 = sin(/2) 0, since 0 , and the sign
= 1 is defined by eq. (41). Similarly,
n1
cos n = = sin 21 ( ) = cos 21 ( + ) , (46)
(n21 + n22 )
n2
sin n = = cos 21 ( ) = sin 12 ( + ) , (47)
(n21 + n22 )

or equivalently
n = 12 ( + ) mod 2 . (48)
Indeed, given that 0 , < 2 and 0 , we see that n is determined mod
and n is determine mod 2 as expected for a polar and azimuthal angle, respectively.
One can also solve for the Euler angles in terms of , n and n . First, we rewrite
eq. (38) as:
cos2 (/2) = cos2 (/2) cos2 12 ( + ) . (49)
Then, using eqs. (45) and (49), it follows that:

sin(/2) = sin n sin(/2) . (50)

Plugging this result back into eqs. (45) and (49) yields

cos n sin(/2)
sin 21 ( + ) = p , (51)
1 sin2 n sin2 (/2)
cos(/2)
cos 21 ( + ) = p . (52)
1 sin2 n sin2 (/2)
9
In comparing with other treatments in the mathematics literature, one should be careful to note
that the convention of sin 0 (which implies that q0 0) is not universally adopted. Often, the
quaternion q in eq. (43) will be re-defined as q in order to remove the factors of from eq. (44), in
which case q0 0.

10
Note that if = then eq. (50) yields = and n = /2, in which case +
is indeterminate. This is consistent with the observation that is indeterminate if
cos(/2) = 0 [cf. eq. (41)].
We shall also make use of eqs. (46) and (47),

sin 21 ( ) = cos n , (53)


cos 12 ( ) = sin n , (54)

Finally, we employ eqs. (52) and (53) to obtain (assuming 6= ):

cos(/2)  
sin n p = cos 12 ( ) cos 12 ( + ) = 2 sin(/2) sin(/2) .
1 sin2 n sin2 (/2)

Since 0 21 , 12 < , it follows that sin(/2) sin(/2) 0. Thus, we may conclude


that if 6= 0, 6= 0 and 6= then
( )
cos(/2)
= sgn sin n p , (55)
1 sin2 n sin2 (/2)

If either = 0 or = 0, then the argument of sgn in eq. (55) will vanish. In this
case, sin 12 ( + ) 0, and we may use eq. (51) to conclude that = sgn {cos n }, if
n 6= /2. The case of n = n = /2 must be separately considered and corresponds
simply to = and = = 0, which yields = 1. The sign of is indeterminate
if sin = 0 as noted below eq. (41).10 The latter includes the case of = , which
implies that = and n = /2, where + is indeterminate [cf. eq. (52)].
There is an alternative strategy for determining the Euler angles in terms of , n
and n . Simply set the two matrix forms for R(n, ), eqs. (20) and (36), equal to each
other, where n is given by eq. (35). For example,

R33 = cos = cos + cos2 n (1 cos ) . (56)

where the matrix elements of R(n, ) are denoted by Rij . It follows that
q
sin = 2 sin(/2) sin n 1 sin2 n sin2 (/2) , (57)

which also can be derived from eq. (50). Next, we note that if sin 6= 0, then

R23 R13 R32 R31


sin = , cos = , sin = , cos = .
sin sin sin sin
10
In particular, if = 0 then n and n are not well-defined, whereas if = then the signs of
cos n , sin n and cos n are not well-defined [cf. eqs. (6) and (35)].

11
Using eq. (20) yields (for sin 6= 0):
cos n sin n sin(/2) cos n cos(/2)
sin = p , (58)
1 sin2 n sin2 (/2)
cos n cos n sin(/2) + sin n cos(/2)
cos = p , (59)
1 sin2 n sin2 (/2)
cos n sin n sin(/2) + cos n cos(/2)
sin = p , (60)
1 sin2 n sin2 (/2)
cos n cos n sin(/2) + sin n cos(/2)
cos = p . (61)
1 sin2 n sin2 (/2)
The cases for which sin = 0 must be considered separately. Since 0 ,
sin = 0 implies that = 0 or = . If = 0 then eq. (56) yields either (i) = 0,
in which case R(n, ) = I and cos = cos( + ) = 1, or (ii) sin n = 0, in which case
cos = 1 and + = mod , with indeterminate. If = then eq. (56)
yields n = /2 and = , in which case cos = 1 and = 2 mod 2, with
+ indeterminate.
One can use eqs. (58)(61) to rederive eqs. (51)(54). For example, if 6= 0, 6= 0
and sin 6= 0, then we can employ a number of trigonometric identities to derive11

cos 21 ( ) = cos(/2) cos(/2) sin(/2) sin(/2)

sin(/2) cos(/2) sin(/2) cos(/2) sin2 (/2) sin2 (/2)


=
sin(/2) sin(/2)
sin sin (1 cos )(1 cos )
= . (62)
2(1 cos )1/2 (1 cos )1/2
and

sin 21 ( ) = sin(/2) cos(/2) cos(/2) sin(/2)


sin(/2) sin(/2) cos(/2) sin(/2) cos(/2) sin(/2)
=
sin(/2) sin(/2)
sin(/2) sin sin sin(/2)
=
2 sin(/2) 2 sin(/2)
r r
1 cos 1 cos
= 21 sin 21 sin
1 cos 1 cos
sin (1 cos ) sin (1 cos )
= . (63)
2(1 cos )1/2 (1 cos )1/2
1/2
11
Since sin(/2) and sin(/2) are positive, one can set sin(/2) = 12 [1 cos(/2)]

and
1 1/2
sin(/2) = 2 [1 cos(/2)] by taking the positive square root in both cases, without ambiguity.

12
We now use eqs. (58)(61) to evaluate the above expressions. To evaluate the denom-
inators of eqs. (62) and (63), we compute:

2 sin n cos(/2) sin2 n cos2 (/2) cos2 n cos2 n sin2 (/2)


(1 cos )(1 cos ) = 1 p +
1 sin2 n sin2 (/2) 1 sin2 n sin2 (/2)

2 sin n cos(/2) cos2 (/2)


= sin2 n p + 2 2
1 sin2 n sin2 (/2) 1 sin n sin (/2)
!2
cos(/2)
= sin n p .
1 sin2 n sin2 (/2)

Hence,
!
cos(/2)
(1 cos )1/2 (1 cos )1/2 = sin n p ,
1 sin2 n sin2 (/2)

where = 1 is the sign defined by eq. (55). Likewise we can employ eqs. (58)(61)
to evaluate:
" #
2 cos(/2) cos(/2)
sin sin (1 cos )(1 cos ) = p sin n p ,
1 sin2 n sin2 (/2) 1 sin2 n sin2 (/2)
" #
cos(/2)
sin sin + (1 cos )(1 cos ) = 2 sin n sin n p ,
1 sin2 n sin2 (/2)
" #
2 cos n sin(/2) cos(/2)
sin (1 cos ) + sin (1 cos ) = p sin n p ,
1 sin2 n sin2 (/2) 1 sin2 n sin2 (/2)
" #
cos(/2)
sin (1 cos ) + sin (1 cos ) = 2 cos n sin n p .
1 sin2 n sin2 (/2)

Inserting the above results into eqs. (62) and (63), it immediately follows that
cos(/2)
cos 21 ( + ) = p , cos 12 ( ) = sin n , (64)
1 sin2 n sin2 (/2)
cos n sin(/2)
sin 21 ( + ) = p , sin 12 ( ) = cos n , (65)
1 sin2 n sin2 (/2)
where is given by eq. (55). We have derived eqs. (64) and (65) assuming that 6= 0,
6= 0 and sin 6= 0. Since cos(/2) is then strictly positive, eq. (41) implies that
is equal to the sign of cos 21 ( + ), which is consistent with the expression for
cos 12 ( + ) obtained above. Thus, we have confirmed the results of eqs. (51)(54).
If = 0 and/or = 0, then the derivation of eqs. (62) and (63) is not valid.
Nevertheless, eqs. (64) and (65) are still true if sin 6= 0, as noted below eq. (55), with

13
= sgn(cos n ) for n 6= /2 and = +1 for n = n = /2. If = 0, then as noted
below eq. (61), either = 0 in which case n is undefined, or 6= 0 and sin n = 0
in which case the azimuthal angle n is undefined. Hence, = 0 implies that
is indeterminate. Finally, as indicated below eq. (52), + is indeterminate in the
exceptional case of = (i.e., = and n = /2).

EXAMPLE: Suppose = = 150 and = 90 . Then cos 21 ( + ) = 21 3,
which implies that = 1. Eqs. (38) and (40) then yield:
1
cos = 41 , n = (0 , 2 , 1) . (66)
5
The polar and azimuthal angles of n [cf. eq. (35)] are then given by n = 90 (mod 2)
and tan n = 2. The latter can also be deduced from eqs. (45) and (48).
Likewise, given eq. (66), one obtains cos = 0 (i.e. = 90 ) from eq. (56), = 1
from eq. (55), = from eqs. (53) and (54), and = = 150 from eqs. (51) and
(52). One can verify these results explicitly by inserting the values of the corresponding
parameters into eqs. (20) and (36) and checking that the two matrix forms for R(n, )
coincide.

Appendix A: The eigenvalues of a 3 3 orthogonal matrix12

Given any matrix A, the eigenvalues are the solutions to the characteristic equation,
det (A I) = 0 . (67)
Suppose that A is an n n real orthogonal matrix. The eigenvalue equation for A and
its complex conjugate transpose are given by:
Av = v , vTA = vT .
Hence multiplying these two equations together yields
vT v = v T AT Av = v T v , (68)
since an orthogonal matrix satisfies AT A = I. Since eigenvectors must be nonzero, it
follows that v T v 6= 0. Hence, eq. (68) yields || = 1. Thus, the eigenvalues of a real
orthogonal matrix must be complex numbers of unit modulus. That is, = ei for
some in the interval 0 < 2.
Consider the following product of matrices, where A satisfies AT A = I,
AT (I A) = AT I = (I A)T .
Taking the determinant of both sides of this equation, it follows that13
det A det(I A) = (1)n det(I A) , (69)
12
A nice reference to the results of this appendix can be found in L. Mirsky, An Introduction to
Linear Algebra (Dover Publications, Inc., New York, 1982).
13
Here, we make use of the well known properties of the determinant, namely det(AB) = detA detB
and det(AT ) = det A.

14
since for the n n identity matrix, det(I) = (1)n . For a proper odd-dimensional
orthogonal matrix, we have det A = 1 and (1)n = 1. Hence, eq. (69) yields14

det(I A) = 0 , for any proper odd-dimensional orthogonal matrix A. (70)

Comparing with eq. (67), we conclude that = 1 is an eigenvalue of A.15 Since det A
is the product of its three eigenvalues and each eigenvalue is a complex number of unit
modulus, it follows that the eigenvalues of any proper 3 3 orthogonal matrix must
be 1, ei and ei for some value of that lies in the interval 0 .16
Next, we consider the following product of matrices, where A satisfies AT A = I,

AT (I + A) = AT + I = (I + A)T .

Taking the determinant of both sides of this equation, it follows that

det A det(I + A) = det(I + A) , (71)

For any improper orthogonal matrix, we have det A = 1. Hence, eq. (71) yields

det(I + A) = 0 , for any improper orthogonal matrix A.

Comparing with eq. (67), we conclude that = 1 is an eigenvalue of A. Since det A


is the product of its three eigenvalues and each eigenvalue is a complex number of
unit modulus, it follows that the eigenvalues of any improper 3 3 orthogonal matrix
must be 1, ei and ei for some value of that lies in the interval 0
(cf. footnote 16).

Appendix B: The relation between R(n, ) and R(n , )

In this appendix, we derive the following relation between the matrix representa-
tions of two rotations by an angle with respect to two different rotation axes,

R(n, ) = P R(n , )P 1 , where n = P n . (72)

To prove eq. (72), we first compute the angle of the rotation P R(n , )P 1 using
eq. (23). Since Tr[P R(n , )P 1 ] = TrR(n , ) using the cyclicity of the trace, it follows
that the angles of rotation corresponding to P R(n , )P 1 and R(n , ) coincide and
are both equal to . To compute the corresponding axis of rotation n, we employ
eq. (25),
2nm sin = (P R P 1 )ij ijm , (73)
14
Eq. (70) is also valid for any improper even-dimensional orthogonal matrix A since in this case
det A = 1 and (1)n = 1.
15
Of course, this is consistent with the result that the eigenvalues of a real orthogonal matrix are
of the form ei for 0 < 2, since the eigenvalue 1 corresponds to = 0.
16
There is no loss of generality in restricting the interval of the angle to satisfy 0 . In
particular, under 2 , the two eigenvalues ei and ei are simply interchanged.

15
where R R(n , ). Since P is a rotation matrix, we have P 1 = P T , or equivalently
(P 1 )j = Pj . Hence, we can rewrite eq. (73) as:

2nm sin = Pik Rk Pj ijm . (74)

Multiplying both sides of eq. (74) by Pmn and using the definition of the determinant
of a 3 3 matrix,
Pik Pj Pmn ijm = (det P )kn ,
it then follows that:

2Pmn nm sin = Rk kn . (75)
after noting that det P = 1 (since P is a proper rotation matrix). Finally, we again
use eq. (25) which yields
2nn sin = Rk

kn . (76)
Assuming that sin 6= 0, we can subtract eqs. (75) and (76) and divide out by 2 sin .
Using (P T )nm = Pmn , the end result is:

n P T n = 0 .

Since P P T = I, we conclude that


n = P n . (77)
The case of sin = 0 must be treated separately. Using eq. (10), one can determine
the axis of rotation n of the rotation matrix P R(n , )P 1 up to an overall sign. Since
R(n , )n = n , the following eigenvalue equation is obtained:

P R(n , )P 1(P n ) = P R(n , )n = P n . (78)

That is, P n is an eigenvector of P R(n , )P 1 with eigenvalue +1. It then follows


that P n is the normalized eigenvector of P R(n , )P 1 up to an overall undetermined
sign. For sin 6= 0, the overall sign is fixed and is positive by eq. (77). If sin = 0,
then there are two cases to consider. If = 0, then R(n, 0) = R(n , 0) = I and eq. (72)
is trivially satisfied. If = , then eq. (6) implies that the unit vector parallel to the
rotation axis is only defined up to an overall sign. Hence, eq. (77) is valid even in the
case of sin = 0, and the proof is complete.
Note that for n = z, eq. (72) reduces to eq. (8) as a special case. We can determine
an explicit form for P by constructing the rotation such that n = P z. We define the
angles n and n to be the polar and azimuthal angles of the unit vector n[cf. eq. (35)].
Then, the matrix P can be expressed as the product of two simple rotation matrices,

P = R(z, n )R(y, n ) . (79)

This is easily checked by noting that R(y, n )z is a unit vector with polar angle n
that lies in the xz plane. Multiplying the resulting vector by R(z, n ) then produces

16
a unit vector with polar angle n and azimuthal angle n as required. Multiplying out
the two rotation matrices in eq. (79) yields,
nn n2
p 3 1 p n1
n21 + n22 n21 + n22


P = p n3 n2 n1 . (80)

n2 + n2 p
2 2
n 2
1 2 n1 + n2

p
n21 + n22 0 n3

Since P is an orthogonal matrix, it follows that P 1 = P T . It is now straightforward


to plug the result of eq. (80) into eq. (8) and recover the Rodrigues formula for R(n, )
given in eq. (20).

Appendix C: Matrix elements of a matrix correspond to the components of


a second-rank Cartesian tensor

Consider the matrix elements of a linear operator with respect to two different
orthonormal bases, B = {e1 , e2 , e3 } and B = {e1 , e2 , e3 } . Then, the two sets of
basis vectors are related by
ej = Pij ei ,
where P is an orthogonal matrix. Given any linear operator A with matrix elements
aij with respect to the basis B, the matrix elements aij with respect to the basis B are
related by a similarity transformation,

ak = (P 1 )ki aij Pj = Pik aij Pj ,

where we have used the fact that P 1 = P T in the second step above. Finally, identi-
fying P = R1 , where R is also an orthogonal matrix, it follows that

ak = Rki Rj aij ,

which we recognize as the transformation law for the components of a second rank
Cartesian tensor.

Appendix D: The exponential representation of R(n, )

Consider the matrix representation R(n, ) of a counterclockwise rotation by an


angle about a fixed axis that lies along the unit vector n. This matrix can be
expressed in exponential form,17
~),
R(n, ) = exp(in S (81)
17
If you read closely the section on finite rotations in Chapter 12 of Shankar, you may recognize
eq. (81) as the matrix representation of what Shankar calls D(1) [R()].

17
where S~ = (S1 , S2 , S3 ) is a vector whose components are the three real 3 3
antisymmetric matrices Sk , whose ij matrix elements are given by
(Sk )ij = iijk .
Thus, the matrix elements of the matrix that appears in the argument of the exponen-
tial in eq. (81) are given by
~ )ij iijk nk ,
(n S (82)
where the implicit sum over k is assumed. To prove this result, we perform an explicit
computation of eq. (81) and show that the end result is eq. (19), which we rewrite as
follows:
Rij (n, ) = ni nj + (ij ni nj ) cos ijk nk sin . (83)
The exponential in eq. (81) is defined via its power series,

~
i n S
X 1 ~ k.
R(n, ) = e = (in S) (84)
k=0
k!
Using eq. (82),
~ )2ij = ik nk jm nm = (ij km im jk )nk nm = ij ni nj ,
(n S
after employing the well-known -tensor identity and noting that km nk nm = 1 for the
unit vector n. Next, we compute:
~ )3ij = i(i ni n )jk nk = iijk nk = (n S)
(n S ~ ij .
Thus, for any positive integer k,
~ )2k1 = n S
(n S ~, ~ )2k = (n S)
(n S ~ 2.
Inserting these results in eq. (84), we obtain:

~
X 1 2k+1 ~ 2
X 1
Rij (n, ) = ij (n S)ij (i) + (n S)ij (i)2k
(2k + 1)! (2k)!
k=0 k=1

~ ij sin + (n S)
= ij i(n S) ~ 2ij (cos 1)

= ij ijk nk sin + (ij ni nj )(cos 1)


= ni nj + (ij ni nj ) cos ijk nk sin ,
which reproduces eq. (83) as advertised.

References
1. W.-K. Tung, Group Theory in Physics (World Scientific, Singapore, 1985).
2. K.N. Srinivasa Rao, The Rotation and Lorentz Groups and their Representations
for Physicists (Wiley Eastern Limited, New Delhi, 1988).
3. S.L. Altmann, Rotations, Quaternions, and Double Groups (Dover Publications,
Inc., New York, NY, 2005).

18

You might also like