Uncertainty Propagation for Inertial Navigation with Coning, Sculling, and Scrolling Corrections

This paper investigates the propagation of estimation errors through a common coning, sculling, and scrolling architecture used in modern-day inertial navigation systems. Coning, sculling, and scrolling corrections often have an unaccounted for effect on the error statistics of inertial measurements used to describe the state and uncertainty propagation for position, velocity, and attitude estimates. Through the development of an error analysis for a set of coning, sculling, and scrolling algorithms, mappings of the measurement and estimation errors through the correction term are adaptively generated. Using the developed mappings, an efficient and consistent propagation of the state and uncertainty, within the multiplicative extended Kalman filter architecture, is achieved. Monte Carlo analysis is performed, and results show that the developed system has favorable attributes when compared to the traditional mechanization.


Introduction
Inertial navigation describes the technique whereby the integration of non-gravitational specific force and total angular rate measurements are used in conjunction with a gravity model to produce estimates for the vehicle states: i.e., the inertial position, velocity, and attitude. In combining the modern inertial navigation system (INS) with the extended Kalman filter (an extension to the Kalman filter [1] for nonlinear systems), estimates for these states and a measure of uncertainty in each can be maintained. Before the introduction of strapdown sensors, inertially stabilized platforms (ISPs) were used to maintain the vehicle's navigation frame and isolate the necessary sensors from the body's rotation and any present vibration. A few examples of ISP mechanizations of the INS include the Apollo PGNCS [2], which served on both the command module and lunar module, and those developed for the Minuteman III and Peacekeaper intercontinental ballistic missiles [3]. Though ISPs were the standard until late in the 20th century, they have been widely replaced by the strapdown mechanization, where the sensors are instead "strapped down" or attached directly to the structure of the vehicle [4]. The introduction of strapdown inertial navigation systems (SINSs) significantly reduced the mass and complexity of the INS, as compared to the ISPs, by removing auxiliary components required for the housing and stabilization of ISPs. An early adoption of the SINS for space missions includes the Apollo Abort Guidance System in 1969 as a backup to the PGNCS, where the added mass of a second ISP became a significant consideration [5]. Unfortunately, with the adoption of the SINS, it became necessary to computationally maintain the transformation to the inertially fixed navigation frame as the SINS is not mechanically isolated from the vehicle rotation.
Since the adoption of SINSs, maintaining an accurate attitude estimate has become integral to velocity and position estimation. However, when out-of-phase sinusoidal motion is exhibited about two orthogonal axes, significant error growth is seen [6]-this is commonly referred to as coning motion because, when the angular velocity magnitude and frequency of oscillation are constant, the third axis appears to move on the surface of a cone. These effects are commonly seen in vibrational environments or when maneuvers are performed and are of particular interest to many aerospace applications [7]. A significant portion of SINS development initially focused on generating efficient algorithms capable of addressing the attitude error growth due to coning [8][9][10][11]. The first generation of modern coning correction algorithms was developed by making basic dynamical assumptions and utilizing a sequence of high-frequency inertial measurements [12][13][14], while newer approaches seek to minimize the error under specific circumstances [15][16][17]. Errors can also occur due to sculling and scrolling motions, which are the velocity and position analogs to coning motion, respectively, though they tend not to have the impact that coning does [14]. Fortunately, it has also been shown that once an optimal coning algorithm has been developed, a dual approach for sculling can also be obtained [18,19], extending the usefulness of the approaches. The development of coning, sculling, and scrolling (CSS) algorithms has been critical to SINS-aided navigation, mitigating the effects of cascading attitude errors into the integrated velocity and position. A generalized set of CSS algorithms presented by Savage in [13,14] and their application to modern inertial navigation systems are of primary interest in this paper.
The modern INS is comprised of three orthogonal linear accelerometers and gyroscopes that measure non-gravitational acceleration and total angular velocity, while a navigation computer is employed to integrate these measurements. Because measurements from these sensors help to describe a subset of the vehicle dynamics and are self-contained, they are often called internal or inertial sensors-this helps to differentiate them from other critical measurement systems. Before being passed to the navigation computer, some combination of the CSS corrections is typically applied to the measurements along the processing chain, either within a high-frequency pre-processor or the manufacturer's sensor software [20,21]. The CSS-corrected measurements are passed to the navigation computer for state propagation. The extended Kalman filter typically serves as the backbone of many modern navigation systems-to accurately propagate the uncertainty for inertial navigation, suitable models for the dynamics and inertial measurements must be known. Unfortunately, inertial measurements are often corrupted by many parametric sensor errors that can have a significant impact on navigation performance [22]. Often, estimates for each of the parametric states are used to correct the inertial measurements before integrating [23]. Thus, the use of CSS-corrected quantities that have been corrected for parametric sensor state estimates contribute to the navigation uncertainty, though this contribution typically goes unaccounted for. By developing and implementing an error mapping through the algorithms used for CSS corrections, a rigorous treatment of these errors and their potential effect on the state uncertainty can be realized.
The remainder of the paper is summarized as follows: Section 2 reviews the mechanics of inertial navigation and presents a standard set of algorithms to make second-order CSS corrections. The primary contribution of the work is contained in Section 3, which outlines the development of the error propagation and presents the mappings for use within the linearized uncertainty propagation. Section 4 describes the approaches to be compared, the lunar descent-to-landing scenario in which the developed methods are examined, and the performance metrics used in analysis. Monte Carlo simulation results are then examined in Section 5. Finally, Section 6 briefly summarizes the work and its primary conclusions.

