0% found this document useful (0 votes)
107 views25 pages

A Review of Attitude Kinematics For Aircraft Flight Simulation

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
107 views25 pages

A Review of Attitude Kinematics For Aircraft Flight Simulation

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 25

(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

' CO
AOO-37259
AIAA-2000-4302

A Review of Attitude Kinematics for Aircraft Flight Simulation*


W. F. Phillips1
C. E. Hailey*
Utah State University, Logan, Utah 84322-4130
G. A. Gebert§
Sverdrup Technology, Inc., Eglin AFB, Florida 32542

Abstract e = conjugate of Euler-Rodrigues quaternion


This paper presents the development of the aircraft CQ - scalar component of Euler-Rodrigues
kinematic transformation equations in terms of four quaternion
different attitude representations, including the well- ex = ^-component of Euler-Rodrigues
quaternion
known Euler angles, the Euler-axis rotation parameters, ey - _y-component of Euler-Rodrigues
the direction cosines and the Euler-Rodrigues quater- quaternion
nion. The emphasis of the paper is directed at the appli- ez = z-component of Euler-Rodrigues
cation of the quaternion formulation to aircraft flight quaternion
simulation. Results are presented which reinforce the g = acceleration of gravity
observation that the quaternion formulation, typically I* = unit vector in the z-direction, earth-fixed
implemented to eliminate the singularities associated coordinates
with the Euler angle formulation, is far superior to the iy - unit vector in the ^-direction, earth-fixed
other commonly used formulations based on computa- coordinates
tional efficiency alone. A development of the quater- iz = unit vector in the z-direction, earth-fixed
nion constraints necessary to independently constrain coordinates
roll, pitch, yaw, bank angle, elevation angle, and/or \Xb = unit vector in the ^-direction, body-fixed
azimuth angle is presented. For verification of coordinates
simulation codes, a general closed-form solution to the iyb - unit vector in the ^-direction, body-fixed
quaternion formulation, for the special case of constant coordinates
rotation, is also presented. Additionally, the paper iZb - unit vector in the zfe-direction, body-fixed
provides a discussion of the numerical integration of the coordinates
quaternion formulation. This discussion is especially k = gain coefficient
important for simulations that may still utilize a p - rolling rate, body-fixed coordinates
common error reduction scheme originally developed
q - pitching rate, body-fixed coordinates
for analog computers. The paper includes a detailed
review of the literature on attitude representation dating r = yawing rate, body-fixed coordinates
from the early work of Euler and Hamilton to recent Q = arbitrary quaternion
publications in fields such as navigation and control. Q* = conjugate of arbitrary quaternion
2o = scalar component of arbitrary quaternion
Nomenclature Qx - z-component of arbitrary quaternion
A = arbitrary quaternion Qy = ^-component of arbitrary quaternion
B = arbitrary quaternion Qz = z-component of arbitrary quaternion
[C] = direction-cosine matrix T = temporary quaternion
D - temporal differential operator T0 - scalar component of temporary quaternion
E = Euler axis vector Tx = z-component of temporary quaternion
Ex = ^-component of Euler axis vector Ty = ^-component of temporary quaternion
Ey = y-component of Euler axis vector Tz - z-component of temporary quaternion
Ez - z-component of Euler axis vector t - time
e = Euler-Rodrigues quaternion Vw = wind vector

Copyright © 2000 by the American Institute of Aeronautics and Astronautics, Inc. All rights reserved.
1
Professor, Mechanical and Aerospace Engineering Department. Member AIAA.
* Associate Professor, Mechanical and Aerospace Engineering Department. Associate Fellow AIAA.
§
Technical Fellow, Aerodynamics. Senior Member AIAA.
1
American Institute of Aeronautics and Astronautics
(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

V\vx — ^-component of wind , earth-fixed gimbal lock. As a result, alternative methods for
coordinates relating non-inertial coordinates to inertial coordinates
Vwy - y-component of wind , earth-fixed have been developed. One such formulation employs
coordinates quaternion algebra to remove the singularity.
Vwz = z-component of wind , earth-fixed Several mechanics textbooks introduce quaternions
coordinates as part of the treatment of generalized rigid-body
V = airspeed vector motion.1'2 Quaternions are applied to a diverse set of
u = axial or ^-component of airspeed, body- rigid-body motion problems ranging from simulations
fixed coordinates of nanotechnology,3 underwater tethers,4 vehicle
v = sideslip or jvcomponent of airspeed, body- navigation,5'6 robotics,7"11 molecular dynamics,12
fixed coordinates electromagnetic fields13 to computer visualization and
w - normal or zj-component of airspeed, body- animation.14"16 In the early 1990's, Chou17 published a
fixed coordinates review article on quaternion kinematics for the robotics
v = arbitrary vector community. Also published in the early 1990's,
vXb - jc-component of arbitrary vector, body- Shuster18 provides a review of vector/matrix algebra
fixed coordinates and attitude representations used by the spacecraft
"Vb = ^-component of arbitrary vector, body- community including Euler angles, direction cosines,
fixed coordinates axis-azimuth representations, Euler-Rodrigues symmet-
vZb - z-component of arbitrary vector, body- ric parameters, Rodrigues or Gibbs parameters, and
fixed coordinates Cayley-Klein parameters.
vx = jc-component of arbitrary vector, inertial What is lacking is a current, thorough review of
coordinates attitude kinematics directed primarily toward the
vy = j-component of arbitrary vector, inertial aircraft simulation and modeling community. To
coordinates support this point of view, a survey of recent and
vz = z-component of arbitrary vector, inertial classic introductory atmospheric flight mechanic
coordinates textbooks shows no19"31 or very limited32'33 discussion
x = jc-coordinate, inertial coordinates of quaternions, despite the wide use of the quaternion
y - y-coordinate, inertial coordinates formulation in simulating aircraft motion.34'35 The need
z = z-coordinate, inertial coordinates for a review of attitude kinematics for the aircraft
Xb = ^-coordinate, body-fixed coordinates community is underscored by the use of quaternion
yb = y-coordinate, body-fixed coordinates integration schemes employed on today's digital
Zb - z-coordinate, body-fixed coordinates computers, which were developed originally for analog
5t = time step simulations in the 1950's and early 1960's. An early
e - orthogonality error application of quaternions to analog computer
CO = angular velocity vector simulation of aircraft and missile motion was developed
6> = total rotation angle by Robinson36'37 and popularized by Mitchell and
(p = general Euler angle Rogers.38 Since these analog computer simulations
(j> = Euler bank angle or roll attitude were inherently first-order, the raw quaternion
6 - Euler elevation angle or pitch attitude formulation did not work well. When such simulations
t/A = Euler azimuth angle or heading were run, the magnitude of the quaternion would grow
quite rapidly with time. Since the formulation requires
Introduction the magnitude of the quaternion to remain unity, these
The numerical simulation of motion with six degrees- large errors would render the simulations almost
of-freedom (6-DOF) is important in many areas of useless. To remedy this problem, techniques were
modern technology, ranging from computer animated developed to reduce this computer error. One error
film making to the development of aircraft and reduction scheme, due to Corbett and Wright,39 worked
spacecraft flight simulators. For these varied appli- quite well when used with the analog computers of that
cations, there is a need to describe both position and era. It is no longer necessary with the higher-order
orientation in either an inertial coordinate system or a integration techniques available on today's digital
non-inertial coordinate system. With specific applica- computers. However, the Corbett-Wright correction is
tion to aircraft flight, one common method for describ- still presented as necessary in the development of
ing attitude is through the use of Euler angles. The quaternion kinematics in recently published aeronautics
Euler angle formulation contains a singularity known as textbooks.33'40

American Institute of Aeronautics and Astronautics


(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

vectors between non-inertial coordinates and inertial


coordinates is required.

West North The Euler Angle Formulation


The orientation of the non-inertial reference frame
relative to the inertial reference frame can be described
in terms of three consecutive rotations through three
body-referenced Euler angles. There are twelve
possible ways to define three independent body-
referenced Euler angles. Starting from the inertial
reference frame, three consecutive rotations are
performed, each about one of the three body-referenced
axes, to arrive at the final non-inertial reference frame.
South zh East The only restriction required to provide three degrees of
freedom is that no two consecutive rotations can be
about the same axis. With this restriction, there are six
symmetric sets of Euler angles,
West North

(py

and six asymmetric sets,

South East (py,

Any of these twelve Euler angle sets can be used for


attitude representation. For example, orbital mechanics
Fig. 1. Comparison between the Euler angle rotations and the quantum theory of angular motion use primarily
and the Euler axis rotation. the (pz —> (px —> q)z formulation.41'42 The rotation matrix
for each of the twelve sets of Euler angles are presented
by Tandon.43 Graphical methods to illustrate the Euler
In simulating 6-DOF aircraft motion, Newton's angle transformations are also available.44"46
second law is most conveniently written in terms of a The aeronautics community commonly uses the last
non-inertial coordinate system fixed to the moving of the above rotation sequences, (pz—^(py-^ (px. These
aircraft. Position and orientation are most conveniently three Euler angles, commonly written y, 6, and 0, are
described in terms of an earth-fixed coordinate system, respectively the azimuth angle or heading, the elevation
which for all practical purposes can be considered to be angle or pitch attitude, and the bank angle or roll
an inertial coordinate system. Here the inertial or earth- attitude. For this particular set of Euler angles, the
fixed coordinate system will be designated (x, y, z) and orientation of the body-fixed frame, (xb, yb, zb~), relative
the non-inertial or body-fixed coordinate system will be to the earth-fixed frame, (x, y, z), is described by
designated (xb, yb, Zh)- The orientations of these two performing the three consecutive rotations in the
coordinate systems relative to the earth and the aircraft specific order as follows. First, the earth-fixed frame is
are shown in Fig. 1. The position of the aircraft is rotated about the z-axis through an angle, iff. Next, the
specified by the location of the origin of the non-inertial revolved reference frame is rotated about the new ;y-axis
frame with respect to the inertial frame and the through an angle, 6. Finally, the revolved reference
orientation of the aircraft is specified in terms of the frame is rotated about the new jc-axis through an angle,
orientation of the non-inertial frame relative to the <j), to arrive at the final body-fixed reference frame.
inertial frame. To develop a complete 6-DOF This set of Euler angles is shown in Fig. 1. Readers
formulation, some means of transforming arbitrary should be cautioned that other rotation sequences have

American Institute of Aeronautics and Astronautics


(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

been associated with the aeronautics community, for


example <pz —> (px —» <py .47
With the usual Euler angle definitions, consider an
arbitrary vector v having components (vx,vy,vz) in
(4)
the inertial coordinate system and having components — C^Sy/ C0 Sg Cyf + S0

( v x t , vyb, vZb) in the non-inertial coordinate system. +C0Cyf C0O0iJyf — O 0


Using the notation Sx = sinQf) and Cx = cos(%), the
S(j> Cg C0Q)
transformation of this vector from inertial coordinates
to non-inertial coordinates is given by29-43-48'49
where the dot over a variable indicates the usual
derivative with respect to time. The two vectors on the
right-hand side of Eq. (4) are respectively the wind
vector written in earth-fixed coordinates,

"l 0 0" 'Cg 0 -50" » w -~ V


V v
wxlix ~+V
v
wl i ~+V
v
wzl i (5)
f-i j~* r\
0 ^0 O0 0 1 0 — i>y Cv 0 • Vy

0 — 50 C0 50 0 Cg _ 0 0 1 vz and the airspeed vector, which is written in body-fixed


coordinates,
" CgCy CgSv -So'lv,
50 50 Cy — C0 Siy 50 50 S\i/ + C0 C^ 50 Cg <Vy • (1) V = u\X (6)
C050Cy, +505^ C05g5v/- — S,j>Cy C0C0 \vz
The relationship between the non-inertial angular
Since, Newton's second law is to be written in terms of rates and the time rate of change of the Euler angles
the non-inertial coordinate system, the gravitational is,23,29
vector must be expressed in non-inertial coordinates.
Applying Eq. (1) to the gravitational vector produces 0 1 50S0/C0 C050/C0 P
e•
*
= 0 C0 -50 q (7)
v^ 0 50 /C0 C0/C0 r

where the vector on the far right-hand side of Eq. (7) is


Cg Cv the angular velocity vector written in body-fixed
coordinates,
(2)
(8)

Equations (4) and (7) together provide the kinematic


transformation equations in terms of Euler angles,
which allow us to update the position and orientation of
the aircraft with time. The gimbal lock singularity is
The inverse of the transformation matrix in Eq. (1) is
seen in the last two terms of the first and last rows of
its transpose, making
Eq. (7). When the Euler elevation angle, 9, is ±90°
these four terms go to infinity and the Euler angle
integration becomes indeterminate. Combining Euler
angle sequences can sometimes yield a singularity that
is difficult to observe from a cursory inspection of the
C0 Sg Cy + o^ o <//
(3) equations. Junkins and Shuster50 propose a scheme
Cg Cif/ Sij) Sg C\/f —
involving spherical trigonometric relations to provide a
clearer picture of the singularities. Alternate
— Sg spacecraft-attitude dynamics models have been
proposed which eliminate the Euler angle
and from Eq. (3), the ground speed is related to the singularity,51'52 although the aircraft community has not
airspeed by adopted them.

American Institute of Aeronautics and Astronautics


(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

The Direction Cosine Formulation It should be noted that there is no standard


The direction-cosine matrix can be formed from any convention for numbering the direction cosines. Here,
of the symmetric or asymmetric Euler angles sets.53 the numbering in Eq. (9) has been defined relative to
For example, the matrix on the right side of Eq. (1) is a the forward transformation, from earth-fixed
direction-cosine matrix. One way to avoid the coordinates to body-fixed coordinates. This is the most
singularity in Eq. (7) is to treat the nine components of commonly used notation.18'54"56 However, other authors
this matrix as a fundamental description of orientation. have numbered the direction cosines relative to the
The elements of this matrix are called the direction inverse transformation, from body-fixed coordinates to
cosines. If these nine direction cosines are known, the earth-fixed coordinates.33 One notation is simply the
components of an arbitrary vector in body-fixed transpose of the other. Nevertheless, the reader should
coordinates are quite simply related to the components be careful to observe which notation is being used when
of the same vector in inertial coordinates through the reviewing a publication or simulation code.
definition of the direction-cosine matrix, [C], There are only three degrees of freedom associated
with orientation. However, there are nine components
C\\ C\i Ci3 in the direction-cosine matrix. Thus, these nine
C2i C22 C23 (9) components cannot be independent. There must be six
levels of redundancy associated with this formulation.
C3i C32 C33 It can be shown that rigid-body rotation is a proper
orthogonal transformation.57 Therefore, the direction-
and the gravitational vector, expressed in body-fixed cosine matrix is proper orthogonal and the inverse of
coordinates, is the direction-cosine matrix must be its transpose,56'57
[C]" = [C] . This requires the constraints

Syb = g C23 (10) =1.


C33 + C22 + C32 = 1,
+ C33 = 1, (13)
The inverse of the direction-cosine matrix is simply its
C\ = 0,
transpose, so the ground speed is related to the airspeed
by = 0,
+ C32C33 = 0
X vwx C\\ Ci\ C3J M
These six constraints are usually called the redundancy
y • = • •tr* wy • + Ci2 C22 C32 V (11)
relations. Mathematically, Eq. (12) preserves the
z V v
wz _Q3 C23 C33 _ w orthogonality of the direction-cosine matrix. However,
errors associated with integrating Eq. (12) numerically
When the body-fixed reference frame is undergoing can cause degradation in the orthogonality of the
rotation, the elements of the direction-cosine matrix are matrix. Furthermore, these orthogonality errors can
functions of time. To complete the kinematic build up with time during the simulation. A method for
formulation in terms of direction cosines, a set of avoiding this error buildup with the direction cosine
differential equations relating the temporal derivatives formulation was first developed by Corbett and
of the nine elements of the direction-cosine matrix to Wright39 and is still commonly used today.
the body-fixed angular rates is required. These nine The direction cosine formulation contains no singu-
equations, known as Poisson's kinematic equations, can larities and is frequently used by the aeronautics
be written in matrix form as52'53 community58 to avoid the possibility of gimbal lock.
However, numerical integration of Eq. (12) is exces-
"Cn Cn Cl3 sively time-consuming and a severe computational
CU = penalty is paid for its use.
€22 C23
_C3i C32 C33 The Euler Axis Formulation
(12)
"0 r -q Cn Cl2 Cl3~ The orientation of the non-inertial reference frame
relative to the inertial reference frame can be described
-r 0 p C21 C22 C23
in terms of a single rotation through an angle, ©, about
_q -P 0 C3i C32 C33_ a particular axis, E, which is commonly called the

American Institute of Aeronautics and Astronautics


(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

Euler axis or the eigenaxis. A comparison between gxb


this Euler axis rotation and the Euler angle rotations (17)
Syb
that are commonly used by the aircraft community is
shown in Fig. 1.
The Euler axis rotation gives rise to a four component
description of orientation. The four components in this The inverse of the transformation matrix in Eq. (16) is
description are the total rotation angle, 0, and the three obtained by simply rotating through the negative of the
components of a vector directed along the Euler axis, total rotation angle that is used in the forward
£„ Ey, and Ez. Since these four parameters describe an transformation, 54
orientation having only three degrees of freedom, there
must be some redundancy in the Euler axis description
as well. In fact, by describing orientation in this
manner, a fourth mathematical degree of freedom has
been introduced. Clearly, the vector describing the (18)
orientation of the Euler axis could be of any arbitrary EX* + C0 Eyy —— EZS0 Exz + EyS0

length. To remove this additional mathematical degree P _L F C P _i_ f~* F _ F C

of freedom, a constraint must be applied, fixing the &xz ~ &y^& Eyz + EXOQ E££ + C0
magnitude of the Euler axis vector. While this
constraint is somewhat arbitrary, the usual and most
Thus, the ground speed can be related to the airspeed
obvious solution is to require the Euler axis vector to be
through
of unit magnitude,
Vm
= 1 (14)
v,Wy

During the Euler axis rotation the orientation of the 'W


(19)
Euler axis is invariant. Thus, the vector, E, directed Exy ~EZS0 syS0

along the Euler axis has the same components in both i ~H EZS0 Eyy + C®
inertial and non-inertial coordinates,
F
*-* TC? — *-*
FV + EXS0 EZZ + C0

The relationship between the non-inertial angular rates


(15) and the time rate of change of the Euler axis rotation
parameters is given by

The components of an arbitrary vector, v, in body- 0 2E 2EZ


fixed coordinates are related to the components of the E'xx + C/S E'xy - Ez E'xz + Ey
Ex
same vector in eath-fixed coordinates through what is
Ev F' -F'-'x
'-•yz
commonly called Euler's formula60
E'yy+C/S

F' - '-'y
'-'xz F E' + Er

(20)

where Ey = -£,-£/ C/S , 5=sin(@/2), and Ocos(6>/2).


(16) Equations (19) and (20) are the kinematic
Exy + EZS0 EK - EyS0 transformation equations in terms of the Euler axis
~ EZS@ Eyy + C0 Eyz + EXSQ
rotation parameters. Notice that Eq. (20) also has a
singularity. When the total rotation angle, O, is zero,
Eyz ~ EXS0 E
the integration of these equations is indeterminate.

where Ey = EiEj(l-Cg). Since the early work of Euler, The Euler-Rodrigues Quaternion
a number of papers have been written on the derivation Formulation
of equation (16).61'67 The Euler-Rodrigues formulation is related to the
From Eq. (16) the gravitational vector expressed in Euler axis formulation through a simple change of
non-inertial coordinates is variables. The four parameters in the Euler axis

American Institute of Aeronautics and Astronautics


(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

description of orientation are used to define four In 1840, four years before Hamilton began his
different parameters, which are somewhat more algebraic study of quaternions, Olinde Rodrigues69
convenient. These four new parameters are defined as published his work on the Euler-Rodrigues symmetric
parameters, the rules for the compositions, and a
eo cos(0/2) geometrical construction for combining two rotations.
ex Ex sin(0/2) Unlike Hamilton, whose accomplishments are well
(21) documented, the only published factual article on
ey Ey sin(6>/2)
Rodrigues did not appear until 1980.89 Earlier
e
z. Ez sin(@/2) historians have invented a collaborator of Rodrigues by
the name of Olinde90'91 or have mistaken his name as
These four parameters are known as the Euler- Rodrigue92 or Rodriques.93 Additional historical details
Rodrigues symmetric parameters''^ or the quaternion can be found in Kline,94 Van der Waerden,95 Crowe,96
of finite rotation.70 The Euler-Rodrigues formulation and McDuffee.97
for rigid body kinematics was developed well before There is no universal agreement on the choice of
1844, when the well-known mathematician William R. indices for the Euler-Rodrigues symmetric parameters.
Hamilton first developed the quaternion and the Most authors use the indices 1 through 4 or 0 through 3.
detailed theory of a noncommutative algebraic system Some authors have chosen indices 1 through 3 for the
known as quaternion algebra.71"73 Much has been vector components while using 4 as the scalar
written about the life of Hamilton74"76 and his moment index,18'98'99 whereas others have used 1 for the scalar
of enlightenment concerning quaternion formulas while index and 2 through 4 for the vector component.100 The
crossing a bridge with his wife. Hamilton, in a letter to scalar index has also been chosen as 0 with indices 1
his son, noted he could not resist the impulse to carve through 3 denoting the vector components.15'17'38'101"106
the fundamental quaternion formula into the stone on There is not even universal agreement on the order of
the bridge. However, it is clear that Hamilton did not the vector components. Whereas most authors assign
develop quaternion algebra as means of describing the x- y- z-components in ascending order, at least two
rotational transformations. authors have used 4 to denote the ^-component, 3 for
The brief review of the history of the Euler- the ^-component, and 2 for the z-component.34'37 To
Rodrigues formulation that is presented here is taken avoid confusion in the present paper, the vector
primarily from Altmann,77'78 Shuster,18 and Cheng and components are explicitly labeled using the subscripts
Gupta.79 In 1758 an early work of Euler80 showed that x, y, and z while a 0 subscript is used to denote the
any differential movement of a rigid body can be scalar component.
expressed as a translation and a rotation about some Since the four parameters defined by Eq. (21)
specific axis. Euler's theorem on the motion of a rigid uniquely describe an orientation having only three
body,59 as well as Euler's formula60 were both degrees of freedom, these four parameters must be
published in 1775. The first publication of the related in some way. This relation is easily seen by
derivation of the Euler angles81 was in 1862. Although squaring the four components of Eq. (21) and adding
the work was published posthumously, the date is them together. This gives
probably in error as Euler died in 1783.
Whether Euler knew of the Euler-Rodrigues
symmetric parameters is a subject of debate. In 1770, (22)
Euler68 developed four symmetric parameters for
orthogonal transformations (without the use of half
angles). Roberson82 and Jacobi83 argue that Euler had Since the Euler axis vector, E, is a unit vector and
presented a rotation matrix in terms of the so-called cos2(%) + sin2(%) = 1, it follows that
Euler-Rodrigues parameters. Shuster18 notes that the
symmetric parameters developed by Euler in the 1770 eo+e2+e2+e2 = 1 (23)
paper contained sign errors and formed an improper
orthogonal matrix. It is important to note that Euler The transformation in Eq. (16) can be written in
viewed a matrix as a table. The matrix as mathematical terms of half the total rotation angle by applying the
object would not evolve until vector space was studied trigonometric identities, sin(%) = 2sin(^/2)cos(^/2),
by Grassman84'85, Gibbs86 and Heaviside.87 As a side cos(;t) = cos2Ct/2) - sin2(;t;/2) and 1- cos(%) = 2sin2(#/2).
note, the chief properties of vectors were worked out in Thus, using the notation S = sin(®/2), C = cos(<9/2), and
Hamilton's investigation of quaternion algebra.88 Ey - 2EiEjS2, Eq. (16) can be rewritten as

American Institute of Aeronautics and Astronautics


(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

r
•* V
' wx
y- = -vwy- +
z vwz
Ci_y7 ^ijy'J^-'
e x~-\-KPr\
0 — KPy —ePz /(Pe cP
^\ x y c KPf\~\
—'P
z 0/ /(pK K P
*-\ X Z
2 2
-2EZSC Eyy+C -S E^ + 2EXSC •Vy ' 2(exey+ezeo) ey+eQ—ex—ez 2(eyez
2 2
Exz+2EySC Eyz-2ExSC 2(exez-eye0) 2(eyez+exe0) ez+eo
(24) (u
X-\ V (28)
Now, applying Eq. (21) and recognizing that E^ =
and S2=(E2+E2+E2)S2=e2+ey+e2, Eq. (24) ,^A( \W

becomes
The time rate of change of the Euler-Rodrigues
v
symmetric parameters can be related to the time rate of
*t change of the Euler axis rotation parameters.
=
Vyt Differentiating Eq. (21), produces

eo ' -sin(0/2) ' 0


ex+eo-e2- e2 2(exey + eze0) 2(exez ~eye0)
Ex cos(0/2) Ex sin(0/2)
2(exey-ezeo) ey+eo~ex-ez 2(eyez+exeo) • (29)
2(exez+eye0) 2(eyez-exe0) e2z + el - el - e2
ey
• = •
Ey cos(0/2) f- Ey sin(0/2)
Ez cos(0/2) £ z sin(0/2) j

(25) Using Eq. (20) to express the time rate of change of the
Euler axis rotation parameters in terms of the non-
inertial angular rates, Eq. (29) can be written as
The transformation equation given by Eq. (25) can be ^ 1C1 C" Tf C" C1 O
0 x y z
ased to obtain the gravitational acceleration vector in P
jody-fixed coordinates, ex _ 1 l_* L.J Z*J CtyLJ

q (30)
ey 2 EZS C — EXS
r
8xb 2(exez-eye0) A _-EyS EXS C
8yb = g- 2(eyez+exe0) (26)
e2+e^-e2-e2 or after applying Eq. (21)
§u.

eo -ex -ey -ez


The inverse of the transformation matrix in Eq . (25) is P
ex . 1 eo ~ ez ey
ey
=
2 ez eo — ex
q (31)
r
= e
z 6y £j( €Q

_, Since Eq. (31) islinear in both the non-inertial angular


e2+eo-e2- e2 2(exey -eze0) 2(exez + eye0) rates and the Euler-Rodrigues symmetric parameters, it
2(exey+eze0) ey+eo-e - e 2 2
2(eyez - exe0 ) can as well be written as105'106
2
2(exez-eye0) 2(e e
y z +e e
x 0 ) e + el-e2x-e2y
so 0 -p -q -r eo
fVx ix — 1 p 0 r -q ex
H21
V-'-'^v
x I (27) (
iy 2 q -r Q p ey
U iz_ r q -p Q e
z

So the ground speed is related to the airspeed by Equations (28) and (31) or (32) provide the kinematic

American Institute of Aeronautics and Astronautics


(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

transformation equations in terms of the Euler- mathematical rule set, first introduced by Hamilton.71
Rodrigues symmetric parameters. To demonstrate this computational advantage, a brief
Robinson37 detailed the advantages of the Euler- introduction to quaternion algebra is presented here.
Rodrigues quaternion formulation over the Euler angle
or the direction cosine formulation almost fifty years Quaternion Algebra
ago. Most of his observations, obtained on analog A general quaternion, Q, is defined as
computers, are still valid in the digital world. When the
Euler elevation angle, 6, is ±90°, the Euler angle Q = Qo+Qxi*+Qyiy+Q (33)
integration becomes indeterminate. Despite the
singularity, the Euler angle formulation is widely used where Q0, Qx, Qy, and Qz are scalars and ix, iy, and iz
because the three Euler angles have the simple
are unit vectors in the Cartesian Jt-, y-, and z-directions
interpretation of heading, elevation angle, and bank
respectively. A quaternion has both vector and scalar
angle. 109,110 The Euler-Rodrigues formulation is free of
properties. Vectors and scalars can be thought of as
singularities, however, the physical interpretation of the
special cases of the more general quaternion. A scalar
quaternion is much less intuitive than that associated is a quaternion with Qx, Qy, and Qz equal to zero and a
with the Euler angles. In a mathematical study, vector is a quaternion where Q0 equals zero.
Stuelpnagel100 considered parameterization of a general For quaternion multiplication, a procedure called the
three-parameter rotation group, four-parameter rotation quaternion product is defined. Since a vector is a
group, and five- and six-parameter groups. He proves special case of a quaternion, care should be taken to
that the three-parameter rotation group leads to distinguish the quaternion product from either the dot
nonlinear kinematic equations and that the Euler-
product or the cross product. Here, the quaternion
Rodrigues symmetric parameters represent the smallest product will be indicated using the operator, ®. The
number of parameters (four) with linear kinematic quaternion products of the usual Cartesian unit vectors
equations. Errors associated with numerical integration are defined according to the following rule set:
of the kinematic equations for attitude have been
characterized for both the quaternion and the direction
cosine parameterizations and the superiority of the
1.,.®!^=-!, T»®T y sT z , T,®T z =-T y
•* •* ' - * / < , ' -v ^, y

quaternion parameterization is well documented.104'110" y x z* y y * y z x» \ /


115
Lovren and Piper116 show that, for the isolated case iz®ix='iy, iz®iy=-ix, ~iz®iz=-l
of classical coning motion, integration errors are similar
for the direction-cosine parameterization and the
quaternion parameterization. Another advantage of the The quaternion product simply follows the distributive
Euler-Rodrigues formulation is the application of law. Thus, the quaternion product of one quaternion,
Kalman filtering to quaternion estimation.117"120 For the A, with another quaternion, B, is141
reasons stated above, the spacecraft community often
utilizes the Euler-Rodrigues formulation for attitude A®B = + Ax\x
control systems.105'121"140
Perhaps the greatest advantage of the quaternion
formulation over either the Euler angle formulation or (35)
the direction-cosine formulation is increased computa- + AXB0 + AyBz - AzByY\x
tional speed. Numerical integration of the nine compo- - AXBZ + AyB0 + AzBx)iy
nent direction-cosine formulation is excessively time-
consuming when compared with the four component + AxBy - AyBx + AZB0)1Z
Euler-Rodrigues formulation. The trigonometric func-
tions in the Euler angle transformation matrix make The quaternion products defined in Eq. (34) are nearly
simulations that use this nonlinear formulation much like cross products, following the right hand rule.
more computationally intensive than those using the However, special treatment is given to the quaternion
linear equations of the quaternion formulation. Further- product of a unit vector with itself. It should also be
more, the computational advantage of the quaternion noted that, in general, A ® B ^ B ® A so the quaternion
formulation can be extended even further through use product is not commutative. Also notice that the
of Hamilton's quaternion algebra. While the Euler- quaternion product reduces to simple multiplication for
Rodrigues formulation was originally developed before the special case when either operand is a scalar.
quaternion algebra was conceived, the most computa- However, it does not reduce to either the dot product or
tionally efficient algorithms are in fact based on this the cross product when both operands are vectors.

American Institute of Aeronautics and Astronautics


(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

In general, the quaternion product of two simple vectors T = v®e =


is a four-component quaternion, equal to the negative of (-vxex-vyey-vzez)
the dot product added to the cross product,
+ (vxe0+vyez-vzey)ix (41)
A®B = -(AxBx+AyBy+AzBz) + (-vxez+vye0+vzex)iy
+ (AyBz-AzBy)ix + (vxey-vyex+vze0)iz
(36)
+ (AzBx-AxBz)iy
b = e*®T =
+ (AxBy-AyBx)iz = -A B + AxB
(e0Tx - exT0 - eyTz + ezTy) iXb
(42)
Quaternions not only have properties of scalars and + (e0Ty+exTz-eyT0-ezTx)iyb
vectors, but quaternion algebra also has similarities to + (e0Tz - exTy + eyTx -ezT0) iZb
complex algebra. The magnitude of a quaternion is
defined similar to that of a complex number or a vector, The advantage of Eqs. (41) and (42) over Eq. (25) is
a matter of reduced computation time. The rotational
|Q| = v<2o2 + Ql + Qy + Ql (37)
transformation as expressed in Eq. (25) requires 39
multiplications and 21 additions. On the other hand,
Also, a conjugate of a quaternion is defined as, computing the same transformation from Eqs. (41) and
(42) requires only 24 multiplications and 17 additions.
This translates to a significant computational saving.
Q* = Go-GA-GA-GA (38)
For typical modern computers, the transformation
computed from Eq. (25) requires about 50 percent
where the asterisk indicates a quaternion conjugate. greater computation time than does that computed from
Using Eq. (38) with Eq. (35) produces Eqs. (41) and (42). This can be quite significant in a
flight simulator, which requires a very large number of
Q ® Q* = Ql + Ql + Q] + Ql = |Q|2 (39) such transformations for the visual display.142
For aircraft that are not all-attitude vehicles, such as
transports, helicopters, and roll-stabilized missiles,
Thus, similar to a complex variable, the quaternion Euler angles are often used to compute attitude because
product of a quaternion with its conjugate generates a the singularity is not encountered.143 However, the
scalar equal to the square of the magnitude of the computational advantage of the quaternion transforma-
quaternion. tion is even more impressive when compared with the
The four Euler-Rodrigues symmetric parameters can Euler angle transformation given by Eq. (1). Even
be thought of as the four components of a particular
when the trigonometric functions in Eq. (1) are
unit quaternion, e , having components ( BQ , ex , ey , ez ), evaluated only once, the transformation computed from
which uniquely specifies the orientation of the non- Eq. (1) requires about 11 times as long to evaluate as
inertial coordinate system relative to the inertial the quaternion transformation computed from Eqs. (41)
coordinate system. Furthermore, the rotational and (42). Thus, even ignoring the singularity in the
transformation given by Eq. (25) can also be expressed Euler angle formulation, the quaternion formulation is
in terms of quaternion products. Let v be an arbitrary far superior to the Euler angle formulation, based on
vector having quaternion components ( U, vXb , vyb , vZb )
computational efficiency alone.
in the non-inertial coordinate system and having In the mid-1980s, algorithms were developed, which
quaternion components ( U, vx , vy , vz ) in the inertial further reduced the computation time for quaternion
coordinate system. The components of v in non-
multiplication on the hardware available at that time.
inertial coordinates are related to the components of v For example, Dvornychenko,144 based on the work of
in inertial coordinates through the quaternion Winograd, 145,146 presented two algorithms that were
transformation17 claimed to reduce computation time. The first of these
algorithms requires 11 multiplications and 19 additions.
\b = e*®(v®e) (40) The second requires 10 multiplications and 26 addi-
tions. This compares to 16 multiplications and 12
Expanding Eq. (40) using Eq. (35), the orthogonal additions for the conventional quaternion multiplication
transformation can be written as a two step process described in Eq. (35). The hardware available at that
using a temporary quaternion, T, time required something on the order of 5 instruction
10
American Institute of Aeronautics and Astronautics
(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

cycles for multiplication and only 1 cycle for addition. This matrix equation provides nine scalar equations
Thus, trading 5 multiplications for 7 additions would relating the four components of the Euler-Rodrigues
result in a significant reduction in computation time, for quaternion, e, to the three Euler angles, <j>, 6, and \jf.
the hardware of that era. However, typical modern However, the nine components of the matrices on both
hardware requires only 1 instruction cycle for sides of Eq. (44) each describe a rotation having only
multiplication and 1 instruction cycle for addition. three degrees of freedom. Thus, there are six levels of
Thus, the algorithms that were developed in the 1980s redundancy in Eq. (44). Additionally, Eq. (23) must
to speed up quaternion transformations will actually also be satisfied, which simply requires that e be a unit
slow down the transformations when used with today's quaternion. The three degrees of freedom in Eq. (44)
hardware. As late as 1993, Schuter18 has claimed that combined with the requirement in Eq. (23) provide
these algorithms will speed up the transformations. For exactly the four degrees of freedom needed to solve for
simulations run on modern hardware, these old the four components of the quaternion e .
algorithms should be replaced with the more straight- Combining the diagonal components of Eq. (44) with
forward algorithm specified by Eq. (35). the requirement for a unit quaternion expressed in Eq.
The system of differential equation, which governs (23), a four by four system of algebraic equations for
the change in the transformation quaternion with time, the squares of the quaternion components is obtained,
can also be written in terms of a quaternion
product.99'147 This differential system, specified by 1 1 - 1 - 1
either Eq. (31) or Eq. (32), can be written as
1 - 1 1 - 1
(45)
e = (43)
1-1-1 1 C0C0
1 1 1 1 1
where 0) is the angular velocity vector in body-fixed
coordinates, as defined by Eq. (8). Writing the This system is readily solved by elimination to give
quaternion differential equation in this form provides
no computational saving over the matrix form given by
Eq. (32). From Eq. (35), it is observed that the 1—C0C0 —
quaternion product in Eq. (43) requires 16 multiplica- (46)
\-CgCy —C<pCg
tions and 12 additions. This is exactly equivalent to
that required for the matrix multiplication in Eq. (32). 1 — CgCy + C0C0
However, the matrix multiplication in Eq. (31) requires
only 12 multiplications and 8 additions. Thus, the Applying the half angle identities, Eq. (46) is written as
temporal derivative of the transformation quaternion
should always be computed from Eq. (31).
(C0/2C0/2CV/2

Relationships between the Quaternion (•S0/2C0/2CV/2 -C0/2Sg/2S v /2~)


(47)
and other Attitude Descriptors
The physical interpretation of the Euler-Rodrigues
quaternion is much less intuitive than that associated
with the Euler angles. For this reason it is convenient
to be able to relate the quaternion to the Euler angles. Each of these component equations has two possible
Such a relation can be obtained by combining Eqs. (1) solutions so the signs are indeterminate at this point.
and (25). These two equations require The off-diagonal components of Eq. (44) may be
extracted to produce
e +e - e - 2(exey 2(exez - eye0 )
2
"0 0 2 2 0 0" CgSy
2(exey-eze0) ey - e x - e\ 2(eyez+exe0)
0 0 -2 2 0 0
2(exez + eye0) 2(eyez - exe0 )
0 -2 0 0 2 0 e0ez -Sg
Cg Cy Cg Sy — Sg 0 2 0 0 2 0 f J- C C
L/y/ ~T O0O

50 Sg Cy — C0 Sy 50 50 5y + C0 Cy S0 C0 2 0 0 0 0 2 50 C0
-2 0 0 0 0 2
(44) (48)
11
American Institute of Aeronautics and Astronautics
(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

This simple algebraic system is easily solved by adding The inverse of Eq. (51) is obtained from Eq. (44) as
and subtracting appropriate pairs of equations. Re- well. This is rather straightforward and yields104
placing the first and second equations with their sum
and their difference and doing likewise with the other ^l-el-el)}
two pairs of equations results in
asin[2(e0ey-exez)] (52)
2
SijtCg —
atan2[2(e0ez -e y -e\}~\
e0ey Cip Sg Cy + S 0 Sy/ + O g

e0ez The function atan2 in Eq. (52) is a two-argument


(49) arctangent that returns a result in the proper quadrant,
CgSy
such as the atan2 intrinsic provided in Fortran and C.
Cty Sg Cy + S^ Sly — The two-argument function is not needed for the
eve, elevation angle, 9, because this angle is defined only in
the range -n/2 to n/2.
The Euler-Rodrigues quaternion is also related to the
Using Eq. (47) in Eq. (49) and applying the half angle
total rotation angle and the Euler axis components
identities, the off-diagonal components of Eq. (44)
through the definition of the Euler-Rodrigues
reduce to
symmetric parameters,

eo cos(0/2)
^, +Sg)
ex £,501(0/2)
(53)
ey Ey sin(@/2)
ez Ez sin(6»/2)

The inverse of Eq. (53) is readily found to be


(50)
S(j>Cg —
C^SgCy + S^Sy + Sg
0 2cos I ( e 0 )
CgSy —SipSgCyf +C$S\ji Ex ex/sin(0/2)
(54)
Cg Syr + SQ Sg Cy — CQ Sy
Ey ey/sin(0/2)
C^SgCy +S$Sy —Sg
E
Z. ez/sin(0/2)
S(ji Cg + C0 Sg Syr — S^ Cy
Thus, from knowledge of the four components of the
Euler-Rodrigues quaternion, the orientation of the non-
where s0, sx, sy, and sz are the unknown signs of the inertial reference frame with respect to the inertial
quaternion components from Eq. (47). Thus, the off- reference frame can be expressed as a single rotation
diagonal components of Eq. (44) provide only three about a known axis through a known angle. For non-
additional pieces of information, sos^l, soSy=l, and zero rotation angles, the three vector components of this
soSr=-l. Using these signs with Eq. (47), only two unit quaternion compose a vector directed along the
possible solutions to Eq. (44) exist, which are Euler axis. The scalar component of this quaternion is
equal to the cosine of one half the angle of rotation
Q/2C0/2CV/2 about this axis, in a direction defined by the right hand
rule. If the scalar component of this quaternion is ±1,
\- = +4 (51) the orientation of the Euler axis is indeterminate.
However, a scalar component of ±1 would indicate a
total rotation angle of zero, making knowledge of the
Euler axis unnecessary. It is important to recognize
The positive sign in Eq. (51) corresponds to the right- that, like the Euler axis vector, E, the four components
hand Euler-Rodrigues quaternion, which is based on a of the unit quaternion, e, are the same in both the
right-hand rotation about the Euler axis. The negative inertial and the non-inertial reference frames. Thus, a
sign results in a left-hand quaternion, which is not reference frame need not be specified when referring to
normally used. the components of this particular quaternion.

12
American Institute of Aeronautics and Astronautics
(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

During the 1970's the spacecraft community utilized


both the direction cosines and the Euler-Rodrigues
quaternion to describe attitude. For example, in space
shuttle steering algorithms the command attitude was Cl2-C 2 1
(57)
computed as a direction-cosine matrix, whereas the exe Cl2+C 2 1
attitude error was more conveniently described as a
quaternion.101 The quaternion was used to describe the
C 2 3+C 32
attitude error because of its simple physical
interpretation. The error axis coincides with the vector
part of the error quaternion and the total error is readily The components of the quaternion can be computed,
determined from the scalar part. To compute the error without singularities, from the direction cosines by
quaternion, the command-attitude quaternion was first using Eqs. (56) and (57). This is done by first finding
extracted from the direction-cosine matrix. Several the quaternion component of greatest magnitude from
other space shuttle flight algorithms also required the Eq. (56),
determination of an attitude quaternion from a
direction-cosines matrix. Consequently, a number of = max(eo,ex,ey,el) (58)
papers have been written on extracting the quaternion
from the direction cosines.102'148"151 The most efficient Once the component of largest magnitude has been
method was first published in 1978 by Shepperd103 and determined, the quaternion is computed from one of the
has been restated by Shuster and Natanson.98 The following algorithms:
aircraft and missile community is still using both the
direction cosines58'152 and the Euler-Rodrigues if(eo =
quaternion35'153"155 as attitude descriptors for aircraft eQ = ±
flight simulation.
The direction cosines can be expressed in terms of ex =(C 2 3-C 32 )/4e 0 (59)
the four components of the Euler-Rodrigues quaternion e y =(C 31 -C 13 )/4e 0
by equating the left-hand side of Eqs. (9) to the left- ez =(Ci 2 -C 2 i)/4e 0
hand side of Eqs. (25).

C2i C22 C23 _ ex=± VI + QI -C r 22 -C 3 3/2


_C3i C32 C33. (60)
2 2 2
ey=(Cn+C2l)/4ex
-ez 2(exey+eze0) 2(exez-ey eo)
N 2 , 2 2 2
2(e^ey - ez 2(eyez+ex «o)
2(e^ez + e y go) 2(eyez-exeo) el+eo-el -<
if(ey =ema
(55)
ey = ± l-
Combining the diagonal components of Eq. (55) with (61)
Eq. (23) provides a four by four system of equations
that is readily solved to relate the squares of the
quaternion components to the diagonal components of
the direction-cosine matrix,
if (el = e^ax ]
l + Cn+C 2 2 +C 3 3 ez = ± V1-CH-C22+C33/2
1 + Cn -C22 -C33 e 0 =(C 12 -C 21 )/4e, (62)
(56)
1 - C\ i + C22 - C33

1-Cn -C22 ey=(C23+C32)/4ez

The off-diagonal components of Eq. (55) can be Notice that, as was the case with Eq. (44), there are two
rearranged to give possible quaternions that will satisfy Eq. (55). These

13
American Institute of Aeronautics and Astronautics
(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

are the conventional right-hand Euler-Rodrigues If the roll is to be constrained as well as the bank
quaternion and the left-hand quaternion that was angle, then Eq. (67) requires
previously mentioned.
2(e0ey-exez)r - 0 (68)
Applying Rotational Constraints
to the Quaternion Formulation From Eq. (52), this is equivalent to
It is occasionally desirable to simulate aircraft motion
with one or more of the rotational degrees of freedom sin(0)r = 0 (69)
constrained. This is normally accomplished using the
Euler angle formulation. However, since the
quaternion transformation is more than an order of Here it is observed that, if both the roll and the bank
magnitude faster than the Euler angle transformation, angle are to be constrained, then either the yaw or the
the ability to apply rotational constraints to the elevation angle must also be constrained. With any
quaternion formulation may be of some interest. non-zero elevation angle, any amount of yaw will
When applying rotational constraints, the coordinate produce a bank angle. This is not a function of the
system in which the constraint will be applied must be quaternion formulation. It is a simple kinematic fact.
specified. For example, a roll constraint is very The relationship between the body-fixed angular
different from a bank angle constraint. The roll can be rates and the Euler angles, which was demonstrated
constrained very simply, in either the Euler angle here by using the roll and bank angle, is true in general.
formulation or the quaternion formulation, by simply None of the Euler angles can be constrained by
replacing the ^-component of the angular momentum constraining only one of the body-fixed angular rates.
equation with the roll constraint The bank angle can be changed using only pitch and
yaw; the elevation angle can be changed using only roll
p =0 (63) and yaw; and the azimuth angle can be changed using
only roll and pitch. Any motion having only one of the
However, it is noted that constraining the roll does not rotational degrees of freedom constrained, in body-
constrain the bank angle. All three Euler angles can fixed coordinates, allows for all three degrees of
still take any possible value with the roll completely freedom in orientation.
constrained. Similarly, the other rotational degrees of freedom can
To constrain the bank angle, using the quaternion be constrained using the pitch constraint
formulation, Eq. (52) is employed. If the bank angle is
to remain zero, Eq. (52) requires q = 0 (70)

+ eyez = 0 (64) the quaternion elevation angle constraint

and (e2}+e2-e2-e2)q-2(eoex+eyez)r = 0 (71)

exe0+e0ex+ezey+eyez = 0 (65)
the yaw constraint
Applying Eq. (32) to Eq. (65) produces
r = 0 (72)
ex(-pex-qey-rez)
and the quaternion azimuth angle constraint
+ e0(pe0+rey-qez)
(66)
2(e0ex - ey ez )q + (el + e2 - el - e\ )r = 0 (73)
+ ey(re$+qex- pey) = 0
Motion with only one rotational degree of freedom,
This can be simplified to yield the quaternion bank in body-fixed coordinates, can also be simulated using
angle constraint the quaternion formulation. Constraining any two
rotational degrees of freedom in body-fixed coordinates
= 0 (67) will constrain two degrees of freedom in orientation.
For pure rolling motion,
Thus, to constrain the bank angle, the roll and the yaw
must be coordinated according to Eq. (67). q = r =0 (74)

14
American Institute of Aeronautics and Astronautics
(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

Using these constraints in Eq. (32) gives somewhat tedious but rather straightforward. The high-
lights of this development are presented here.
«0 "0 -p 0 0" V ~ex Consider a rigid body that is rotating at a constant
angular velocity. The differential equations governing
ex 1 p 0 0 0 ex P eo (75) the change in the quaternion components with time are
ey 2 0 0 0 p ey 2' e,
given by Eq. (32). This system can be written in
*z. 0 0 -p 0 ez ~ey differential operator notation as

If the elevation angle and the azimuth angle are both ID -p -q -r


initially zero, from Eq. (51), the initial condition for the p 2D r -q
quaternion is (80)
q -r 2D p
r q -p 2D
eo 'cos(00/2)
ex sin(00/2) The eigenvalues associated with the homogeneous
(76)
ey 0 system of differential equations given by Eq. (80) are
e 0 obtained from
z. r=0

Using Eq. (76) with Eq. (75), it is noted that both ey and 2A -p -q —r
ez remain zero during this motion. Thus, pure rolling p 2A r -q
= 0 (81)
motion can be simulated using the constraints q -r 2A p
r q -p 2A
= r = ey=ez=0 (77)
which can be expanded and simplified to yield
Similarly, pure pitching motion could be simulated by
applying the quaternion constraints
= 0 (82)
p = r = ex=ez=Q (78)
Thus, the four eigenvalues associated with Eq. (80)
consist of two identical complex pairs, both ±i(t)/2,
and pure yawing motion results from the constraints where i - (-1)1/2 and ft)2 = p2 + q2 + r2. The possible
solutions are then
p = q = ex = ey = 0 (79)
eo Q C5
A Closed-form Quaternion Solution ex ^2 .ei<at/2 C6 a -i(Ot/2
for Constant Rotation
It is possible to obtain a closed-form solution to the ey C3 Ci
quaternion formulation for the case of constant rotation. C
Cs
**.
While such a condition would frequently occur in
4.
(*
spacecraft applications, it almost never occurs in
+ . Qo tei(0t/2 + -
C
aircraft applications. The angular rates experienced by 14 ,te-icat/2
a moving aircraft depend on the aerodynamic moments
acting on the craft and are almost always changing with Cu C16
time. In this case, closed-form solutions to the
quaternion formulation are very difficult or impossible Using the first of these solutions in Eq. (80) produces
to obtain, for all but the most trivial conditions.156
Nevertheless, closed-form analytic solutions to the i(0 —p -q —r Q 0"
quaternion formulation for the case of constant angular p id) r -q C2 0
rates do provide an excellent mechanism for (*
verifying157'158 the numerical algorithms used to q —r id) p C3 ~ "o
integrate the quaternion formulation. For such verifica- r q - p id) C4 0
tion, it is useful to have a general solution that allows
for rotation about any or all of the body-fixed axes. Solving Eq. (84) by direct elimination gives only two
The development of such a solution, from Eq. (32), is independent relations among the 16 unknown constants

15
American Institute of Aeronautics and Astronautics
(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

iux lUy iuz


'Rx- 'Ry~
(89)
i(uy-uz)\ (i(uz-ux) \i(ux-Uy) (85)
ez(0)

the solution given by Eq. (88) reduces to the rather


obvious result
where u^pica, uy-q/(a, uz=r/a>, and Ri=Ui(ux+uy+uz)-l.
Similarly, using the second solution from Eq. (83) in
Eq. (80) yields two more independent relations
(ei(0t/2+e-ia"/2~)/2
iux(e-ia>'/2-eilot/2)/2
-iux -JM, -IU7 iuy(e-io"/2-eio"/2)/2
Rx iuz(e-i(0t/2-eia"/2)/2
(90)
i(uy-uz)\ (i(uz-ux) \i(ux-uy) (86) cos(cot/2)
uxsin(ci)t/2)
uysin(cot/2)
uzsin(cot/2)
Using the last two solutions from Eq. (83) in Eq. (80)
yields only the trivial results that Cg through d6 are all Equations (88) and (90) provide an excellent
zero. The initial conditions provide four additional mechanism for testing numerical algorithms used to
independent relations integrate the quaternion formulation.

«o(0) Numerical Integration of the


Quaternion Formulation
(87) When integrating Eq. (32) numerically, the zeros on
C3 C7 the diagonal can cause some problems. Integration of
this system can result in very large numerical errors if a
first-order method is used. For this reason, a fourth-
By combining Eqs. (85) through (87), the eight order method, such as fourth-order Runge-Kutta 159 160
or
remaining constants, C\ through Cg, can be obtained. fourth-order Adams-Bashforth-Moulton ' should
This gives the complete solution always be used to integrate the quaternion formulation.
Since most modern numerical codes use such methods,
this is not at all restrictive for simulations run on
modern digital computers.
Historically, aircraft simulations using the quaternion
formulation were first commonly run using analog
computers. Since these analog simulations were
inherently first-order, the raw quaternion formulation
did not work well. When such simulations were run,
, icot/2 the magnitude of the quaternion would grow quite
(88)
rapidly with time. Since the formulation requires the
magnitude of the quaternion to remain unity in order to
maintain orthogonality in the attitude transformation,
these large orthogonality errors would render the
ex (0) + i [uxe0 (0) + uzey (0) - uyez (0)] ,-icat/2 simulations almost useless. To remedy this problem,
ey (0) + i [uye0 (0) - uzex (0) + uxez (0)] techniques were developed to reduce this orthogonality
error. One such method, developed by Robinson36'37
and popularized by Mitchell and Rogers38, is based on
the method first suggested by Corbett and Wright39 for
For the special initial condition where all three Euler maintaining orthogonality in the direction-cosine
angles are zero, matrix. With this method, the kinematic equations in

16
American Institute of Aeronautics and Astronautics
(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

Eq. (32) were modified to include error reduction terms analog simulations were well behaved for very large
on the diagonal, values of k. The abrupt increase in error that is seen in
Fig. 2 for k/co greater than about 5.7 is a result of the
ke -p -q -r well known Euler instability that is associated with any
p ks r -q first-order numerical integration. For Eq. (91), Fang
(91) and Zimmerman161 have shown that this first-order
q —r k£ p
instability occurs whenever the product of the gain
r q -p ke coefficient and the time step is greater than unity,

where e is the orthogonality error defined as, k6t > 1

e = \-(el+e2x+e2+el) (92) When digital computers first became fast enough to


replace analog computers for running such simulations,
and k is a gain coefficient, which Mitchell and Rogers38 Corbett-Wright orthogonality control was often used in
said should be "set to a very high value." This error the digital solution algorithms. Furthermore, this
reduction scheme, which shall be called Corbett-Wright orthogonality control is still widely used for aircraft
orthogonality control, worked quite well when used flight simulation today.33'40 It is, however, not
with the analog computers of that era. necessary. When a modern digital computer is used to
While analog computers are no longer widely integrate Eq. (32) with any of the prevalent fourth-order
available, it is possible to demonstrate approximately numerical methods, the orthogonality error is extremely
how Corbett-Wright orthogonality control worked with small. Using the Corbett-Wright orthogonality control
an analog computer by integrating Eq. (91) using a scheme with these modern numerical algorithms
first-order Euler integration scheme. Results of such an increases the computation time but does little to
integration are shown in Fig. 2. For this figure the total improve the accuracy of the simulation.
error was computed as the difference between the Even though the orthogonality error for modern
numerical result and the exact solution from Eq. (88). numerical algorithms is very small, it can accumulate.
Notice that, as the value of the Corbett-Wright gain Thus, if a simulation is to be run for long periods of
coefficient approaches zero, which is the case of no time using large time steps, the quaternion should be
orthogonality control, the total error becomes very renormalized periodically. The quaternion may be
large. For gain coefficients larger than about 0.5 a> the renormalized by dividing each component by the
error is reduced to a more or less acceptable level. magnitude,153'162'163
With the exception of the increase in error on the right,
the results shown in Fig. 2 are very similar to the results (93)
reported by Mitchell and Rogers38 for a typical analog 2
x
2
+ ei
computer. Unlike the first-order digital integration,
As can be seen in Fig. 2, renormalization is not as
accurate as Corbett-Wright orthogonality control for
Renormalizing first-order integration. However, a different result is
i 20 Constant Rolling Rate obtained for higher-order integration.164 If the time
•3 Constant Pitching Rate steps used with fourth-order Runge-Kutta are of a size
15 Constant Yawing Rate to produce about 10 degrees of revolution per time step,
it requires about 3,000,000 iterations to degrade the
10 magnitude of the quaternion by one percent. Since a
very long renormalization period can be used, periodic
renormalization of the quaternion is much faster than
<o8t = 10 degrees using the Corbett-Wright orthogonality control scheme.
1 accumulated angle = 3,600 degrees However, if computation time is not a concern, Corbett-
0
0 1 2 3 4 5 6 Wright orthogonality control will eliminate the growth
of the orthogonality error for simulations using large
Corbett-Wright Gain Coefficient, k/(0
time steps. If the time steps are small enough to
Fig. 2. The effect of changing the gain coefficient on produce about five degrees of rotation or less of per
the accuracy of a first-order Euler algorithm time step, no orthogonality control whatsoever is
using Corbett-Wright orthogonality control. required with fourth-order Runge-Kutta integration.

17
American Institute of Aeronautics and Astronautics
(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

0.002
—— Renormalizing Renormalizing
A Corbett-Wright
SP 0.02 Constant Rolling Rate
n Constant Pitching Rate A
° Constant Yawing Rate °

0.001
I 0.01

>oooooooooooooc
coS t= 10 degrees (oSt = 5 degrees
a accumulated angle = 14,400 degrees a accumulated angle = 14,400 degrees
S 0.00 §
0.000
0 1 2 3 4 0 1 2 3 4
Corbett-Wright Gain Coefficient, k/co Corbett-Wright Gain Coefficient, k/co
Fig. 3. The effect of changing the gain coefficient on Fig. 5. The effect of reducing the step size on the
the accuracy of a fourth-order Runge-Kutta accuracy of a fourth-order Runge-Kutta
algorithm using Corbett-Wright orthogonality algorithm using Corbett-Wright orthogonality
control. control.

If the Corbett-Wright orthogonality control scheme is As can be seen in Fig. 4, this is truly independent of the
to be used for large time step simulations, it should be angular rate. Furthermore, as is seen in Fig. 5,
remembered that this only eliminates the growth of the decreasing the time step does not eliminate this
orthogonality error. It does not eliminate the drift error, problem. For such fourth-order integration, a gain
which for modern algorithms can be much larger than coefficient equal to the magnitude of the angular
the orthogonality error. In fact, when a large gain velocity will effectively eliminate the growth of the
coefficient is used with fourth-order integration and orthogonality error associated with large time steps
Corbett-Wright orthogonality control, the drift error is without adversely affecting the drift error. However,
increased by more than the orthogonality error is for aircraft flight simulations, the angular rates are not
reduced, which actually increases the net error for the typically known a priori. Furthermore, the angular rate
simulation. This is shown in Fig. 3. In contrast with is typically changing with time and a very low angular
the older analog simulations that used a very large gain rate requires a very low gain coefficient for accurate
coefficient, when Corbett-Wright orthogonality control simulation. Thus, to avoid increasing the total error, a
is used with a fourth-order digital integration, a gain variable gain coefficient equal to the angular rate
coefficient larger than about 2ft) should not be used. should be used,

k = ft) = p2 +q2 +r2 (94)


—— Renormalizing
J? 0.02
A
co = 0.10 sec"1 The implementation of Eq. (94) adds substantially to
° (O = 1.00 sec"1 the computational burden of Corbett-Wright
° w = 10.0 sec"1 orthogonality control. Thus, for greatest computational
I efficiency, it is much preferred to use periodic
renormalization of the quaternion over any use of the
00.01
Corbett-Wright orthogonality control scheme.
In 1969 Fang and Zimmerman161 proposed a pseudo
coSt = 10 degrees fourth-order method for integrating Eq. (91). With
accumulated angle = 14,400 degrees conventional fourth-order Runge-Kutta the time rate of
0.00
0 1 2 3 4 change of the quaternion is computed from Eq. (91)
four times for each time step. With the Fang and
Corbett-Wright Gain Coefficient, k/co
Zimmerman algorithm this same fourth-order procedure
Fig. 4. The effect of changing the angular rate on the is used to integrate Eq. (91), except that e is held
accuracy of a fourth-order Runge-Kutta constant through all four computations in each time
algorithm using Corbett-Wright orthogonality step. The orthogonality error is updated only once at
control. the beginning of each full time step.

18
American Institute of Aeronautics and Astronautics
(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

Renormalizing
e = e(l+je) (96)
Constant Rolling Rate
Constant Pitching Rate or after applying Eq. (92)
2 Constant Yawing Rate
£ C = e[l.5-0.5(el+e2x+e2y+e2)] (97)
3 0.01
£
E Periodic application of Eq. (97) is sufficient to
a
eliminate the growth of the orthogonality error for all
(i)St= 10 degrees
accumulated angle = 14,400 degrees time.
10.00 Renormalizing the quaternion with Eq. (97) requires
0 1 2 3 4 5 6 9 multiplications and 4 additions. Using Eq. (93), on
Corbett-Wright Gain Coefficient, k/a> the other hand, requires 8 multiplications, 3 additions, 1
square root, and 1 division. Typical modern hardware
Fig. 6. The effect of changing the gain coefficient on
requires 1 instruction cycle for addition, 1 instruction
the accuracy of the Fang and Zimmerman
cycle for multiplication, something on the order of 4
algorithm using Corbett-Wright orthogonality
instruction cycles for division, and anywhere from 4 to
control.
30 instruction cycles for the square root operation,
depending on the processor and the compiler. Thus,
The Fang and Zimmerman algorithm exhibits renormalizing with Eq. (93) requires anywhere from
features of both first-order and fourth-order numerical about 50 to 250 percent greater computation time than
integration. Although both the angular velocity and the using Eq. (97), on typical modern hardware.
quaternion on the right-hand side of Eq. (91) are Furthermore, even if future developments reduce the
estimated to fourth-order accuracy, e is only estimated time required for division and square root to 1
to first-order accuracy. Results of integrating Eq. (91) instruction cycle each, Eq. (97) will be, at worst,
using the Fang and Zimmerman algorithm are shown in computationally equivalent to Eq. (93).
Fig. 6. Notice that the accuracy of the method, for While periodic renormalization of the quaternion
small values of the gain coefficient, is comparable to using Eq. (97) provides a computationally efficient
that for full fourth-order integration. However, the means for controlling the orthogonality error, it does
method also exhibits an abrupt first-order instability not control the drift error. In fact, for higher-order
when the gain coefficient is greater than one divided by algorithms, it does nothing whatsoever to reduce the
the time step, k> \/8t. total error. In Figs. 3 through 6, the points that
One striking observation that should be noted from correspond to a Corbett-Wright gain coefficient of zero
Figs. 3 through 6 is that Corbett-Wright orthogonality were obtained using no orthogonality control at all. In
control offers no significant reduction in simulation each case the total error obtained with no orthogonality
error for modern numerical integration algorithms. On control was the same as that obtained when the
the other hand, if the gain coefficient is not judicially quaternion was renormalized after each time step.
chosen, Corbett-Wright orthogonality control can
significantly increase the simulation error. Periodic Conclusions
renormalization of the quaternion does not present this Among some fraction of the aircraft community, the
problem and is much more computationally efficient. quaternion formulation has gained the somewhat
The computation time required for periodic undeserved reputation of being hard to understand.
renormalization of the quaternion can be reduced even This reputation has more to do with the scattered nature
further by recognizing that the orthogonality error is of the literature on this topic, particularly in aircraft
always very small for modern fourth-order integration journals and textbooks, than it does with the raw
algorithms. Equation (93) can be written as complexity of the quaternion formulation itself.
Information from over 160 references, pertinent to
attitude kinematics, was assembled in an attempt to
e = (95) provide a clearer understanding of the quaternion
formulation. To this end, a systematic development of
the kinematic transformation equations in terms of
where e is the error in the square of the quaternion Euler angles, direction cosines, the Euler axis rotation
magnitude, as given by Eq. (92). Since £ is very small, parameters, and the Euler-Rodrigues quaternion was
Eq. (95) can be closely approximated as161 presented. The kinematic equations, including the
19
American Institute of Aeronautics and Astronautics
(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

gravitational vector and the effects of wind were scheme will also eliminate the growth of the
presented for these four attitude representations. The orthogonality error, but it does not eliminate the drift
singularities in the both the Euler angle formulation and error. In some cases, for certain values of the gain
the Euler axis formulation were discussed. Since the coefficient, the drift error is increased by more than the
physical interpretation of the Euler-Rodrigues orthogonality error is reduced which actually increases
quaternion is much less intuitive than that associated the total error for the simulation. Periodic renormaliza-
with Euler angles, relationships between the quaternion tion of the quaternion provides a computationally
and the other attitude descriptors were presented. efficient means for controlling orthogonality error when
The singularity associated with the Euler angle compared with Corbett-Wright, but it does not control
formulation has often lead the aircraft community to drift error either. Reduction in size of the time step
implement either the direction cosine formulation or the and/or increasing the order of the integration are the
quaternion formulation for the description of attitude. only effective ways to reduce total error.
In addition to eliminating this singularity, it is argued
that an important advantage of the quaternion Acknowledgement
formulation over either the Euler angle formulation or The authors appreciate the editorial and bibliographic
the direction cosine formulation is increased computa- efforts of Ms Joan P. Smith.
tional speed. Numerical integration of the nine compo-
nent direction-cosine formulation is excessively time References
consuming when compared with the four component 'Whitaker, E. T., Analytical Dynamics, Dover, New
quaternion formulation. Through the use of quaternion York, 1944, pp. 1-14.
2
algebra, the computational advantage of the Euler- Goldstein, H., Classical Mechanics, 2nd ed.,
Rodrigues formulation can be further extended. Addison-Wesley, Reading, MA, 1981, pp. 148-158.
3
Utilizing quaternion algebra, it was shown that the Nakano, A., "Rigid-body-based Multiple Time Scale
Euler angle transformation requires about 11 times as Molecular Dynamics Simulation of Nanophase
long to evaluate as the quaternion transformation. Materials," International Journal of High Performance
Consequently, even in cases where the aircraft is not an Computing Applications, Vol. 13, No. 2, 1999, pp. 154-
all-attitude vehicle and the gimbal lock singularity is 162.
4
not encountered, the quaternion formulation provides Hover, F. S., "Simulation of Massless Tethers,"
important computational savings when compared with Ocean Engineering, Vol. 24, No. 8, 1997, pp. 765-783.
5
either the Euler angle formulation or the direction- Smith, R., Frost, A., and Probert, P., "A Sensor
cosine formulation. System for the Navigation of an Underwater Vehicle,"
In order to take full advantage of the speed and The International Journal of Robotics Research, Vol.
accuracy of the Euler-Rodrigues quaternion formula- 18. No. 7, 1999, pp. 697-710.
6
tion, it is necessary to give some consideration to the Fjellstad, O. E. and Fossen, T. I., "Position and
numerical method used to integrate the kinematic Attitude Tracking of AUV's: A Quaternion Feedback
equations. Early aircraft flight simulations were run on Approach," IEEE Journal of Oceanic Engineering, Vol.
analog computers that were inherently first-order. 19. No. 4, 1994, pp. 512-518.
7
Numerical integration of the quaternion rate equations Chou, J. C. K., and Kamel, M., "Finding the
with a first-order method results in very large errors. Position & Orientation of a Sensor on a Robot Manipu-
Early analog programmers knew of this behavior and lator Using Quaternions," International Journal of
they employed an error reduction scheme, which in this Robotics Research, Vol. 10, No. 3, 1991, pp. 240-254.
8
paper was called Corbett-Wright orthogonality control. Wee, L. G., Walker, M. W., and McClamroch, N.
This orthogonality control is still found in some aircraft H., "An Articulated-Body Model for a Free-Flying
simulation codes in use today. Integration with any of Robot and its Use for Adaptive Motion Control," IEEE
today's prevalent fourth-order numerical methods Transactions on Robotics and Automation, Vol. 13, No.
produces very little orthogonality error. Using the 2, 1997, pp. 264-277.
9
Corbett-Wright orthogonality control scheme with Dornaika, F. and Horaud, R., "Simultaneous Robot-
modern numerical algorithms increases the computa- World and Hand-Eye Calibration," IEEE Transactions
tional time but does little to improve the accuracy of the on Robotics and Automation, Vol. 14, No. 4, 1998, pp.
simulation. 617-622.
10
Even though the orthogonality error for modern Caccavale, F., Natale, C., Siciliano, B, and Villani,
numerical algorithms is very small, it can accumulate. L., "Six-DOF Impedance Control Based on Angle/Axis
Periodic renormalization of the quaternion eliminates Representations," IEEE Transactions on Robotics and
this error. The Corbett-Wright orthogonality control Automation, Vol. 15, No. 2, 1999, pp. 289-300.
20
American Institute of Aeronautics and Astronautics
(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

"Daniilidis, K., "Hand-eye Calibrations Using Dual Roskam, J., Airplane Flight Dynamics and
Quaternions," International Journal of Robotics Automatic Flight Control, DAR Corporation,
Research, Vol. 18, No. 3, 1999, pp. 286-98. Lawrence, KS, 1998, pp. 3-34.
12 31
Omelyan, I. P., "On the Numerical Integration of Schmidt, L. V., Introduction to Aircraft Flight
Motion for Rigid Polyatomics: the Modified Quaternion Dynamics, AIAA, Reston, VA, 1998, pp. 93-118.
32
Approach," Computers in Physics, Vol. 12, No. 1, Abzug, M. J., Computational Flight Dynamics,
1998, pp. 97-103. AIAA, Reston, VA, 1998, pp. 5-7.
13 33
Kuipers, J. B. "SPASYN An Electromagnetic Pamadi, B. N., Performance, Stability, Dynamics,
Relative Position and Orientation Tracking System," and Control of Airplanes, AIAA, Reston, VA, 1998, pp.
IEEE Transactions on Instrumentation and 344-347.
34
Measurements, Vol. 29, No. 4, 1980, pp. 462-471. Abzug, M. J. and Larrabee, E. E., Airplane Stability
14
Shoemake, K., "Animating Rotation with and Control: A History of Technologies that Made
Quaternion Curves," Computer Graphics, Vol. 19, No. Aviation Possible, Cambridge University Press,
3, 1985, pp. 245-254. Cambridge, 1997, pp. 251-259.
15 35
Hanson, A. J. and Ma, H., "Quaternion Frame Jackson, E. B., "Manual for a Workstation-based
Approach to Streamline Visualization," IEEE Generic Flight Simulation Program (LaRCsim) Version
Transactions on Visualization and Computer Graphics, 1.4," NASA TM-110164, April 1995.
36
Vol. 1., No. 2, 1995, pp. 164-174. Robinson, A. C., "On the Use of Quaternions in the
16
Hart, J. C., Francis, G. K., and Kauffman, L. H., Simulation of Rigid Body Motion," Proceedings of
"Visualizing Quaternion Rotation," ACM Transactions Simulation Council Conference, Washington, DC, Dec.
on Graphics, Vol. 13, No. 3,1994, pp. 256-276. 1958, pp. 1-18.
17 37
Chou, J. C. K., "Quaternion Kinematics and Dy- Robinson, A. C., "On the Use of Quaternions in the
namic Differential Equations, " IEEE Transactions on Simulation of Rigid Body Motion," WADC TR 58-17,
Robotics & Automation, Vol. 8, No. 1, 1992, pp. 53-64. Wright Patterson AFB, OH, Dec. 1958.
18 38
Shuster, M. D., "A Survey of Attitude Mitchell, E. E. L. and Rogers, A. E., "Quaternion
Representations," The Journal of the Astronautical Parameters in the Simulation of a Spinning Rigid
Sciences, Vol. 14, No. 4, 1993, pp. 439-517. Body," Simulation, Vol. 4, No. 6, 1965, pp. 390-396.
19 39
Perkins, C. D., and Hage, R. E., Airplane Corbett, J. P., and Wright, F. B., "Stabilization of
Performance Stability & Control, Wiley, New York, Computer Circuits," WADC TR 57-425, E. Hochfeld,
1949, pp. 374-474. editor, Wright Patterson AFB, OH, Nov. 1957.
20 40
Duncan, W. J., The Principles of Control and Rolfe, J. M. and Staples, K. J., Flight Simulation,
Stability of Aircraft, Cambridge University Press, Cambridge University Press, Cambridge, 1988, pp.
Cambridge, 1952, pp. 61-92. 380-440.
21 41
Babister, A. W., Aircraft Stability and Control, Kaplan, M. H., Modem Spacecraft Dynamics and
Oxford University Press, Oxford, 1961, pp. 1-700. Control, Wiley, New York, 1976, pp. 1-415.
22 42
Kolk, W. R., Modern Flight Dynamics, Prentice- Messiah, A., Quantum Mechanics, North-Holland
Hall, Englewood Cliffs, NJ, 1961, pp. 22-40. Publishing Company, Amsterdam, Vol. 1, 1961, pp. 1-
23
Etkin, B., Dynamics of Atmospheric Flight, Wiley, 504 and Vol. 2, 1962 pp. 505-1136.
43
New York, 1972, pp. 121-154. Tandon, G. K., "Coordinate Transformations," in
24
McRuer, D. T., Ashkenas, I. L., and Graham, D., Spacecraft Attitude Determination and Control, J. R.
Aircraft Dynamics and Automatic Control, Princeton Wertz, editor, Kluwer Academic Publishers, Dordrecht,
University Press, Princeton, NJ, 1973, pp. 203-295. 1978, pp. 760-766.
25
Babister, A. W., Aircraft Dynamic Stability and ^Pio, R. L., "Symbolic Representation of Coordinate
Response, Pergamon, Oxford, 1980, pp. 11-28. Transformation," IEEE Transactions on Aerospace and
26
McCormick, B. W., Aerodynamics, Aeronautics, Navigational Electronics, Vol. 11, June 1964, 128-134.
45
and Flight Mechanics, 2nd ed., Wiley, New York, Pio, R. L., "Euler Angle Transformations," IEEE
1995, pp. 538-582. Transactions on Automatic Control, Vol. 11, No. 4,
27
Etkin, B., and Reid L. D., Dynamics of Flight: 1966, pp. 707-715.
46
Stability and Control, 3rd ed., Wiley, New York, 1996, Bar-Itzhack, I. Y., "The Program: An Essay Tool
pp. 93-128. for Angular Position and Rate Computations," Journal
28
Cook, M. V., Flight Dynamics Principles, Wiley, of the Astronautical Sciences, Vol. 41, No. 4, 1993, pp.
New York, 1997, pp. 11-29. 519-529.
29 47
Nelson, R. C., Flight Stability & Automatic Con- Mayer, A., "Rotations and Their Algebra," SIAM
trol, 2nd ed., McGraw-Hill, New York, 1998, pp. 96-130. Review, Vol. 2, No. 2, 1960, pp. 77-122.
21
American Institute of Aeronautics and Astronautics
(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

48 65
Hughes, P. C., Spacecraft Attitude Dynamics, Beatty, M. F., "Kinematics of Finite, Rigid-Body
Wiley, New York, 1986, pp. 1-564. Displacements," American Journal of Physics, Vol. 35,
49
Kane, T. R., Likins, P. W., and Levinson, D. A., No. 10, 1967, pp. 949-954.
66
Spacecraft Dynamics, McGraw Hill, New York, 1983, Beatty, M. F., "Vector Representation of Rigid
pp. 1-436. Body Rotation," American Journal of Physics, Vol. 31,
50
Junkins, J. L., and Shuster, M. D., "The Geometry No. 2,1963, pp. 134-135.
67
of the Euler Angles," Journal of the Astronautical Grubin, C., "Vector Representation of Rigid-Body
Sciences, Vol. 41, No. 4, 1993, pp. 531-543. Rotation," American Journal of Physics, Vol. 30, No. 6,
5I
Markley, F. L., "New Dynamic Variables for 1962, p. 416-417.
68
Momentum-Bias Spacecraft," Journal of the Astro- Euler, L., "Problema Algebraicum ob Affectiones
nautical Sciences, Vol. 41, No. 4, 1993, pp. 557-567. Prorsus Singulares Memorabile," Novi Commentari
52
Broucke, R. A., "On the Use of Poincare Surfaces Academiae Scientiarum Imperialis Petropolitanae, Vol.
of Section in Rigid Body Motion," Journal of Astro- 15, 1770, pp. 75-106.
69
nautical Sciences, Vol. 41, No. 4, 1993, pp. 593-601. Rodrigues, O., "Des Lois Geometriques qui
33
Kolve, D. I., "Describing an Attitude," Advances in Regissent les Deplacements d'un Systeme Solide dans
the Astronautical Sciences, Proceedings of the 16th L'espace, et de la Variation des Coordonnees Provenant
AAS Rocky Mountain Guidance and Control de Ses Deplacements Consideeres Independamment des
Conference, Feb. 1992, Vol. 81, 1993, Keystone, CO, Causes qui Peuvent les Produire," Journal des
Published by Univelt Inc., San Diego CA, pp. 289-303. Mathematiques Pures et Appliquees, Vol. 5, 1840, pp.
54
Markley, F. L., "Attitude Dynamics," in Spacecraft 380-440.
70
Attitude Determination and Control, J. R. Wertz, editor, Cayley, A., "On Certain Results Relating to
Kluwer Academic Publishers, Dordrecht, 1978, pp. Quaternions," Philosophical Magazine, Vol. 26, No. 1,
510-521. 1845, pp. 141-145.
55
Sabroff, A., Farrenkopf, R., Frew, A., and Gran, ""Hamilton, W. R., "On Quaternions: Or a New
M., AFFDL-TR-65-115, TRW, Redondo Beach, CA, System of Imaginaries in Algebra," Philosophical
1965. Magazine, Vol. 25, No. 3, 1844, pp. 489-495.
56 72
Sidi, M. J., Spacecraft Dynamics & Control, Hamilton, W. R., Lectures on Quaternions, Hodges
Cambridge University Press, Cambridge, 1997, pp.318- and Smith, Dublin, 1853, pp. 1-736.
327. "Hamilton, W. R., Elements of Quaternions,
57
Satake, L, Linear Algebra, Marcel Dekker, Inc., Longmans, Green & Co., London, 1866.
74
New York, 1975, pp. 198-208. Graves, R. P. Life of Sir William Rowan Hamilton,
58
Bryan, T. R., Lewis, D. G. and Perry, D. D., Three Volumes, Hodges, Figgis and Co, Dublin, 1882-
"Software User's Manual for TRAP 3.1," TAG 92-03, 1889.
75
Battelle, Columbus, OH, March, 1993. Hankins, T. L., Sir William Rowan Hamilton,
59
Euler, L., "Formulae Generales pro Translatione Johns Hopkins University Press, Baltimore, 1980, pp.
Quacunque Corporum Rigidorum," Novi Commentari 1-474.
76
Academiae Scientiarum Imperialis Petropolitanae, Vol. O'Donnell, S., William Rowan Hamilton, Portrait
20, 1775, pp. 189-207. of a Prodigy, Boole, Dublin Ireland, 1983, pp. 1-224.
60 77
Euler L., "Nova Methodus Motum Corporum Altmann, S. L., Rotations, Quaternions, and
Rigidorum Determinandi," Novi Commentari Double Groups, Oxford University Press, Oxford,
Academiae Scientiarum Imperialis Petropolitanae, Vol. 1986, pp. 1-317.
78
20, 1775, pp. 208-238. Altmann, S. L., "Hamilton, Rodrigues, and the
51
Beatty, M. F., "Vector Analysis of Finite Rigid Quaternion Scandal," Mathematics Magazine, Vol. 62,
Rotations," Journal of Applied Mechanics, Vol. 44, No. No. 5,1989, pp. 291-307.
79
3, 1977, pp. 501-502. Cheng, H., and Gupta, K. C., "An Historical Note
62
Kozik, T. J., "Finite Rotations and Associated on Finite Rotations," ASME Journal of Applied
Displacement Vectors," Journal of Applied Mechanics, Mathematics, Vol. 56, No. 2, 1989, pp. 139-145.
80
Vol. 43, No. 4, 1976, pp. 698-699. Euler, L., "Du Mouvement de Rotation des Corps
63
Mathews, J., "Coordinate-Free Rotation Solides Autour d'un Axe Variable," Memoires de
Formalism," American Journal of Physics, Vol. 44, No. I'academiei des sciences de Berlin, Vol. 14, 1758, pp.
12, 1976, pp. 1210-1210. 154-193.
81
^Pearlman, N., "Vector Representation of Rigid- Euler, L., "DeMotu Corporum Circa Punctum
Body Rotations," American Journal of Physics, Vol. Fixum Mobilium," Commentatio 825 indicis Enestro-
35, No. 12, 1967, pp. 1164-1167. emiani, Opera Posthuma, Vol. 2,1862, pp. 43-62.
22
American Institute of Aeronautics and Astronautics
(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

82
Roberson, R. E., "Kinematic Equations for Bodies trol, and Dynamics, Vol. 15, No. 5, 1991, pp. 1061-
Whose Rotation is Described by the Euler-Rodrigues 1064.
100
Parameters," AIAA Journal, Vol. 6, No. 5, 1968, pp. Stuelpnagel, J., "On the Parameterization of the
916-917. Three-Dimensional Rotation Group," SIAM Review,
83
Jacobi, D. G. J., "Bemerkungen zu einer Vol. 6, No. 4, 1964, pp. 422-430.
101
Abhandlung Euler's uber die orthogonale Substitution," Klumpp, A. R., "Singularity-free Extraction of a
C. G. J. Jacobi's Gesammelte Werke, Vol. Ill, Chelsea Quaternion from a Direction-Cosine Matrix," Journal
Publishing Company, New York, 1969, pp. 601-609. of Spacecraft and Rockets, Vol. 13, No. 12, 1976, pp.
84
Grassman, H. G., Die lineale Ausdehnungslehre, 754-755.
102
com meier Zweig de Mathematik dargestellt und durch Spurrier, R. A., "Comment on 'Singularity-free
Anwendungen auf die ubrige Zweige de Mathematik, Extraction of a Quaternion from a Direction-Cosine
wie auch auf die Statik, Mechanik, die Lehre van Matrix," Journal of Spacecraft and Rockets, Vol. 15,
Magnetismus und due Krystallonomie erlautert, 1844, No. 4, 1978, pp. 255-256.
103
pp. 1-301. Shepperd, S. W., "Quaternion from Rotation
85
Grassman, H. G., Die Ausdehnungslehre: Matrix," Journal of Guidance and Control, Vol. 1, No.
vollstandig und in strenger Form bearbeitel,\%(>2L 3, 1978, pp. 223-224.
86 104
Gibbs, J. W., Vector Analysis, E. B. Wilson, editor, Jiang, Y. F., and Lin, Y. P., "Error Analysis of
Scribners, New York, 1901. Quaternion Transformation," IEEE Transactions on
87
Heaviside, O., Electromagnetic Theory, Vol. 1, Aerospace and Electronic Systems, Vol. 27, No. 4,
Dover, New York, 1950. 1991, pp. 634-638.
8S 105
Boyer, C. B., and Merzbach, U.C., A History of Aramanovitch, L., "Spacecraft Orientation Based
Mathematics, 2nd ed., Wiley, New York, 1989, pp. on Space Object Observations by Means of Quaternion
656-762. Algebra," Journal of Guidance, Control, and
89
Gray, J. J., "Olinde Rodrigues' Paper of 1840 on Dynamics, Vol. 18, No. 4, 1995, pp. 859-866.
106
Transformation Groups," Archive for the History of Kuipers, J. B., Quaternions and Rotation
Exact Sciences, Vol. 21, No. 4, 1980, pp. 375-385. Sequences: A Primer with Applications to Orbits,
90
Cartan, E., Lecons Sur la Theorie des Spineurs. I. Aerospace and Virtual Reality, Princeton University
Les Spineurs de I'espace a Trois Dimensions, Hermann, Press, Princeton, NJ, 1999, pp. 155-168.
107
Paris, 1938, pp. 57-63. Mayo, R. A. "Relative Quaternion State Transition
91
Temple, G., Cartesian Tensors. An Introduction, Relation," Journal of Guidance and Control, Vol. 2,
Methuen, London, 1960, pp. 68-92. No. 1,1979, pp. 44-48.
92 108
Booth, A. J., Saint-Simon and Saint-Simonism, A Stevens, B. L. and Lewis, F. L, Aircraft Control &
Chapter in the History of Socialism in France, Simulation, Wiley, New York, 1992, pp. 39-44.
109
Longmans, Green, Reader and Dyer, London, 1871, pp. McFarland, R. E., "A Standard Kinematic Model
1-262. for Flight Simulation at NASA-Ames," NASA CR-
93
Wilson, E., To the Finland Station. A Study in the 2497, Jan. 1975.
110
Writing and Acting of History, Seeker and Warburg, Jenkins, P. N., "Missile Dynamics Equations for
London, 1941, pp. 100-509. Guidance and Control Modeling and Analysis," RG-84-
94
Kline, M., Mathematical Thoughts from Ancient to 17, Redstone Arsenal, AL, April 1984.
m
Modern Times, Oxford University Press, Oxford, 1972, Wilcox, J. C. "A New Algorithm for Strapdown
pp. 1-1238. Inertial Navigators," IEEE Transactions on Aerospace
95
Van Der Waerden, B. L., A History of Algebra, & Electronic Systems, Vol. 3, No. 5, 1967, pp. 796-802.
112
Springer-Verlag, Heidelberg, 1985, pp. 1-271. Mckern, R. A., "A Study of Transformation
96
Crowe, M. J., A History of Vector Analysis, Dover, Algorithms for Use in a Digital Computer," Master
New York, 1967, pp. 1-270. Thesis T-493, Massachusetts Institute of Technology,
97
McDuffee, C. C., The Theory of Matrices, Chelsea Cambridge, 1968.
113
Publishing Company, New York, 1946, pp. 1-110. Bortz, J. E., "A New Mathematical Formulation
98
Shuster, M. D., and Natanson, G. A., "Quaternion for Strapdown Inertial Navigation," IEEE Transactions
Computation from a Geometric Point of View," Journal on Aerospace and Electronic Systems, Vol. 7, No. 1,
of the Astronautical Sciences, Vol. 41, No. 4, 1993, pp. 1971, pp. 61-66.
114
545-556. Mortensen, R. E., "Strapdown Guidance Error
"Vathsal, S., "Derivation of the Relative Quaternion Analysis," IEEE Transactions on Aerospace and
Differential Equations," Journal of Guidance, Con- Electronic Systems, Vol. 10, No. 5, 1974, pp. 451-457.

23
American Institute of Aeronautics and Astronautics
(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

115 129
Friedland, B., "Analysis of Strapdown Navigation Chatterji, G. B., and Tahk, M., "Quaternion
Using Quaternions," IEEE Transactions on Aerospace Formulation for Boost Phase Attitude Estimation,
and Electronic Systems, Vol. 14, No. 5, 1989, pp. 764- Guidance and Control of Exoatmospheric Interceptors,"
768. Proceedings of the 1989 American Control Conference,
116
Lovren, N., and Pieper, J. K., "Error Analysis of IEEE, Pittsburgh, PA, June, 1989, pp. 1561-1566.
I30
Direction Cosines and Quaternion Parameter Katz, A., "Special Rotation Vectors: A Means for
Techniques for Aircraft Attitude Determination," IEEE Transmitting Quaternions in Three Components,"
Transactions on Aerospace and Electronic Systems, Journal of Aircraft, Vol. 30, No. 1, 1993, pp. 148-150.
131
Vol. 34, No. 3, 1998, pp. 983-989. Lo, S. C., and Y. P. Chen, "Smooth Sliding Mode
117
Lefferts, E. J., Markley, F. L., and Shuster, M. D., Control for Spacecraft Attitude Tracking Maneuvers,"
"Kalman Filtering For Spacecraft Attitude Estimation," Journal of Guidance, Control, and Dynamics, Vol. 18,
Journal of Guidance, Control, and Dynamics, Vol. 5, No. 6, 1995, pp. 1345-1349.
132
No. 5, 1982, pp. 417-429. Joshi, S. M., Kelkar, A. G., & Went, J. T., "Robust
I18
Bar-Itzhack, I. Y., and Oshman, Y., "Attitude Attitude Stabilization of Spacecraft Using Nonlinear
Determination from Vector Observations: Quaternion Quaternion Feedback," IEEE Transactions on Auto-
Estimation," IEEE Transactions on Aerospace and matic Control, Vol. 40, No. 10, 1995, pp. 1800-1803.
133
Electronic Systems, Vol. 21, No. 1, 1985, pp. 128-136. Crassiidis, J. L., and Markely, F. L., "Sliding Mode
119
Shuster, M. D., "Quaternion on the Kalman Filter," Control Using Modified Rodriguez Parameters,"
Advances in the Astronautical Sciences, Vol. 85, No. 1, Journal of Guidance, Control, and Dynamics, Vol. 19,
1993, pp. 16-19. No. 6, 1996, pp. 1381-1383.
120 134
Creamer, G., DeLaHunt, P., and Gates, S., Chung, D., Lee, J. G., and Park, C. G, "Strapdown
"Attitude Determination and Control of Clementine INS Error Model for Multiposition Alignment," IEEE
During Lunar Mapping," Journal of Guidance, Control, Transactions on Aerospace and Electronic Systems,
and Dynamics, Vol. 19, No. 3, 1996, pp. 505-511. Vol. 32, No. 4, 1996, pp. 1362-1366.
121 135
Ickes, B. F., "A New Method for Performing Bar-Itzhack, I. Y., "REQUEST: A Recursive
Digital Control System Attitude Computations Using QUEST Algorithm for Sequential Attitude
Quaternions," AIAA Journal, Vol. 8, No. 1, 1970, pp. Determination," Journal of Guidance, Control, and
13-17. Dynamics, Vol. 19, No. 5, 1996, pp. 1034-1038.
122 136
Grubin, C., "Attitude Determination for a Strap- Kelkar, A. G., and Joshi, S. M., "Global
down Inertial System Using the Euler-Axis/Angle and Stabilization of Flexible Multibody Spacecraft Using
Quaternion Parameters," AIAA Paper 73-900,1973. Quaternion-Based Nonlinear Control Law," Journal of
123
Morton, H. S., Jr., Junkins, J. L., and Blanton, J. Guidance, Control, and Dynamics, Vol. 19, No. 5,
N., "Analytical Solutions for Euler Parameters," 1996, pp. 1186-1188.
137
Celestial Mechanics, Vol. 10, 1974, pp. 287-301. Lee, K. L., Lee, J. G., Roh, Y. K., and Park, C. G.,
124
Morton, H. S. Jr., "Hamiltonian and Lagrangian "Modeling Quaternion Errors in SDINS: Computer
Formulations of Rigid Body Rotational Dynamics Frame Approach," IEEE Transactions on Aerospace &
Based on the Euler Parameters," Journal of Astro- Electronic Systems, Vol. 34, No. 1, 1998, pp. 289-299.
138
nautical Sciences, Vol. 41, No. 4, 1993, pp. 569-591. Reynolds, R. G., "Quaternion Parameterization and
125
Vadali, S. R., and Junkins, J. L., "Optimal Open- a Simple Algorithm for Global Attitude Estimation,"
Loop and Stable Feedback Control of Rigid Spacecraft Journal of Guidance, Control, and Dynamics, Vol. 21,
Attitude Maneuvers," Journal of the Astronautical No. 4, 1998, pp. 669-671.
139
Sciences, Vol. 32, No. 1, 1984, pp. 105-122. Gupta, S., "Linear Quaternion Equations with Ap-
126
Vadali, S. R., Kraige, L. G., and Junkins, J. L., plication to Spacecraft Attitude Propagation," IEEE
"New Results on the Optimal Spacecraft Attitude Aerospace Applications Conference Proceedings, Vol.
Problem," Journal of Guidance, Control, and 1, IEEE, Snow Mass, CO, March 21-28, 1998, pp. 69-
Dynamics, Vol. 7, No. 3,1984, pp. 378-380. 76.
127 140
Vathsal, S., "Optimal Control of Quaternion Yu, M. J., Lee, J. G, and Park, H. W.,
Propagation Errors in Spacecraft Navigation," Journal "Comparison of SDINS In-flight Alignment Using
of Guidance, Control, and Dynamics, Vol. 9, No. 3, Equivalent Error Models," IEEE Transactions on
1986, pp. 382-385. Aerospace and Electronic Systems, Vol. 35, No. 3,
I28
Wie, B., Weiss, H., and Arapostathis, A., 1999, pp. 1046-1054.
141
"Quaternion Feedback Regulator for Spacecraft Fallen, L., "Quaternions," in Spacecraft Attitude
Eigenaxis Rotations," Journal of Guidance, Control, Determination and Control, J. R. Wertz, editor, Kluwer
and Dynamics, Vol. 12, No. 3, 1989, pp. 375-380. Academic Publishers, Dordrecht, 1978, pp. 758-759.
24
American Institute of Aeronautics and Astronautics
(c)2000 American Institute of Aeronautics & Astronautics or Published with Permission of Author(s) and/or Author(s)' Sponsoring Organization.

142 152
Jones, D. W., "Quaternions Quickly Transform Salguero, D., "Trajectory Analysis and Optimiza-
Coordinates Without Error Buildup," EDN, Vol. 40, tion Software," SAND99-0811, Sandia National
No. 5, 1995, pp. 95-100. Laboratories, Albuquerque, NM, May 1999.
143 153
Bar-Itzhack, I. Y., and Idan, M., "Recursive Prewitt, N. C., Belk, D. M., and Maple, R. C.,
Attitude Determination from Vector Observations: "Multiple Body Trajectory Calculations Using the
Euler Angle Estimation," Journal of Guidance, Con- Beggar Code," AIAA Paper 96-3384, July 1996.
154
trol, and Dynamics, Vol. 10, No. 2,1987, pp. 152-157. Thome, W. J., "Quaternion Utilization in a Missile
144
Dvornychenko, V. N., "The Number of Model," AFIT-GST-MA-80M-3, March 1980.
155
Multiplications Required to Chain Coordinate Kendra, M. J., and Bonito, N. A., "Coordinate
Transformations," Journal of Guidance, Control, and System Conversion Software User's Guide for Attitude,
Dynamics, Vol. 8, No. 1, 1985, pp. 157-159. Quaternion, M50 and Related Applications," GL-TR-
145
Winograd, S., "On the Number of Multiplications 90-0327, Nov. 1990.
156
Necessary to Computer Certain Functions," Hankey, W. L., Miller, L. E., and Scherr, S. J.,
Communications on Pure and Applied Mathematics, "Use of Quaternions in Flight Mechanics," AFWAL-
Vol. 23, No. 2, 1970, pp. 165-179. TR-84-3045, March 1984.
146 157
Winograd, S., "Some Bilinear Forms Whose "Guide for the Verification and Validation of
Multiplicative Complexity Depends on the Field of Computational Fluid Dynamics Simulations," AIAA,
Constants," Mathematical Systems Theory, Vol. 10, No. G-077-1998, Jan. 1998.
158
2, 1977, pp. 169-180. Roache, P. J., Verification and Validation in
147
Wehage, R. A., "Quaternions & Euler Parameters - Computational Sciences and Engineering, Hermosa
A Brief Exposition," Computer-Aided Analysis and Publishers, Albuquerque, NM, 1998, pp. 1-648.
159
Optimization of Mechanical System Dynamics, NATO Gerald, C. F., and Wheatley, P. O., Applied
ASI Series, Vol. F9, E. J. Haug, editor, Springer- Numerical Analysis, 6th ed., Addison Wesley
Verlag, Heidelberg, 1984, pp. 147-180. Longman, Reading, MA, 1999, pp. 451-477.
148 160
Bar-Itzhack, I. Y., "Iterative Computation of Initial Hoffman, J. D., Numerical Methods for Engineers
Quaternion," Journal of Spacecraft and Rockets, Vol. 7, & Scientist, McGraw-Hill, New York, 1992, pp. 225-266.
161
No. 3, 1970, pp. 367-369. Fang, A. C. and Zimmerman, B. G., "Digital
149
Grubin, C., "Derivation of the Quaternion Scheme Simulation of Rotational Kinematics," NASA TN D-
via the Euler Axis and Angle," Journal of Spacecraft 5302, Oct. 1969.
162
andRockets, Vol. 7, No. 10, 1970, pp. 1261-1263. Bar-Itzhack, I. Y., "Optimum Normalization of a
150
Klumpp, A. R., "Reply to Comment on Computed Quaternion of Rotation," IEEE Transactions
'Singularity Extraction of a Quaternion from a of Aerospace and Electronic Systems, Vol. 7, No. 2,
Direction-Cosine Matrix," Journal of Spacecraft and 1971, pp. 401-402.
163
Rockets, Vol. 15, No. 4, 1978, pp. 256-256. Katz, A., Computational Rigid Vehicle Dynamics,
151
Grubin, C., "Quaternion Singularity Revisited," Krieger, Malabar, FL, 1997, pp. 29-38.
164
Journal of Guidance and Control, Vol. 2, No. 3, 1979, "Atmospheric and Space Flight Vehicle Coordi-
pp. 255-256. nate Systems," ANSI/AIAA R-004-1992, Feb. 1992.

25
American Institute of Aeronautics and Astronautics

You might also like