<?xml version="1.0" encoding="UTF-8"?>

<record version="1" id="1112">
 <title>quaternion exercises for physics and engineering</title>
 <name>QuaternionExercisesForPhysicsAndEngineering</name>
 <created>2026-08-24 23:54:43</created>
 <modified>2026-08-24 23:54:43</modified>
 <type>Example</type>
<parent id="1111">quaternion series overview and article guide</parent>
 <creator id="1" name="bloftin"/>
 <modifier id="1" name="bloftin"/>
 <comment>converted to passive rotation convention</comment>
 <author id="1" name="bloftin"/>
 <classification>
	<category scheme="pacs" code="02.40.Yy"/>
	<category scheme="pacs" code="02.10.Hh"/>
	<category scheme="pacs" code="45.40.-f"/>
	<category scheme="pacs" code="06.30.Gv"/>
 </classification>
 <keywords>
	<term>quaternion</term>
	<term>rotation</term>
	<term>attitude</term>
	<term>direction cosine matrix</term>
	<term>Euler angles</term>
	<term>angular velocity</term>
	<term>IMU</term>
	<term>exercises</term>
	<term>worked solutions</term>
 </keywords>
 <preamble>% this is the default PhysicsLibrary preamble.  as your knowledge
% of TeX increases, you will probably want to edit this, but
% it should be fine as is for beginners.

% almost certainly you want these
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{amsfonts}

% used for TeXing text within eps files
%\usepackage{psfrag}
% need this for including graphics (\includegraphics).
% If you use \includegraphics{figure} with no file extension, PhysicsLibrary
% will prefer figure.png before falling back to figure.eps.
\usepackage{graphicx}
\DeclareGraphicsExtensions{.png,.jpg,.jpeg,.pdf,.eps}
% for neatly defining theorems and propositions
%\usepackage{amsthm}
% making logically defined graphics
%\usepackage{xypic}

% there are many more packages, add them here as you need them

% define commands here</preamble>
 <content>\section*{Quaternion exercises for physics and engineering}

This article is a consolidated problem set for the PhysicsLibrary quaternion
sequence.  The problems begin with algebra and conventions, then move through
rotation geometry, direction cosine matrices, Euler angles, quaternion
kinematics, attitude errors, and IMU propagation.

All problems are stated first.  Complete solutions appear afterward so that the
article can be used for self study.

\section{Convention declaration}

Unless a problem explicitly states otherwise, use the following conventions:
\begin{enumerate}
\item all physical frames are right-handed orthonormal Cartesian frames;
\item Hamilton multiplication is used,
\begin{equation}
\mathbf i\mathbf j=\mathbf k,\qquad
\mathbf j\mathbf k=\mathbf i,\qquad
\mathbf k\mathbf i=\mathbf j;
\end{equation}
\item quaternions are displayed in scalar-first form,
\begin{equation}
q=
\begin{bmatrix}
q_w&amp;q_x&amp;q_y&amp;q_z
\end{bmatrix}^{T};
\end{equation}
\item an active vector rotation is
\begin{equation}
\mathbf v'=q\mathbf v q^*
\end{equation}
for unit $q$;
\item the attitude quaternion
\begin{equation}
q={}^Iq_B
\end{equation}
maps body coordinates into inertial coordinates;
\item body resolved angular velocity satisfies
\begin{equation}
\dot q=\frac12q\omega^B.
\end{equation}
\end{enumerate}

\section{Problems}

\subsection*{Problem 1: quaternion components}

Write
\begin{equation}
q=3-2\mathbf i+4\mathbf j-\mathbf k
\end{equation}
as a scalar part and vector part.

\subsection*{Problem 2: basis multiplication}

Evaluate
\begin{equation}
\mathbf i\mathbf j,\qquad
\mathbf j\mathbf i,\qquad
\mathbf k\mathbf k.
\end{equation}

\subsection*{Problem 3: quaternion product}

Let
\begin{equation}
p=1+2\mathbf i-\mathbf j,
\qquad
q=2+\mathbf i+3\mathbf k.
\end{equation}
Compute $pq$.