Inertial Navigation
Modern CSS algorithms require several operational frequencies, here defined to be the major, minor, and subminor time intervals illustrated in Figure 1. The subminor interval [t m−1 , t m ] describes the time over which the inertial sensors integrate to provide discrete measurements of the non-gravitational acceleration and total vehicle angular velocity. The minor interval [t −1 , t ] defines the rate at which the high-speed correction algorithms are applied, and the major interval [t k−1 , t k ] defines the navigation rate, or the rate at which the state propagation is performed. For the algorithms considered throughout this paper, The CSS algorithms inspected within this paper generate second-order corrections for coning, sculling, and scrolling motion and are based upon those discussed by Savage in References [4,13,14]. These algorithms, along with many other CSS algorithms, were developed after Bortz presented a differential equation of the orientation vector (also called the rotation vector), given as [11] where φ is the orientation vector describing the rotation of one frame to another through an angle, φ = φ , about an axis pointing in the direction of φ, and ω is the angular velocity of the body that is inertially measurable by strapdown angular-rate sensors.
Equation (1) is commonly referred to as the Bortz equation and allows for the integration of the orientation vector using measurements from strapdown sensors. Many of the coning algorithms originate from the isolation and approximation of the non-commutative rate vector,α, in the Bortz equation, A common approximation for Eq. (2) is obtained from a power series expansion for the coefficient of the second term in Eq. (2), such that which allows Eq. (1) to be approximated aṡ The use of Eq. (4) as an approximation for Eq. (1) to compensate for coning motion 97 in a two-stage algorithm, which generates the correction at a higher frequency than 98 the state propagation, by Bortz [11] and Jordan [10], laid the foundation for modern 99 coning algorithms. These two-stage approaches generate high frequency, low complexity 100 corrections, the results of which are fed into a low frequency algorithm that produces The CSS algorithms inspected within this paper generate second-order corrections for coning, sculling, and scrolling motion and are based upon those discussed by Savage in [4,13,14]. These algorithms, along with many other CSS algorithms, were developed after Bortz presented a differential equation of the orientation vector (also called the rotation vector), given as [11] where φ is the orientation vector describing the rotation of one frame to another through an angle, φ = φ , about an axis pointing in the direction of φ, and ω is the angular velocity of the body that is inertially measurable by strapdown angular-rate sensors. Equation (1) is commonly referred to as the Bortz equation and allows for the integration of the orientation vector using measurements from strapdown sensors. Many of the coning algorithms originate from the isolation and approximation of the non-commutative rate vector,α, in the Bortz equation,α A common approximation for Equation (2) is obtained from a power series expansion for the coefficient of the second term in Equation (2), such that which allows Equation (1) to be approximated aṡ The use of Equation (4) as an approximation for Equation (1) to compensate for coning motion in a two-stage algorithm, which generates the correction at a higher frequency than the state propagation, by Bortz [11] and Jordan [10] laid the foundation for modern coning algorithms. These two-stage approaches generate high-frequency, low-complexity corrections, the results of which are fed into a low-frequency algorithm that produces a state estimate. One of the original two-stage algorithms proposed by Savage in 1966 utilizes a first-order equation at a higher frequency to recognize high-frequency vibrations and a second-order attitude update at a lower frequency, providing an efficient and accurate attitude estimate based upon the corrections made by the high-frequency algorithm [8]. While the two-stage approach was originally introduced because of limited computer capabilities, modern computing capabilities have prompted the desire to return to a single cycle algorithm [13]. However, the algorithms described for most of the two-stage algorithms can also be expanded instead to process a batch of sequential measurements to produce an equivalent, coned measurement at a lower frequency.
The algorithms considered within this paper represent a generalized form of the corrections, assuming that the quantities vary linearly over the minor interval. Additionally, the algorithms examined here are made using only two measurements such that the subminor and minor intervals are the same. Many modern coning correction algorithms have been optimized for error minimization, dependent upon the expected environment or intended number of measurements [12,15,24,25]. It is also important to realize that sculling and scrolling algorithm design has seen much less research and development, leading to a significantly smaller body of literature examining their use. By performing an analysis of the error propagation through unoptimized algorithms, the foundation for analyzing and developing an error propagation architecture for other CSS algorithms used for inertial navigation is established. A detailed derivation of the algorithms is provided by Savage in [4,13,14] and will not be provided within this paper.

Attitude Integration (Coning) Algorithm
The coning algorithm generates a second-order approximation for the coning motion, where the incremental angle vector produced by the inertial measurement unit (IMU) gyroscopes is where ω c c/i is the angular velocity vector of the IMU case frame (denoted by c) with respect to the inertial frame (denoted by i). This incremental angle vector describes the rotation of the IMU case frame from t m−1 to t m , where the superscript c denotes the expression of the vector in the IMU case frame. The frame designation will be implied for the coning elements from here on, as the frames will be consistent throughout the remainder of the paper.
Accumulations for the measurements and corrections made at the end of every minor interval, contained within the major interval, are defined as a function of the incremental angle measurements and used to produce the coned rotation vector. The measurement accumulation is given by The accumulation of the coning corrections is expressed similarly to Equation (6) as where ∆β i is the coning correction generated at t i under the assumption of a linearly varying angular velocity; i.e., Given the accumulations in Equations (6) and (7), the coned rotation vector ∆φ k is the sum of the two accumulations, or where θ describes the sensed change in the attitude over the [t k−1 , t k ] interval and β accounts for the non-commutative and unmeasured components due to the changing angular velocity vector. The k subscript denotes that this is the coned rotation vector describing the rotation from t k−1 to t k , while the subscript describes the number of measurements and corrections accumulated within the major interval. At the initialization of the algorithm for any given major interval, the terms from the previous time-step must be zero (∆θ 0 = 0 and ∆β 0 = 0 at t 0 = t k−1 ). Note that any number of measurements can be processed between the attitude predictions, but when [t −1 , t ] = [t k−1 , t k ], or just a single measurement is processed for the prediction, the algorithm becomes identical to traditional methods of dead-reckoning [26], where only a single IMU measurement is processed for the attitude propagation at each step; this statement can be proven by recognizing that with the initialization of the accumulation variables to zero, the correction will also be zero. Finally, if the angular velocity vector is constant in direction, there is no coning motion, the cross product will be zero, and the coning correction in each measurement will thus be zero.

