Rotation operator (vector space)

Rotation operator (vector space)

This article derives the main properties of rotations in 3-dimensional space.

The three Euler rotations is an obvious way to bring a rigid body into any desired orientation by sequentially making rotations about axis fixed relative the body. But it is a non-trivial fact is that this also can be achieved with one single rotation. Using the concepts of linear algebra it is shown how this single rotation can be found.

Mathematical formulation

Let

hat e_1 , hat e_2 , hat e_3

be a coordinate system fixed in the body that through a change in orientation is brought to the new directions

mathbf{A}hat e_1 , mathbf{A}hat e_2 , mathbf{A}hat e_3.

Any vector

bar x =x_1hat e_1+x_2hat e_2+x_3hat e_3

of the body is then brought to the new direction

mathbf{A}bar x =x_1mathbf{A}hat e_1+x_2mathbf{A}hat e_2+x_3mathbf{A}hat e_3

i.e. this is a linear operator

The matrix of this operator relative the coordinate system

hat e_1 , hat e_2 , hat e_3

is

begin{bmatrix} A_{11} & A_{12} & A_{13} A_{21} & A_{22} & A_{23} A_{31} & A_{32} & A_{33} end{bmatrix} = begin{bmatrix} langlehat e_1 | mathbf{A}hat e_1 rangle & langlehat e_1 | mathbf{A}hat e_2 rangle & langlehat e_1 | mathbf{A}hat e_3 rangle langlehat e_2 | mathbf{A}hat e_1 rangle & langlehat e_2 | mathbf{A}hat e_2 rangle & langlehat e_2 | mathbf{A}hat e_3 rangle langlehat e_3 | mathbf{A}hat e_1 rangle & langlehat e_3 | mathbf{A}hat e_2 rangle & langlehat e_3 | mathbf{A}hat e_3 rangle end{bmatrix}

As

sum_{k=1}^3 A_{ki}A_{kj}= langle mathbf{A}hat e_i | mathbf{A}hat e_j rangle
= begin{cases} 0 & ineq j, 1 & i = j, end{cases}

or equivalently in matrix notation

begin{bmatrix} A_{11} & A_{12} & A_{13} A_{21} & A_{22} & A_{23} A_{31} & A_{32} & A_{33} end{bmatrix}^T begin{bmatrix} A_{11} & A_{12} & A_{13} A_{21} & A_{22} & A_{23} A_{31} & A_{32} & A_{33} end{bmatrix} = begin{bmatrix}
 1 & 0 & 0 
 0 & 1 & 0 
 0 & 0 & 1
end{bmatrix} the matrix is orthogonal and as a "right hand" base vector system is re-orientated into another "right hand" system the determinant of this matrix has the value 1.

Rotation around an axis

Let

hat e_1 , hat e_2 , hat e_3

be an orthogonal positively oriented base vector system in R^3

The linear operator

"Rotation with the angle theta around the axis defined by hat e_3"

has the matrix representation

begin{bmatrix}
 Y_1  
 Y_2  
 Y_3
end{bmatrix} = begin{bmatrix}
 costheta & -sintheta & 0 
 sintheta &  costheta & 0 
          0 &           0 & 1
end{bmatrix} begin{bmatrix}
 X_1  
 X_2  
 X_3
end{bmatrix}

relative this basevector system

This then means that a vector

bar x=begin{bmatrix}
 hat e_1 & hat e_2 & hat e_3
end{bmatrix} begin{bmatrix}
 X_1  
 X_2  
 X_3
end{bmatrix}

is rotated to the vector

bar y=begin{bmatrix}
 hat e_1 & hat e_2 & hat e_3
end{bmatrix} begin{bmatrix}
 Y_1  
 Y_2  
 Y_3
end{bmatrix}

by the linear operator

The determinant of this matrix is

det begin{bmatrix}
 costheta  & -sintheta & 0
 sintheta  &  costheta & 0
          0  &           0 & 1
end{bmatrix}=1

and the characteristic polynomial is