\subsection*{Problem 4: noncommutativity}

Using the same $p$ and $q$ as Problem 3, compute $qp$ and show explicitly that
$pq\neq qp$.

\subsection*{Problem 5: scalar vector product form}

For
\begin{equation}
p=(p_w,\mathbf p),
\qquad
q=(q_w,\mathbf q),
\end{equation}
write the quaternion product in scalar vector form.

\subsection*{Problem 6: pure vector product}

Let
\begin{equation}
\mathbf a=
\begin{bmatrix}
1\\2\\0
\end{bmatrix},
\qquad
\mathbf b=
\begin{bmatrix}
0\\1\\3
\end{bmatrix}.
\end{equation}
Treat them as pure quaternions and compute $\mathbf a\mathbf b$.

\subsection*{Problem 7: conjugate}

For
\begin{equation}
q=2-3\mathbf i+4\mathbf j+5\mathbf k,
\end{equation}
compute $q^*$.

\subsection*{Problem 8: norm}

For the quaternion in Problem 7, compute $\|q\|$ and $\|q\|^2$.

\subsection*{Problem 9: inverse}

For the quaternion in Problem 7, compute $q^{-1}$.

\subsection*{Problem 10: unit quaternion check}

Determine whether
\begin{equation}
q=
\begin{bmatrix}
\frac12&amp;
\frac12&amp;
\frac12&amp;
\frac12
\end{bmatrix}^{T}
\end{equation}
is a unit quaternion.

\subsection*{Problem 11: axis angle to quaternion}

Find the unit quaternion for a $60^\circ$ active rotation about
\begin{equation}
\widehat{\mathbf u}
=
\frac{1}{\sqrt3}
\begin{bmatrix}
1\\1\\1
\end{bmatrix}.
\end{equation}

\subsection*{Problem 12: sign ambiguity}

Explain why $q$ and $-q$ represent the same physical rotation.

\subsection*{Problem 13: rotate a basis vector}

Use
\begin{equation}
q=\frac{1+\mathbf k}{\sqrt2}
\end{equation}
to rotate
\begin{equation}
\mathbf v=
\begin{bmatrix}
1\\0\\0
\end{bmatrix}.
\end{equation}

\subsection*{Problem 14: vector rotation formula}

Write the vector only quaternion rotation formula in terms of
$q_w$, $\mathbf q$, and $\mathbf v$.

\subsection*{Problem 15: parallel vector special case}

A unit quaternion represents rotation about axis $\widehat{\mathbf u}$.
What happens to a vector parallel to $\widehat{\mathbf u}$?

\subsection*{Problem 16: composition order}

Quaternion $q_1$ acts first and quaternion $q_2$ acts second.
What is the net quaternion?

\subsection*{Problem 17: noncommuting rotations}

Apply a $90^\circ$ active rotation about $x$ and then a $90^\circ$ active
rotation about $y$ to
\begin{equation}
\mathbf v=
\begin{bmatrix}
0\\0\\1
\end{bmatrix}.
\end{equation}
Then reverse the order.  Compare the results.

\subsection*{Problem 18: quaternion to direction cosine matrix}

Find $R(q)$ for
\begin{equation}
q=\frac{1+\mathbf k}{\sqrt2}.
\end{equation}

\subsection*{Problem 19: matrix columns}

What is the geometric meaning of the columns of an active rotation matrix
$R(q)$?

\subsection*{Problem 20: transpose and conjugate}

For a unit quaternion, show the relation among
\begin{equation}
R(q^*),\qquad R(q)^{-1},\qquad R(q)^T.
\end{equation}

\subsection*{Problem 21: matrix to quaternion}

Recover one quaternion corresponding to
\begin{equation}
R=
\begin{bmatrix}
0&amp;-1&amp;0\\
1&amp;0&amp;0\\
0&amp;0&amp;1
\end{bmatrix}.
\end{equation}

\subsection*{Problem 22: matrix recovery near $180^\circ$}