Velocity Integration (Sculling) Algorithm
The velocity integration algorithms correct for errors incurred by IMU frame and velocity vector rotations. The algorithm uses the incremental velocity measurement from the IMU, a quantification of the non-gravitational specific forces acting on the vehicle, given by where a c ng is the non-gravitational specific force experienced by the strapdown IMU. Note that the superscript c denotes the expression of the incremental velocity in the case frame of the IMU; this subscript will also be implied for the sculling elements for the remainder of the paper.
Similar to the accumulation of the measurements in Equation (6), the incremental velocity measurements must also be accumulated, such that The sculling-corrected incremental velocity, describing the change in velocity due to the non-gravitational specific forces acting on the vehicle from t k−1 to t k , can then be separated into three components, where ∆v scul, is the sculling correction and ∆v rot, is the compensation for the rotation of the velocity vector. The k and subscripts describe the dependency of the sculled non-gravitational change in velocity upon the inertial measurements obtained over the major interval. The sculling correction can be modeled as an accumulation where the incremental sculling correction is given by which results from an integration of the sculling motion over the measurement cycle, assuming a linearly changing angular velocity and specific force [14]. The correction due to the rotation of the velocity vector on the interval is where θ is the accumulation of the incremental angle measurements as discussed in Section 2.1. The non-gravitational incremental velocity is then used for the vehicle's velocity propagation. At the initialization of the algorithm, for any given major interval, the terms from the previous time-step must be zero (v 0 = 0 and ∆v scul,0 = 0 at t 0 = t k−1 ) because no information is available for the correction on the current interval. Similarly to the coning algorithm, this algorithm can be used to process any number of measurements, and when [t −1 , t ] = [t k−1 , t k ], or just a single measurement is used for state prediction, the algorithm becomes identical to the traditional method of dead-reckoning at measurement frequency. This is proven similar to the equivalent statement regarding the coning algorithm.

Position Integration (Scrolling) Algorithm
No additional measurement source is used for the position integration algorithm; the integrated specific force is again integrated to provide the position increment, while the scrolling algorithm corrects for the effects of a varying angular rate and specific forces upon the integration. The effects of scrolling can be accounted for in the non-gravitational specific force integration, given by The accumulation of the integrated incremental velocity is defined to be where (16) and ∆t = t − t −1 . Note that the result in Equation (16) is obtained by integrating the specific force, assuming that the angular velocity and specific force vary linearly over the minor interval [4]. The rotational component of the scrolling correction is given by with the integrated incremental angle accumulating as The scrolling correction can be broken into a component accounting for the effects due to sculling and a component accounting for other higher-order effects. The accumulation of these effects is therefore given by where the scrolling correction contributed by sculling is and the correction for the other higher-order effects is Similar to the coning and sculling algorithms, each term from the previous cycle must be initialized to zero (s θ,0 = 0, s v,0 = 0, θ 0 = 0, ∆θ 0 = 0, v 0 = 0 and ∆v i = 0 at t 0 = t k−1 ). It can also be shown that the scrolling correction algorithm and the traditional method for position dead-reckoning are equivalent given that no scrolling motion is present.

Discrete Dead-Reckoning Dynamics
The discretized dynamics for a vehicle aided by a strapdown IMU may be expressed as describing the propagation of position r, velocity v and attitudeq from t k−1 to t k . Note that the superscripts c and i denote quantities described in the IMU case frame and inertially fixed reference frame, respectively, while the k and k − 1 subscripts describe the discrete instances in time t k and t k−1 , respectively, where the value is available to the navigation computer. Consequently, time time between navigation cycles is thus defined to be ∆t k = t k − t k−1 . The transformation from the inertial frame to the case frame is described by the right-handed vector-first attitude quaternionq c i and transformation matrix T c i -the transformation from the case to inertial frame is then given by the transpose of the transformation matrix, (T c i ) T = T i c . The acceleration acting on the vehicle due to gravity is denoted by g = a g (r cg ), and G is the Jacobian of g evaluated at vehicle center of gravity, r cg , where r i cg = r i c + T i c d c relates the position of the vehicle center of gravity r cg to the position of the IMU's case frame r c via their relative position vector d. The quaternion multiplication is denoted by ⊗ and defined such that the order of quaternion multiplication parallels the multiplication of corresponding transformation matrices. The skew-symmetric cross product matrix is defined to be the matrix equivalent of the cross product operation; i.e., a × b = [a×]b where a, b ∈ R 3 and The total rotation of the body ∆φ k is given by Equation (8) and the non-gravitational changes in the position ∆r ng and velocity ∆v ng are given by Equations (10) and (14). The incorporation of the CSS corrections accounts for the vector rotation between t k−1 to t k ; this is also done in more traditional approaches [22,26], though the integration of a single set of IMU measurements only provides a first-order correction for the vector rotation. Savage [14] similarly posed these dynamics with the CSS corrections, though he instead considered a rotating navigation frame (such as the East-North-Up (ENU) frame) and implicitly assumed that the origin of the IMU case frame and body's center of gravity were collocated.

Strapdown IMU Model
The discrete inertial measurements used for the standard SINS are a function of the true quantity being measured and several contributing measurement corruption parameters that result from a variety of sources such as manufacturing tolerances, sensor installation, and unit degradation. The measurement model considered for the strapdown IMU is described by where b g,k , s g,k , n g,k , m g,k , and w g,k are the bias, scale factor, nonorthogonality, misalignment, and zero-mean, time-wise uncorrelated noise in the gyroscope measurement at t k , respectively, while ∆θ k is the true incremental angle, and ∆θ m,k is the measured incremental angle at t k . Similarly, b a,k , s a,k , n a,k , m a,k , and w a,k are the bias, scale factor, nonorthogonality, misalignment, and zero-mean, time-wise uncorrelated noise in the accelerometer measurement at t k , respectively, ∆v k is the true incremental velocity, and ∆v m,k is the measured incremental velocity at t k . The operators used in Equation (22) are defined such that, for y ∈ R 3 , Applying the models given in Equation (22), the true incremental angle and incremental velocity can be obtained from the measured quantities such that It can then be shown, through the application of the matrix inversion lemma [27], that Equation (23) can be approximated by Often, statistics surrounding these parametric errors are studied and detailed by sensor manufacturers, though they can also be determined through independent testing and analysis. If the estimated incremental angle and velocity are denoted as ∆θ i and ∆v i , respectively, then the error between the true and estimated incremental angle and velocity can be defined such that Fusing the available statistics with the expressions in Equations (24) and (25), a model of how errors in the sensor specific parameters propagate into the IMU measurement errors can be developed. Furthermore, expressions detailing the propagation of these parameteric errors into the state estimation error can be developed and used for implementation within the navigation system architecture.