begin{align} detbegin{bmatrix}
 costheta -lambda  & -sintheta          & 0        
 sintheta           &  costheta -lambda & 0        
                    0 &                    0 & 1-lambda
end{bmatrix} &=big({(costheta -lambda)}^2 + {sintheta}^2 big)(1-lambda) &=-lambda^3+(2 costheta + 1) lambda^2 - (2 costheta + 1) lambda +1 end{align}

The matrix is symmetric if and only if sintheta=0, i.e. for theta=0 and for theta=pi

The case theta=0 is the trivial case of an identity operator

For the case theta=pi the characteristic polynomial is

-(lambda-1){(lambda +1)}^2

i.e. the rotation operator has the eigenvalues

lambda=1 quad lambda=-1

The eigenspace corresponding to lambda=1 is all vectors on the rotation axis, i.e. all vectors

bar x =alpha hat e_3 quad -infty

The eigenspace corresponding to lambda=-1 consists of all vectors orthogonal to the rotation axis, i.e. all vectors

bar x =alpha hat e_1 + beta hat e_2 quad -infty

For all other values of theta the matrix is un-symmetric and as {sintheta}^2 > 0 there is only the eigenvalue lambda=1 with the one-dimensional eigenspace of the vectors on the rotation axis:

bar x =alpha hat e_3 quad -infty

The general case

The operator

"Rotation with the angle theta around a specified axis"

discussed above is an orthogonal mapping and its matrix relative any base vector system is therefore an orthogonal matrix . Further more its determinant has the value 1. A non-trivial fact is the opposite, i.e. that for any orthogonal linear mapping in R^3 having determinant = 1 there exist base vectors

hat e_1 , hat e_2 , hat e_3

such that the matrix takes the "canonical form"

begin{bmatrix} costheta & -sintheta & 0 sintheta & costheta & 0 0 & 0 & 1end{bmatrix}

for some value of theta.

In fact, if a linear operator has the orthogonal matrix

begin{bmatrix} A_{11} & A_{12} & A_{13} A_{21} & A_{22} & A_{23} A_{31} & A_{32} & A_{33} end{bmatrix} relative some base vector system
hat f_1 , hat f_2 , hat f_3

and this matrix is symmetric the "Symmetric operator theorem" valid in R^n (any dimension) applies saying

that it has n orthogonal eigenvectors. This means for the 3-dimensional case that there exists a coordinate system

hat e_1 , hat e_2 , hat e_3

such that the matrix takes the form

begin{bmatrix} B_{11} & 0 & 0 0 & B_{22} & 0 0 & 0 & B_{33} end{bmatrix} As it is an orthogonal matrix these diagonal elements B_{ii} are either 1 or −1. As the determinant is 1 these elements are either all 1 or one of the elements is 1 and the other two are −1.

In the first case it is the trivial identity operator corresponding to theta=0.

In the second case it has the form

begin{bmatrix}
    -1  &     0 &    0 
     0  &    -1 &    0 
     0  &     0 &    1
end{bmatrix}

if the basevectors are numbered such that the one with eigenvalue 1 has index 3. This matrix is then of the desired form for theta=pi.

If the matrix is un-symmetric the vector

bar E = alpha_1 hat f_1 + alpha_2 hat f_2 + alpha_3 hat f_3

where

alpha_1=frac{A_{32}-A_{23} }{2}
alpha_2=frac{A_{13}-A_{31}}{2}
alpha_3=frac{A_{21}-A_{12}}{2}

is non-zero. This vector is an eigenvector with eigenvalue

lambda=1

Setting

hat e_3=frac{bar E}
>

and selecting any two orthogonal unit vectors in the plane orthogonal to hat e_3:

hat e_1 , hat e_2

such that

hat e_1 , hat e_2, hat e_3

form a positively oriented trippel the operator takes the desired form with

cos theta=frac{A_{11}+A_{22}+A_{33}-1}{2}
sin theta=|bar{E}|

The expressions above are in fact valid also for the case of a symmetric rotation operator corresponding to a rotation with theta = 0 or theta = pi. But the difference is that for theta = pi the vector