For
\begin{equation}
R=
\begin{bmatrix}
1&amp;0&amp;0\\
0&amp;-1&amp;0\\
0&amp;0&amp;-1
\end{bmatrix},
\end{equation}
find a corresponding quaternion and explain why a trace formula based on
division by $q_w$ is poor here.

\subsection*{Problem 23: Euler angles to quaternion}

For the 3 2 1 yaw pitch roll convention
\begin{equation}
R=R_z(\psi)R_y(\theta)R_x(\phi),
\end{equation}
find the quaternion for
\begin{equation}
\phi=0,\qquad
\theta=0,\qquad
\psi=90^\circ.
\end{equation}

\subsection*{Problem 24: pure roll}

Find the quaternion corresponding to
\begin{equation}
\phi=90^\circ,\qquad
\theta=0,\qquad
\psi=0.
\end{equation}

\subsection*{Problem 25: gimbal lock}

For the 3 2 1 sequence, at what pitch angles does the Euler angle
representation become singular, and what geometric alignment occurs?

\subsection*{Problem 26: body resolved quaternion kinematics}

State the quaternion differential equation for $q={}^Iq_B$ when angular
velocity is resolved in body coordinates.

\subsection*{Problem 27: inertial resolved quaternion kinematics}

State the corresponding equation when angular velocity is resolved in inertial
coordinates.

\subsection*{Problem 28: constant rate propagation}

A body starts at
\begin{equation}
q(0)=1
\end{equation}
and rotates at a constant body rate
\begin{equation}
\boldsymbol\omega^B=
\begin{bmatrix}
0\\0\\\Omega
\end{bmatrix}.
\end{equation}
Find $q(t)$.

\subsection*{Problem 29: exact IMU increment}

An IMU reports a bias corrected body rate of
\begin{equation}
\boldsymbol\omega^B=
\begin{bmatrix}
0\\0\\1
\end{bmatrix}\text{ rad/s}
\end{equation}
for
\begin{equation}
\Delta t=0.01\text{ s}.
\end{equation}
Find the exact incremental quaternion.

\subsection*{Problem 30: small angle IMU increment}

For Problem 29, compute the first order small angle incremental quaternion.

\subsection*{Problem 31: gyro bias drift}

An uncorrected gyro bias is
\begin{equation}
0.05^\circ/\text{s}.
\end{equation}
Estimate the resulting attitude error after five minutes.

\subsection*{Problem 32: forward Euler norm drift}

Write one forward Euler quaternion update and explain why normalization is
commonly applied afterward.

\subsection*{Problem 33: relative attitude}

Let $q$ be the actual attitude and $q_d$ the desired attitude.
Write the inertial side error quaternion $\delta q_I$ such that
\begin{equation}
q_d=\delta q_I q.
\end{equation}

\subsection*{Problem 34: body side error}

Write the body side error quaternion $\delta q_B$ such that
\begin{equation}
q_d=q\delta q_B.
\end{equation}

\subsection*{Problem 35: small attitude error}

For a small attitude error, relate the vector part of $\delta q$ to the
three component error vector $\delta\boldsymbol\theta$.

\subsection*{Problem 36: sign choice for an error quaternion}

Why is it often useful to choose the equivalent error quaternion with
\begin{equation}
\delta q_w\geq0?
\end{equation}

\subsection*{Problem 37: coning cross term}

For two small body delta angles applied in chronological order,
write the leading approximation for the equivalent rotation vector.

\subsection*{Problem 38: numerical coning example}

Let
\begin{equation}
\Delta\boldsymbol\theta_1=
\begin{bmatrix}
0.02\\0\\0
\end{bmatrix},
\qquad
\Delta\boldsymbol\theta_2=
\begin{bmatrix}
0\\0.03\\0
\end{bmatrix}.
\end{equation}
Compute the leading cross term
\begin{equation}
\frac12
\Delta\boldsymbol\theta_1
\times
\Delta\boldsymbol\theta_2.
\end{equation}

\subsection*{Problem 39: IMU navigation flow}