Error Propagation Development
By performing the CSS corrections, a correction factor is determined for the raw measurements, allowing the results to better represent the true dynamics of the vehicle. However, when considering the propagation of errors through these corrections, it is clear that if the manufacturer-provided performance specifications for the sensor bias, noise, etc., are for the raw measurements at the sensor's operational frequency, then these statistics will be inconsistent with the output when CSS corrections are introduced. To have an accurate uncertainty representation, the navigation filter's covariance prediction requires the description of how errors propagate into the estimate to be representative of the system dynamics. In situations where the navigation system relies upon CSS correction algorithms, the CSS corrections aid in the dynamics description and thus have an influence on the error propagation. Therefore, a rigorous expression for the uncertainty in CSS corrections can be determined and implemented within common navigation system architectures by examining the algorithms and mapping the errors through each.

Method for Error Analysis
To determine how the sensor errors propagate through the CSS algorithms contained within Section 2, the transformation of measurement errors through each correction term is examined. To develop the transformation, it is necessary to consider the estimation error in a given variable to be e = x −x, such that the error, e, is expressed as the difference between the true, x, and estimated,x, quantities. Additionally, as seen in Equations (8), (10), and (14), the output of each algorithm can be expressed as a function of the measurement accumulation and the correction terms, while the error dynamics for covariance propagation must be expressed as a function of the estimate and the error in each quantity. To aid in this development, the result of each algorithm is broken into smaller components and recombined to develop the full error dynamics for a given correction.
For example, to determine the coned measurement error, it can be recast as functions of the accumulated incremental angle and coning correction errors such that Noting that the coning correction is a function of the measurements, it is then possible to independently express e θ, and e β, as functions of the measurement errors e ∆θ,i ∀i ∈ {1, 2, . . . } as where f and g are taken to be independent functions that describe the transformation of sensor errors into the accumulated incremental angle and coning correction vectors, respectively. Therefore, after developing the expressions that map the sensor errors into the accumulation and the correction, the error in the coned measurement can be written as a function of the sensor errors. The same can be done for the sculled and scrolled non-gravitational changes in velocity and position, respectively. The error mapping is developed by first generating the mapping for each term in the correction individually and then combining the components to construct a mapping of the sensor error sources through the algorithm and into the resulting correction. After developing the mapping of the errors through the algorithms, a slight simplification can be made to each by assuming that some of the error sources are approximately constant over a single major interval. Finally, the transformation of the error into the state estimate can be written as a function of each contributing error source.

Parametric Estimation Errors
The uncertain parameters used to account for sensor errors in IMU measurements are typically identified as neglected, considered, or estimated quantities within the navigation filter, pending the results of a consider analysis as originally posed by S.F. Schmidt [28], though now widely used in application and research [29][30][31][32][33]. In the case in which all of the error parameters are estimated directly by the navigation filter, and assuming that Equation (24) holds, the expected values of the incremental angle E{∆θ k } = ∆θ k and the incremental velocity E{∆v k } = ∆v k are seen to be whereb g,k ,ŝ g,k ,n g,k , andm g,k are the estimated or expected bias, scale factor, nonorthogonality, and misalignment in the gyroscope measurements, respectively, andb a,k ,ŝ a,k ,n a,k , andm a,k are the estimated or expected bias, scale factor, nonorthogonality, and misalignment in the accelerometer measurements, respectively. Note that the noise is defined to be zero-mean. By subtracting Equation (28) from Equation (24) and simplifying, the error in the measurements can be expressed as where the errors in the bias, scale factor, misalignment, and nonorthogonality estimates for the gyroscopes are defined to be e b g ,k b g,k −b g,k , e s g ,k s g,k −ŝ g,k , e m g ,k m g,k −m g,k , and e n g ,k n g,k −n g,k , respectively, and, similarly, the errors in the bias, scale factor, misalignment, and nonorthogonality estimates for the accelerometers are e b a ,k b a,k −b a,k , e s a ,k s a,k −ŝ a,k , e m a ,k m a,k −m a,k , and e n a ,k n a,k −n a,k , respectively. Through this model, sensor errors can be attributed to and expressed as a function of parametric estimation errors.

Coning Error Propagation
Consider the error in the incremental angle internal measurements to be expressed as where θ andθ are the true and estimated accumulated rotation vectors for the major interval, respectively. An expression describing the propagation of errors through the coning algorithm presented in Section 2.1 can be shown to be [34].
where Ξ con,i [ξ con,i ×] and With Equation (32), it can also be shown that the error in the i th coning correction term is not correlated to the i th measurement, but only to those prior to and following its processing. Additionally, if i + 1 ≥ or i − 1 ≤ 0, then ∆θ i+1 = 0 or ∆θ i−1 = 0, respectively. To generate ξ con,i as stated in Equation (32), the entire array of measurements must be known; fortunately, this can be restated so that the error terms can be accumulated in a navigation preprocessor algorithm, much like the coning algorithm itself.

