ECI-frame navigation equations block diagram is shown in Figure 1. The suffixes (-) and (+) are used to denote a priori (at time \(t\)) and a posteriori values (at time \(t + \tau_i\)).
Attitude Update
To track the attitude change, we must track the rotation matrix through time. Consider an attitude change over time interval \(t\) to \(t + \tau_i\). The time derivative of the rotation matrix is:
This assumption is often made where the attiude integration is performed at the IMU output rate. The matrix exponential can be expressed as a power series:
When the angular rate is assumed to be constant over the attitude integration interval, \(\boldsymbol{\alpha}^b_{ib} \approx \boldsymbol{\omega}^b_{ib} \tau_i\). Then:
This truncation of the power-series introduces errors in the attitude integration. Precision may be improved by including higher-order terms in the power series,
breaking down the attitude update into smaller steps, or performing the exact attitude update.
Precision Attitude Update
It is convenient to define the attitude update matrix as the transformation matrix
from the body frame at the end of the attitude update step of the navigation equations
to that at the beginning, \(\mathbf{R}^{b-}_{b+}\):
which is the Rodrigues's formula derived in Kinematics. To avoid division by zero, ensure to replace with the approximate version when \(|\boldsymbol{\alpha}^b_{ib}|\) is very small.
The attitude increment vector can be computed in terms of the attitude update matrix:
Since the specific-force measurement is an average over time \(t\) to \(t + \tau_i\), the transformation matrix should be similarly averaged. Assuming a constant angular rate:
However, the mean of two transformation matrices does not precisely produce the mean of the two attitudes. The less the attitude varies over the time interval,
the smaller the errors introduced by this approximation.
Precision Specific-Force Frame Transformation
Let the average coordinate transfromation matrix over the time interval be \(\bar{\mathbf{R}}^i_b\) such that:
Strictly, the position should be averaged over the interval \(t\) to \(t + \tau_i\), but this would require recursive navigation equations, and the gravitaional-field
varies slowly with position. Hence, it is generally sufficient to use \(\mathbf{r}^i_{ib}(-)\).
When the reference frame and resolving axes are the same, the time derivative of velocity is simply acceleration:
In the inertial-frame implementation of the navigation equations, the time derivative of the Cartesian position is simply velocity as the reference frame and resolving
axes are the same:
The velocity and position updates presented in eqs (\(\ref{4.2.19}\)) and (\(\ref{4.2.21}\)) are exact when the navigation equations are iterated at the IMU output rate and constant acceleration is assumed excluding
the variation in gravitation over the update interval (which is negligible).