Describe the order in which gyro data, quaternion attitude, accelerometer
specific force, and velocity are used in a basic strapdown navigation
propagation.

\subsection*{Problem 40: comprehensive attitude update}

A vehicle has current attitude
\begin{equation}
q_k=
\begin{bmatrix}
1&amp;0&amp;0&amp;0
\end{bmatrix}^{T}.
\end{equation}
The gyro measurement is
\begin{equation}
\boldsymbol\omega_m^B=
\begin{bmatrix}
0.10\\0.20\\0.30
\end{bmatrix}\text{ rad/s},
\end{equation}
the estimated gyro bias is
\begin{equation}
\widehat{\mathbf b}_g=
\begin{bmatrix}
0.01\\0.02\\0.03
\end{bmatrix}\text{ rad/s},
\end{equation}
and
\begin{equation}
\Delta t=0.02\text{ s}.
\end{equation}
Compute the corrected rate, delta angle, and a first order propagated
quaternion.

\section{Solutions}

\subsection*{Solution 1}

The scalar part is
\begin{equation}
q_w=3,
\end{equation}
and the vector part is
\begin{equation}
\mathbf q=
\begin{bmatrix}
-2\\4\\-1
\end{bmatrix}.
\end{equation}

\subsection*{Solution 2}

Hamilton multiplication gives
\begin{equation}
\mathbf i\mathbf j=\mathbf k,
\qquad
\mathbf j\mathbf i=-\mathbf k,
\qquad
\mathbf k\mathbf k=-1.
\end{equation}

\subsection*{Solution 3}

Write
\begin{equation}
p=(1,[2,-1,0]^T),
\qquad
q=(2,[1,0,3]^T).
\end{equation}
The scalar part is
\begin{equation}
1(2)-[2,-1,0]
\begin{bmatrix}
1\\0\\3
\end{bmatrix}
=2-2=0.
\end{equation}
The vector part is
\begin{equation}
1
\begin{bmatrix}
1\\0\\3
\end{bmatrix}
+
2
\begin{bmatrix}
2\\-1\\0
\end{bmatrix}
+
\begin{bmatrix}
2\\-1\\0
\end{bmatrix}
\times
\begin{bmatrix}
1\\0\\3
\end{bmatrix}
=
\begin{bmatrix}
2\\-8\\4
\end{bmatrix}.
\end{equation}
Therefore
\begin{equation}
\boxed{
pq=2\mathbf i-8\mathbf j+4\mathbf k.
}
\end{equation}

\subsection*{Solution 4}

The scalar part is again zero.  The vector part is
\begin{equation}
2
\begin{bmatrix}
2\\-1\\0
\end{bmatrix}
+
1
\begin{bmatrix}
1\\0\\3
\end{bmatrix}
+
\begin{bmatrix}
1\\0\\3
\end{bmatrix}
\times
\begin{bmatrix}
2\\-1\\0
\end{bmatrix}
=
\begin{bmatrix}
8\\4\\2
\end{bmatrix}.
\end{equation}
Thus
\begin{equation}
\boxed{
qp=8\mathbf i+4\mathbf j+2\mathbf k,
}
\end{equation}
which differs from $pq$.

\subsection*{Solution 5}

The scalar vector product is
\begin{equation}
\boxed{
(p_w,\mathbf p)(q_w,\mathbf q)
=
\left(
p_wq_w-\mathbf p\cdot\mathbf q,\,
p_w\mathbf q+q_w\mathbf p+\mathbf p\times\mathbf q
\right).
}
\end{equation}

\subsection*{Solution 6}

For pure vectors,
\begin{equation}
\mathbf a\mathbf b
=
-\mathbf a\cdot\mathbf b
+
\mathbf a\times\mathbf b.
\end{equation}
The dot product is
\begin{equation}
\mathbf a\cdot\mathbf b=2.
\end{equation}
The cross product is
\begin{equation}
\mathbf a\times\mathbf b=
\begin{bmatrix}
6\\-3\\1
\end{bmatrix}.
\end{equation}
Therefore
\begin{equation}
\boxed{
\mathbf a\mathbf b
=
-2+6\mathbf i-3\mathbf j+\mathbf k.
}
\end{equation}