Sculling Error Propagation
Through the application of a sculling algorithm, a correction for the measured nongravitational specific force and its integration into the vehicle's velocity is made using the incremental angle and velocity measurements over the major interval. It is worth noting that the statistics surrounding the sculling corrected incremental velocity will be dependent upon both the incremental angle and incremental velocity, unlike the coning correction. Noting the equation governing the sculling-corrected non-gravitational term in Equation (10), the error can be written as a sum of errors in each of the components; i.e., where e v, is the error in the incremental angle accumulation, e ∆v scul , is the error in the sculling correction, and e ∆v rot , is the error in correction for the vehicle's rotation during the measurement accumulation. The error in the accumulated incremental velocity can be expressed as where v andv are the true and estimated accumulated velocity vector over the major interval, respectively. By the definition of the incremental velocity accumulation in Equation (9) and the definition of the incremental angle accumulation in Equation (6), it is clear from Equation (25) that the error in each accumulated error is expressed as a sum over all minor interval incremental velocity and angle errors such that To determine the error in the sculling correction, first recognize that the sculling correction is a sum of the incremental sculling corrections, as shown in Equation (11), where the increments are defined by Equation (12). Therefore, to determine the error in the sculling correction, the error in the increments must first be determined. Define the error in the sculling increment e δv scul ,i such that Applying the definition of the individual measurement errors and the accumulations, the propagation of errors through the sculling correction is approximated to first-order as By the definition of the accumulated incremental sculling corrections given in Equation (11), the accumulated error is simply a sum of the incremental errors; i.e., Now that an expression for the error in the accumulated sculling correction is known, the explicit mapping of the error in each measurement into the accumulated error is desired. Notice that Equation (37) has two components that parallel the form of the propagation of the incremental angle measurements through the coning correction-the first is the previously defined Ξ con,i , crossed with the incremental velocity errors, while the second term is a similar mapping that can be defined such that Ξ scul,i [ξ scul,i ×], where and further allows the definition of the mapping of the measurement errors through the incremental sculling correction to be The direction of the incremental velocity vector must compensate for the vehicle's rotation during the major interval; this is done via the rotational correction term. To determine the mapping of the measurement errors through the rotational correction term, define the error in the rotational correction as e ∆v rot , ∆v rot, − ∆v rot, .
Expanding Equation (41) with the definition of ∆v rot, in Equation (13) and simplifying, the error in the rotational correction is then when higher-order error terms are neglected. Given that the errors in the accumulations are simply a sum of errors in each of the measurements, the error propagation for the rotational correction is To produce the error propagation for the sculled, non-gravitational change in velocity, Equation (33) is combined with the definitions for each component defined in Equations (35), (40), and (43). Therefore, the error in the sculling term as a function of the estimated incremental angles and velocities mapped into the errors in each of those terms is The errors in each of these measurement sources, however, is a function of well-known and commonly estimated error sources.

Scrolling Error Propagation
Paralleling the results in Section 3.4, a correction to the measured non-gravitational and its integration into position is made using the incremental angle and velocity mea-surements by the application of the scrolling algorithm. Whereas the coning correction is dependent upon the statistics surrounding the incremental angle measurements, the scrolling corrections are more similar to the sculling corrections as they are also dependent upon the statistics for the incremental velocity. Noting that the equation governing the scrolling-corrected non-gravitational term is Equation (14), the error can be written as a sum of errors in each of the components; i.e., e ∆r ng ,k = e s v , + e ∆r rot , + e ∆r scrl , , where e s v , is the error in the incremental angle accumulation, e ∆r scrl , is the error in the scrolling correction, and e ∆r rot , is the error in the correction for the vehicle's rotation during the measurement accumulation. Each of these terms is examined separately and recombined to produce the desired result. The first term in Equation (45) describes the error introduced through the integration of the incremental velocity vectors to determine the change in the vehicle's position, with the increment and accumulation defined in Equations (15) and (16), respectively. The error must then be expressed in terms of the error in the accumulation and increment; the error in the accumulation is simply a sum of the error in each increment, i.e., The error in the increment is then defined to be the difference between the estimated and true increments, which is given by e ∆s v ,i = ∆s v,i − ∆ŝ v,i . Substituting for the definition of the increment and truth, the error in the increment can be simplified and expressed as allowing Equation (46) to be expressed as a sum of the errors in each increment. Note that the e v,i−1 term has been deconstructed and expressed as a sum of the increments by applying Equation (35). Expanding for a variable number of steps, the propagation of incremental velocity errors into the accumulated integrated velocity is given by with the coefficient c m,n defined to be where m denotes the index of the measurement error term with which the coefficient is associated, and n is the number of measurements contained within the e s v , term. In most cases, m = , though this is not always true.
To accurately propagate the vehicle states with the non-gravitational incremental velocity and angle, the rotation of the vectors during the measurement period is accounted for and defined in Equation (17). When considering uncertainty, however, the transformation of errors in each of the measurements to the correction must be determined. Define the error in the rotational component to be e ∆r rot,k ∆r rot,k − ∆r rot,k , and the error in the integrated incremental angle e s θ , can be expressed similarly to how the incremental velocity is defined in Equation (48) as with c i, defined by Equation (49), where m = i and n = . It can then be shown that the error in the rotational scrolling term can be expressed as a function of the measurement errors as e ∆r rot,k = 1 where With Λ ∆θ,i and Λ ∆v,i defined, the mapping of measurement errors through the position rotational correction is known.
The scrolling correction term, as described by Equation (18), is composed of an accumulation of two incremental corrections: a correction for the presence of sculling motion and its integration into the position and a correction for the presence of other, higher-order effects. The error in the accumulation of the scrolling correction can be expressed as where the error in each increment is defined to be e δr scrl/scul ,i δr scrl/scul,i − δr scrl/scul,i (55a) e δr scrl/other ,i δr scrl/other,i − δr scrl/other,i .
Applying the definition in Equation (19) to Equation (55a), the propagation of sensor errors through the incremental scrolling correction for sculling motion is determined to be e δr scrl/scul ,i = ∆t It is worth noting the dependency of Equation (56) on the sculling correction, as expected. For brevity, the derivation of Equation (56) is neglected here but can be found in [35].
Using the expression describing the propagation of measurement errors through the incremental correction, the propagation of the measurement errors through the scrolling algorithm's correction for sculling motion is simply a sum of errors in each increment generated across the major interval. Expanding manually, it can be shown that the error in the incremental scrolling correction for sculling motion is then expressed as The scrolling correction error introduced by the additional correction for higher-order effects is a sum of the error in each incremental correction made over the major interval. In any given increment, the propagation of each measurement error into the scrolling correction increment for higher-order effects can be defined such that [35] e δr scrl/other ,i = ∆t 6 where the coefficient c j,i−1 is defined in Equation (49), with m = j and n = i − 1. The propagation of errors into the accumulated correction is then the sum of contributions for a given measurement error into each of the increments. Through a manual expansion of the terms, an expression mapping measurement errors into the scrolling correction term that accounts for higher-order effects is expressed as with M ∆θ,i [µ ∆θ,i ×] and M ∆v,i [µ ∆v,i ×], where µ ∆θ,i and µ ∆v,i can be expressed as and The error in the scrolling-corrected non-gravitational change in position can be expressed by substituting the components from Equations (48), (52), (57), and (59), the propagation of errors is expressed as where Λ ∆θ,i are defined to simplify notation.