bar E = alpha_1 hat f_1 + alpha_2 hat f_2 + alpha_3 hat f_3

is zero and of no use for finding the eigenspace of eigenvalue 1, i.e. the rotation axis.

Defining E_4 as cos theta the matrix for the rotation operator is

frac{1-E_4}{{E_1}^2+{E_2}^2+{E_3}^2} begin{bmatrix} E_1 E_1 & E_1 E_2 & E_1 E_3 E_2 E_1 & E_2 E_2 & E_2 E_3 E_3 E_1 & E_3 E_2 & E_3 E_3 end{bmatrix} + begin{bmatrix} E_4 & -E_3 & E_2
E_3 &  E_4 & -E_1 
-E_2 & E_1 & E_4 end{bmatrix}

provided that

{E_1}^2+{E_2}^2+{E_3}^2 > 0

i.e. except for the cases theta=0 (the identity operator) and theta=pi

Quaternions

Quaternions are defined similar to E_1 , E_2 , E_3 , E_4 with the difference that the half angle frac{theta}{2} is used in stead of the full angle theta.

This means that the first 3 components q_1 , q_2 , q_3 are components of a vector defined from

q_1 hat{f_1} + q_2 hat{f_2} + q_3 hat{f_1} = sin frac{theta}{2}quad hat{e_3}=frac{sin frac{theta}{2}}{sintheta}quad bar E and that the forth component is the scalar
q_4=cos frac{theta}{2}

As the angle theta defined from the canonical form is in the interval

0 le theta le pi

one would normally have that q_4 ge 0. But a "dual" representation of a rotation with quaternions is used, i.e.

q_1 , q_2 , q_3 , q_4

and

-q_1 , -q_2 , -q_3 , -q_4

are two alternative representations of one and the same rotation.

The entities E_k are defined from the quaternions by

E_1=2 q_4 q_1
E_2=2 q_4 q_2
E_3=2 q_4 q_3
E_4={q_4}^2 -({q_1}^2+{q_2}^2+{q_3}^2)

Using quaternions the matrix of the rotation operatator is

begin{bmatrix}
2({q_1}^2+{q_4}^2)-1 &2({q_1}{q_2}-{q_3}{q_4}) &2({q_1}{q_3}+{q_2}{q_4}) 2({q_1}{q_2}+{q_3}{q_4}) &2({q_2}^2+{q_4}^2)-1 &2({q_2}{q_3}-{q_1}{q_4}) 2({q_1}{q_3}-{q_2}{q_4}) &2({q_2}{q_3}+{q_1}{q_4}) &2({q_3}^2+{q_4}^2)-1 end{bmatrix}

Numerical example

Consider the reorientation corresponding to the Euler angles alpha=10deg quad beta=20deg quad gamma=30deg quad relative a given base vector system

hat f_1 , hat f_2, hat f_3

Corresponding matrix relative this base vector system is (see Euler angles#Matrix notation)

begin{bmatrix}
 0.771281 & -0.633718 &  0.059391 
 0.613092 &  0.714610 & -0.336824 
 0.171010 &  0.296198 &  0.939693
end{bmatrix}

and the quaternion is

(0.171010, -0.030154, 0.336824, 0.925417)

The canonical form of this operator

begin{bmatrix}
 costheta  & -sintheta & 0
 sintheta  &  costheta & 0
          0  &           0 & 1
end{bmatrix} with theta=44.537deg is obtained with
hat e_3=(0.451272,-0.079571,0.888832)

The quaternion relative this new system is then

(0, 0, 0.378951, 0.925417) = (0, 0, sinfrac{theta}{2}, cosfrac{theta}{2})

Instead of making the three Euler rotations

10 deg + 20 deg + 30 deg

the same orientation can be reached with one single rotation of size 44.537 deg around hat e_3

Reference

  • .
Search another word or see Rotation operator (vector space)on Dictionary | Thesaurus |Spanish
Copyright © 2014 Dictionary.com, LLC. All rights reserved.
  • Please Login or Sign Up to use the Recent Searches feature
FAVORITES
RECENT

;