\subsection*{Solution 7}

The conjugate reverses the vector part:
\begin{equation}
\boxed{
q^*=2+3\mathbf i-4\mathbf j-5\mathbf k.
}
\end{equation}

\subsection*{Solution 8}

The squared norm is
\begin{equation}
\|q\|^2
=
2^2+(-3)^2+4^2+5^2
=
54.
\end{equation}
Hence
\begin{equation}
\boxed{
\|q\|=3\sqrt6.
}
\end{equation}

\subsection*{Solution 9}

Using
\begin{equation}
q^{-1}=\frac{q^*}{\|q\|^2},
\end{equation}
we obtain
\begin{equation}
\boxed{
q^{-1}
=
\frac{1}{54}
\left(
2+3\mathbf i-4\mathbf j-5\mathbf k
\right).
}
\end{equation}

\subsection*{Solution 10}

The squared norm is
\begin{equation}
\|q\|^2
=
4\left(\frac12\right)^2
=
1.
\end{equation}
Therefore it is a unit quaternion.

\subsection*{Solution 11}

For angle $\theta=60^\circ$,
\begin{equation}
q
=
\cos\frac{\theta}{2}
+
\widehat{\mathbf u}
\sin\frac{\theta}{2}.
\end{equation}
Thus
\begin{equation}
\boxed{
q=
\frac{\sqrt3}{2}
+
\frac{1}{2\sqrt3}
\left(
\mathbf i+\mathbf j+\mathbf k
\right).
}
\end{equation}

\subsection*{Solution 12}

The rotated vector is
\begin{equation}
\mathbf v'=q\mathbf v q^*.
\end{equation}
Replacing $q$ by $-q$ gives
\begin{equation}
(-q)\mathbf v(-q)^*
=
(-q)\mathbf v(-q^*)
=
q\mathbf v q^*.
\end{equation}
Therefore the physical rotation is unchanged.

\subsection*{Solution 13}

The quaternion is a $90^\circ$ active rotation about $z$.  Therefore
\begin{equation}
\boxed{
\mathbf v'=
\begin{bmatrix}
0\\1\\0
\end{bmatrix}.
}
\end{equation}

\subsection*{Solution 14}

The vector only formula is
\begin{equation}
\boxed{
\mathbf v'
=
\mathbf v
+
2q_w(\mathbf q\times\mathbf v)
+
2\mathbf q\times(\mathbf q\times\mathbf v).
}
\end{equation}

\subsection*{Solution 15}

A vector parallel to the rotation axis is unchanged:
\begin{equation}
\boxed{
\mathbf v'=\mathbf v.
}
\end{equation}

\subsection*{Solution 16}

If $q_1$ acts first and $q_2$ acts second, then
\begin{equation}
\boxed{
q_{\mathrm{net}}=q_2q_1.
}
\end{equation}

\subsection*{Solution 17}

Starting from $\mathbf e_3$, a $90^\circ$ rotation about $x$ gives
\begin{equation}
\mathbf e_3\mapsto-\mathbf e_2.
\end{equation}
A subsequent $90^\circ$ rotation about $y$ leaves $-\mathbf e_2$ unchanged, so
\begin{equation}
\boxed{
\mathbf v_{\mathrm{xy}}=-\mathbf e_2.
}
\end{equation}
Reversing the order,
\begin{equation}
\mathbf e_3\mapsto\mathbf e_1
\end{equation}
under the $y$ rotation, and the later $x$ rotation leaves $\mathbf e_1$
unchanged.  Therefore
\begin{equation}
\boxed{
\mathbf v_{\mathrm{yx}}=\mathbf e_1.
}
\end{equation}
The different answers demonstrate noncommutativity.

\subsection*{Solution 18}