State Estimation Error Dynamics
For implementation within the multiplicative extended Kalman filter (MEKF) [36], a widely used tool developed to appropriately handle the quaternion representation of attitude, the transformation of errors through each of the CSS algorithms must be incorporated into the relationships describing the propagation of state estimation errors, where errors in the position and velocity states are defined to be respectively. Unlike position and velocity, the attitude quaternions may not be directly subtracted. Thus, the attitude error is instead defined by the multiplicative attitude error; i.e., as is necessary according to the MEKF architecture. Under a small angle assumption, the error in the attitude is approximately given by where δq c i,k is the vector part of the error quaternion.
Examining the discrete-time dynamics in Equation (21), it can be shown that the error equations for the position, velocity, and attitude of the vehicle are given by [35] e r,k = I 3×3 + ∆t 2 This result is similar to that of more traditional methods where only a single set of IMU measurements is used for propagation, as is seen in [26], though the contribution from the incremental angle and velocity are removed and housed within the e ∆v ng ,k and e ∆r ng ,k terms. Having previously described the transformation of errors through the CSS algorithms in Equations (31), (44), and (62), the state estimation error dynamics can then be expressed as Note that e d,k is the error in the position of the vehicle center of gravity with respect to the IMU case frame origin, andÛ k−1 arises due to this discrepancy in the vehicle's center of gravity position and is defined to have an element in the i th row and j th column given by [26] It should be noted that r(j) and r(i) denote the i th and j th elements of the r cg,k−1 vector, while g(i) similarly denotes the i th component of g k−1 and u(m) denotes the m th component of u k−1 . Finally, notice that the frame designations have been dropped from the transformation matrix-it is assumed that the transformation matrix T represents the transformation from the inertial frame to the case frame.

Covariance Propagation
Let the navigation filter state vectorx k be given by the concatenation of the estimated position, velocity, and attitude states of the vehicle, augmented by the estimated inertial sensor parameters, or wherep g,k andp a,k are the concatenated sensor error parameters for the gyroscope and accelerometers, respectively. Notice that the state estimation error is defined to be e k = x k −x k for all states except for the attitude, which requires the multiplicative error definition for the attitude quaternion in Equation (63). Thus, the dynamics governing the estimation error can, as given in Equation (64), can be expressed as where F k−1 is the discrete-time dynamics Jacobian that describes the mapping of errors from one time-step to the next, while M k−1 maps dynamic process noise into the state estimation error. It is worth pointing out that, for systems aided by strapdown inertial sensors, the dynamic process noise described by w k−1 is taken to be the noise of the inertial sensors; i.e, After combining Equation (29) with Equation (64), the elements of F k−1 and M k−1 are given by inspection. For brevity, this combination is done in Appendix A. From this definition of the state estimation error dynamics, the linearized covariance propagation can be clearly stated such that where Q k−1 is the process noise covariance. Note that, for the typical INS, the uncertainty introduced by noise in strapdown sensor measurements is commonly incorporated as process noise.

Simulation
Two separate architectures are examined for a lunar descent-to-landing simulation. The first architecture utilizes a traditional dead-reckoning architecture-i.e., one propagating after receiving a single incremental angle and velocity [22,26]-while the other employs the CSS algorithms and utilizes the rigorous treatment of the estimation error propagation as developed within Section 3. The same trajectory is examined in [22,37], where the effects of external measurements on the navigation performance are considered. In contrast, the analysis here focuses on the situation where the vehicle is only navigating through inertial navigation techniques and thus has no external measurements to aid in navigation. Understanding how the estimation error propagates through the navigation system in a high-stakes scenario, such as a lunar landing, is crucial for informing future systems' development. Comparing the two different propagation techniques with this scenario provides a quantifiable differentiation between navigation systems equipped with the CSS algorithms' error propagation and those without. It should be noted that the selected trajectory is chosen not to maximize the effects or usefulness of CSS algorithms but to represent a scenario in which these algorithms may be used on a realistic trajectory in which increased accuracy and precision is desired. This comparison highlights the expected difference in navigation system performance when employing the error propagation alongside the often-implemented CSS algorithms.
To assess performance and compare configurations, Monte Carlo analysis is used. However, this method of analysis typically samples the true state from some distribution about the mean. Breaking convention, the true position, velocity, attitude, acceleration, and angular velocity are fixed for this trajectory, as is the case in [37], requiring that the initial estimates be sampled from a distribution about the true states. The initial states are assumed to be initially uncorrelated and sampled from Gaussian distributions, with 1σ uncertainties in each channel of position, velocity, and attitude shown in Table 1.

Uncertainty (1σ)
Position 1000 m Velocity 0.1 m/s Attitude 100 arcsec Aspects of the true vehicle trajectory are illustrated in Figures 2-4. The altitude profile of the vehicle across the mission is shown in Figure 2, where the trajectory is initialized 50 km above the lunar surface. The vehicle slowly descends over the first 24 min to an altitude of 16.5 km and enters a powered descent phase after 25.5 min of mission elapsed time (MET). During powered descent, the vehicle rapidly descends to the surface in just under 7 min. Figure 3 shows the vehicle attitude, expressed as Euler angles; the attitude profile is only provided for a portion of the mission to show the changes experienced throughout the powered descent phase of the simulation. A large attitude maneuver occurs at approximately 24 min MET, as can be seen in Figures 3 and 4, while a smaller attitude maneuver occurs at roughly 25.5 min MET, coinciding with the start of the powered descent phase. During the powered descent phase, the vehicle performs a translational maneuver to decelerate and land the vehicle, as seen in Figure 5. As the simulation ends and the vehicle approaches its landing location, several small attitude correction maneuvers are also performed.    Table 1.     Table 1.    Table 2. Measurement error sources of white noise, bias, scale factor, 307 misalignment, and nonorthogonality are included for both the gyro and accelerometer 308 measurements. Each error is sampled from a zero-mean Gaussian distribution defined 309 by the statistics in Table 2; the bias, scale factor, misalignment, and nonorthogonality      Table 2. Measurement error sources of white noise, bias, scale factor, 307 misalignment, and nonorthogonality are included for both the gyro and accelerometer 308 measurements. Each error is sampled from a zero-mean Gaussian distribution defined 309 by the statistics in Table 2; the bias, scale factor, misalignment, and nonorthogonality    The IMU gyroscope and accelerometer measurements utilize the model given in Section 2.5 and have sensor error statistics consistent with the Northrop Grumman LN-200S [38], as provided in Table 2. Measurement error sources of white noise, bias, scale factor, misalignment, and nonorthogonality are included for both the gyro and accelerometer measurements. Each error is sampled from a zero-mean Gaussian distribution defined by the statistics in Table 2; the bias, scale factor, misalignment, and nonorthogonality sources are modeled to be constant throughout a given trial. Because the primary goal of this work is to compare the propagation architectures, no external measurements are modeled, and only the internal measurements provided by the IMU are simulated. As such, only the prediction stage of the multiplicative extended Kalman filter is employed.

Nominal Simulation
The nominal state propagation considers the case in which the state is propagated at 400 Hz-the frequency at which inertial measurements are sampled. Processing a single measurement is a generally desirable approach for the navigation system, as the algorithmic mechanics tend to be simpler. However, it is almost always desirable to process higher-rate IMU data so that underlying vibration in the vehicle motion can be detected.
Unfortunately, the computational resources necessary to process inertial measurements at the rate at which modern inertial sensors are capable of producing them are significant, even when considering state-of-the-art computing systems. Considering this case for the nominal simulation gives a baseline performance for the navigation system's state and covariance propagation, as it exemplifies the most common method of inertial navigation.

Coning, Sculling, and Scrolling Simulation
The proposed architecture, which employs the CSS algorithms as presented in Section 2 and the error propagation derived within Section 3, can also be used to propagate the mean and covariance of the vehicle state. For simulation, these algorithms operate at a frequency of 10 Hz, while the measurements are simulated at 400 Hz. Therefore, a batch of 40 measurements obtained between t k−1 and t k is used to propagate the state and uncertainty of the vehicle through the utilization of second-order CSS correction algorithms. The dynamics outlined in Equation (21) describe the vehicle state evolution.

Results and Discussion
For each simulation, the Monte Carlo sample covariance and averaged filter covariance are examined and compared against one another to determine the statistical consistency of the chosen method; i.e., either CSS or the traditional single-measurement dead-reckoning. To better determine how the developed CSS error propagation affects the uncertainty propagation, the same statistics are then compared directly against one another. In Figures 6 and 7, results for the position, velocity, and attitude estimation errors from the nominal simulation are shown. Figure 6 shows the mean estimation error, alongside the averaged filter covariance and Monte Carlo sample covariance 3σ intervals for each component of the position, velocity, and attitude, whereas Figure 7 shows the RSS value for each. Figures 8 and 9 show similar results for the application of the CSS algorithms. From these figures, it is clear that both configurations are consistent with the Monte Carlo statistics, despite the presence of a bias in the mean error. However, by comparing Figures 7 and 9, it is observed that both methods produce similar mean estimation errors with no noticeable difference in the predicted or observed uncertainty intervals. It is worth noting that the mean error not being zero is likely due to under-sampling and continues to reduce with an increasing number of Monte Carlo trials.
Within Figures 10 and 11, a direct comparison of each method is made by examining the averaged normalized estimation error squared (ANEES) and a normalized error between the RSS standard deviations. The ANEES,¯ , is calculated by [39,40] which is the squared Mahalanobis distance for trial i of the estimation error, e i , with respect to the filter covariance, P i , averaged over the number of states, n, and the number of Monte Carlo trials, M. The ANEES measure is χ 2 -distributed if the estimation errors are Gaussian-distributed and allows the filter to be rejected as credible at a particular level, α, should a credibility interval be breached for a significant amount of time. The credibility interval is constructed such that Pr ¯ ∈ [a, b]|nM¯ ∼ χ 2 nM = 1 − α for a < 1 < b and 0 < α 1, where χ 2 nM is a χ 2 -distribution of nM degrees of freedom [40]. The interval [a, b] contains 95% of the probability mass for the χ 2 distribution having a mean of one and nM degrees of freedom when α = 0.05. The lower bound a separates the lower α/2 of the probability mass, while the upper bound eliminates the upper α/2. If¯ = 1, the ANEES is perfectly consistent with the error distribution. It is necessary to note that ANEES is not a credibility measure but is useful in recognizing if the filter's approximation of the uncertainty is representative of the errors or that the filter is consistent [41]. Finally, this measure allows the recognition of estimation performance; the estimator overestimates the estimation error when the ANEES is less than one and underestimates the error when the ANEES is greater than one. While examining the consistency of the diagonal elements of the filter and Monte Carlo sample covariance matrices is useful, ANEES allows the direct comparison of cross-correlation terms in the covariance structure to the estimation errors. Figure 10 shows the ANEES for position, velocity, and attitude for both configurations and allows the assessment that each estimator has approximately the same level of credibility for the estimation of those states. While no significant difference manifests, notice that a slight deviation occurs in the position ANEES around 28 min MET, though no significant difference is noticed in the consistency of the estimators.  x,c and σ rss x,t respectively, by computing a normalized error, here defined as between the CSS and traditional configurations for a state x, such as position, velocity, or attitude. By this measure, if the value is less than zero, the CSS methods predict or observe a smaller spread in the distribution than the traditional methods and a larger spread if it is greater than zero. Even though the differences are small, several comments can be made when comparing system performance. By recognizing that the ratios of Monte Carlo sample standard deviations are less than zero for the velocity and position distributions and that the mean error is consistent between the two configurations, as recognized by comparing Figures 7 and 9, it is concluded that the application of the CSS algorithms successfully reduces the error present in the system. The same trend is followed by the averaged filter ratio until approximately 24 min MET, when the attitude maneuver occurs. After the attitude maneuver, the vehicle begins the powered-descent phase, and a continued divergence between the ratios is observed. It is therefore clear that the introduction of these algorithms allows for a slightly more conservative representation of the uncertainty during maneuvers, while simultaneously producing a smaller spread in the estimation errors. A caveat to the analysis is that the sample size of 500 Monte Carlo trials is likely somewhat under-sampled, and the significance of the findings made by examining the ratios is difficult to justify as the differences are relatively small. Comparing the run-time for 500 Monte Carlo trials, a mean run-time of 15.5 min is found for the traditional method and a time of 2.94 min is found for the CSS configuration. The required run-time to process the same measurements and provide the state and covariance at a down-sampled frequency yielded an approximately 81% reduction in computational complexity and scaled as the frequency of covariance propagation is further reduced. Unfortunately, the time savings do not seem to be as large as those shown in [34]. This may be a result of the relatively low number of measurements processed by the CSS algorithms between state predictions; if higher-frequency measurements are available, the reduction is likely to be more significant. Finally, it should be noted that an attempt at streamlining the implementation may also yield an additional run-time reduction.    can be expressed in terms of the sensor error parameter statistics. Note that throughout 450 this section, it is assumed that the error dynamics for each sensor error parameter are 451 constant, though this assumption is not necessary and is made to somewhat simplify 452 notation.