The matrix is
\begin{equation}
\boxed{
R(q)=
\begin{bmatrix}
0&amp;-1&amp;0\\
1&amp;0&amp;0\\
0&amp;0&amp;1
\end{bmatrix}.
}
\end{equation}

\subsection*{Solution 19}

The columns are the images of the basis vectors:
\begin{equation}
R(q)
=
\begin{bmatrix}
R(q)\mathbf e_1&amp;
R(q)\mathbf e_2&amp;
R(q)\mathbf e_3
\end{bmatrix}.
\end{equation}

\subsection*{Solution 20}

For a unit quaternion,
\begin{equation}
\boxed{
R(q^*)=R(q)^{-1}=R(q)^T.
}
\end{equation}

\subsection*{Solution 21}

The matrix is a $90^\circ$ active rotation about $z$, so one choice is
\begin{equation}
\boxed{
q=\frac{1+\mathbf k}{\sqrt2}.
}
\end{equation}
Its negative is equally valid.

\subsection*{Solution 22}

The matrix is a $180^\circ$ active rotation about $x$, so
\begin{equation}
\boxed{
q=\mathbf i
}
\end{equation}
or $-\mathbf i$ is valid.  Here
\begin{equation}
q_w=0.
\end{equation}
Therefore a recovery formula that divides by $q_w$ is singular or numerically
fragile.  A largest component branch should be used instead.

\subsection*{Solution 23}

This is pure $90^\circ$ yaw, so
\begin{equation}
\boxed{
q=
\frac{1+\mathbf k}{\sqrt2}.
}
\end{equation}

\subsection*{Solution 24}

This is pure $90^\circ$ roll, so
\begin{equation}
\boxed{
q=
\frac{1+\mathbf i}{\sqrt2}.
}
\end{equation}

\subsection*{Solution 25}

The 3 2 1 representation becomes singular at
\begin{equation}
\boxed{
\theta=\pm90^\circ.
}
\end{equation}
At these attitudes the yaw and roll axes align, so the coordinate
representation loses one independent direction.

\subsection*{Solution 26}

For body resolved angular velocity,
\begin{equation}
\boxed{
\dot q=\frac12q\omega^B.
}
\end{equation}

\subsection*{Solution 27}

For inertial resolved angular velocity,
\begin{equation}
\boxed{
\dot q=\frac12\omega^I q.
}
\end{equation}

\subsection*{Solution 28}

The rotation is about the $z$ axis through angle $\Omega t$, so
\begin{equation}
\boxed{
q(t)
=
\cos\frac{\Omega t}{2}
+
\mathbf k\sin\frac{\Omega t}{2}.
}
\end{equation}

\subsection*{Solution 29}

The delta angle is
\begin{equation}
\Delta\boldsymbol\theta=
\begin{bmatrix}
0\\0\\0.01
\end{bmatrix}\text{ rad}.
\end{equation}
Thus
\begin{equation}
\boxed{
\delta q=
\begin{bmatrix}
\cos0.005\\
0\\
0\\
\sin0.005
\end{bmatrix}
\approx
\begin{bmatrix}
0.9999875\\
0\\
0\\
0.00499998
\end{bmatrix}.
}
\end{equation}

\subsection*{Solution 30}

The first order small angle increment is
\begin{equation}
\boxed{
\delta q
\approx
\begin{bmatrix}
1\\
0\\
0\\
0.005
\end{bmatrix}.
}
\end{equation}

\subsection*{Solution 31}

Five minutes is 300 s.  The approximate error is
\begin{equation}
\delta\theta
\approx
0.05^\circ/\text{s}\times300\text{ s}
=
15^\circ.
\end{equation}

\subsection*{Solution 32}

Forward Euler gives
\begin{equation}
q_{k+1}^{\mathrm E}
=
q_k+\frac12q_k\omega_k^B\Delta t.
\end{equation}
This step is only tangent to the unit quaternion sphere to first order, so
\begin{equation}
\left\|q_{k+1}^{\mathrm E}\right\|
\neq1
\end{equation}
in general.  A common correction is
\begin{equation}
\boxed{
q_{k+1}
=
\frac{q_{k+1}^{\mathrm E}}
{\left\|q_{k+1}^{\mathrm E}\right\|}.
}
\end{equation}

\subsection*{Solution 33}

From
\begin{equation}
q_d=\delta q_Iq,
\end{equation}
right multiply by $q^*$:
\begin{equation}
\boxed{
\delta q_I=q_dq^*.
}
\end{equation}

\subsection*{Solution 34}

From
\begin{equation}
q_d=q\delta q_B,
\end{equation}
left multiply by $q^*$:
\begin{equation}
\boxed{
\delta q_B=q^*q_d.
}
\end{equation}

\subsection*{Solution 35}

For a small error,
\begin{equation}
\delta q
\approx
\begin{bmatrix}
1\\[1mm]
\dfrac12\delta\boldsymbol\theta
\end{bmatrix}.
\end{equation}
Therefore
\begin{equation}
\boxed{
\delta\boldsymbol\theta
\approx
2\,\delta\mathbf q_v.
}
\end{equation}

\subsection*{Solution 36}

The quaternions $\delta q$ and $-\delta q$ represent the same relative
rotation.  Choosing
\begin{equation}
\delta q_w\geq0
\end{equation}
selects the representative associated with the principal rotation angle from
$0$ to $\pi$.  This is usually the smaller attitude correction.

\subsection*{Solution 37}

For two small body increments,
\begin{equation}
\boxed{
\Delta\boldsymbol\theta_{\mathrm{eq}}
\approx
\Delta\boldsymbol\theta_1+
\Delta\boldsymbol\theta_2+
\frac12
\Delta\boldsymbol\theta_1
\times
\Delta\boldsymbol\theta_2.
}
\end{equation}

\subsection*{Solution 38}

The cross product is
\begin{equation}
\Delta\boldsymbol\theta_1
\times
\Delta\boldsymbol\theta_2
=
\begin{bmatrix}
0\\0\\0.0006
\end{bmatrix}.
\end{equation}
Therefore
\begin{equation}
\boxed{
\frac12
\Delta\boldsymbol\theta_1
\times
\Delta\boldsymbol\theta_2
=
\begin{bmatrix}
0\\0\\0.0003
\end{bmatrix}\text{ rad}.
}
\end{equation}

\subsection*{Solution 39}

A basic strapdown propagation proceeds as follows:
\begin{enumerate}
\item correct the body gyro measurement using the current sensor calibration
and gyro bias estimate;
\item integrate the corrected gyro data to propagate the quaternion attitude;
\item use the propagated attitude to rotate measured body specific force into
the inertial or navigation frame;
\item combine the rotated specific force with gravity and any required frame
terms;
\item integrate acceleration to update velocity and then position.
\end{enumerate}

\subsection*{Solution 40}

The corrected gyro rate is
\begin{equation}
\boldsymbol\omega_c^B
=
\boldsymbol\omega_m^B-\widehat{\mathbf b}_g
=
\begin{bmatrix}
0.09\\0.18\\0.27
\end{bmatrix}\text{ rad/s}.
\end{equation}
The delta angle is
\begin{equation}
\Delta\boldsymbol\theta
=
\boldsymbol\omega_c^B\Delta t
=
\begin{bmatrix}
0.0018\\0.0036\\0.0054
\end{bmatrix}\text{ rad}.
\end{equation}
The first order incremental quaternion is
\begin{equation}
\delta q
\approx
\begin{bmatrix}
1\\
0.0009\\
0.0018\\
0.0027
\end{bmatrix}.
\end{equation}
Since $q_k$ is the identity,
\begin{equation}
q_{k+1}
\approx
q_k\delta q
=
\begin{bmatrix}
1\\
0.0009\\
0.0018\\
0.0027
\end{bmatrix}.
\end{equation}
A production implementation would normally normalize this first order result,
or use the exact exponential increment directly.

\section*{License}

This article is an original synthesis prepared for PhysicsLibrary and intended
for release under CC BY-SA 4.0.</content>
</record>