454
Considering the gyro measurements to be corrupted by bias, scale factor, misalignment, nonorthogonality, and noise error sources, the propagation of these errors into the attitude estimate is given by the combination of Eqs. (29a) and (64c). Assuming that the parametric errors for the gyroscope have constant dynamics, i.e. that b g,k = b g,k−1 , s g,k = s g,k−1 , m g,k = m g,k−1 , and n g,k = n g,k−1 , the component of Eq. (64c) containing the measurement errors is given by ∑ i=1 (I 3×3 + Ξ con,i )e ∆θ,i = − L s g e s g ,k + L m g e m g ,k − L n g e n g ,k − L b g e b g ,k − w a,g , where the components

Conclusions
Advancements in precision navigation systems are needed to enable the increasingly complex and demanding tasks required for future autonomous vehicles. One method to consider for the improvement of current navigation system capabilities-for the estimation of position, velocity, attitude, and other vehicle-relevant parameters-is the incorporation of previously unmodeled effects, such as the contribution of coning, sculling, and scrolling (CSS) corrections on vehicle position, velocity, and attitude uncertainty within the popular strapdown inertial navigation system (SINS). A method for developing each algorithm's error propagation has been presented alongside the resulting expressions for a set of CSS algorithms. It is worth noting that the developed error propagation relies upon a linearized error propagation, developed by truncating higher-order terms and assuming that the non-gravitational acceleration and angular velocity vary linearly with time. Thus, this approach is a first-order approximation of the true CSS error propagation-future developments that relax the associated simplifications by incorporating the higher-order effects and allowing more optimized approaches, such as those discussed in [15,25], are of interest for future work.
It is found through Monte Carlo simulation and analysis that the inclusion of an error propagation for the CSS algorithms results in a more conservative filter representation of the predicted position, velocity, and attitude uncertainties following a large attitude maneuver. Additionally, the averaged estimation errors seem consistent with existing methods for the simulated scenario, where both the CSS and traditional dead-reckoning approaches exhibit the same level of statistical consistency. It is also shown that reduced computationally complexity is established by the CSS system when compared to traditional methods of discrete dead-reckoning, giving an 81% reduction in average run-time. If the generation of the error mappings was handled by a navigation pre-processor or within the IMU software, a further reduction of the computational complexity would be seen. Finally, because the developed models for uncertainty propagation allow uncertainty to be handled in a more mathematically consistent manner when using CSS corrections, while simultaneously producing a computationally efficient and statistically conservative navigation filter, it can be concluded that the developed models could be beneficial to future navigation systems.

Data Availability Statement:
No new data were created or analyzed in this study. Data sharing is not applicable to this article.

Conflicts of Interest:
The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript, or in the decision to publish the results.

Appendix A. Incorporating the Strapdown Sensor Model
As discussed in Section 2.5, a number of parameters corrupt the strapdown inertial sensor measurements including bias, scale-factor, axes nonorthogonality, frame misalignment, and white noise. The contribution of each of these common sensor error sources to the measurement error was shown in Equation (29). Using the model in Section 3.2, combined with the state error propagation in Equation (64), the error dynamics for the state can be expressed in terms of the sensor error parameter statistics. Note that throughout this section, it is assumed that the error dynamics for each sensor error parameter are constant, though this assumption is not necessary and is made to somewhat simplify notation.

Appendix A.1. Attitude
Considering the gyro measurements to be corrupted by bias, scale factor, misalignment, nonorthogonality, and noise error sources, the propagation of these errors into the attitude estimate is given by the combination of Equations (29a) and (64c). Assuming that the parametric errors for the gyroscope have constant dynamics, i.e., that b g,k = b g,k−1 , s g,k = s g,k−1 , m g,k = m g,k−1 , and n g,k = n g,k−1 , the component of Equation (64c) containing the measurement errors is given by ∑ i=1 (I 3×3 + Ξ con,i )e ∆θ,i = − L s g e s g ,k + L m g e m g ,k − L n g e n g ,k − L b g e b g ,k − w a,g , where the components (I 3×3 + Ξ con,i )w g,i .
are defined to simplify the notation and isolate the propagation of the gyro bias, scale factor, misalignment, nonorthogonality, and noise into the attitude estimate, respectively.
Note that θ m, is simply the sum of the measurements; i.e., θ m, = ∑ i=1 ∆θ m,i . The attitude error, including the contribution from each of the gyro error sources, is thus e a,k = T(∆φ k )e a,k−1 − L s g e s g ,k + L m g e m g ,k − L n g e n g ,k − L b g e b g ,k − w a,g . (A3) It is important to note that the noise is not assumed to be constant over the coning interval and requires special attention for implementation.

Appendix A.2. Velocity
Given that both the gyros and accelerometers can be corrupted by bias, scale factor, misalignment, nonorthogonality, and noise error sources, the error in the velocity estimate will also be dependent upon the sensor error parameters. Combining Equation (29b) with Equation (64b), the component mapping errors in the accelerometer measurements to the velocity becomes ∑ i=1T T k−1 (N θ + Ξ con,i )e ∆v i ,k = − V s a e s a ,k + V m a e m a ,k − V n a e n a ,k − V b a e b a ,k − w v,a , where w v,a = ∑ i=1T T k−1 (N θ + Ξ con,i )w a,i , and N θ = I 3×3 + 1 2 θ × (A6) are defined to simplify notation. Note that this results from assuming that the bias, scale factor, misalignment, and nonorthogonality errors are constant over the major interval, though this assumption can be easily relaxed. Similarly, by combining Equation (29a) with Equation (64b), defining the mapping of each error in the gyro measurement into the velocity error as