4.3.3 Batch Dynamic State Estimation
Linear and weighted least squares assume that all observations can be related directly to a common unknown vector through a model such as
\[ \boxed{ \mathbf z=\mathbf H\mathbf x+\mathbf v } \]
For many spacecraft problems, however, measurements are collected at different times while the spacecraft state evolves continuously.
A measurement at time
\[ t_k \]
depends on the spacecraft state
\[ \mathbf x(t_k), \]
but the estimator may wish to determine the state at a common reference epoch
\[ t_0. \]
The dynamic model connects these states:
\[ \boxed{ \mathbf x(t_k) = \phi(t_k,t_0,\mathbf x_0,\boldsymbol{\theta}) } \]
where
\[ \mathbf x_0=\mathbf x(t_0) \]
is the unknown reference-epoch state.
Batch dynamic state estimation therefore combines:
\[ \boxed{ \text{Measurements at Multiple Epochs} + \text{Dynamic Propagation} + \text{Measurement Models} + \text{Sensitivity Propagation} + \text{Least Squares} } \]
to estimate a common initial or reference-epoch state.
Conceptually,
\[ \boxed{ \text{Reference State Guess} \rightarrow \text{Propagate Trajectory} \rightarrow \text{Predict Measurements} \rightarrow \text{Form Residuals} \rightarrow \text{Compute Dynamic Sensitivities} \rightarrow \text{Solve Batch Correction} \rightarrow \text{Update Reference State} } \]
This is a fundamental architecture in spacecraft orbit determination, trajectory reconstruction, parameter estimation, maneuver reconstruction, and offline navigation analysis.
4.3.3.1 Why Static Least Squares Is Not Enough
In static least squares, observations are written as
\[ \mathbf z=\mathbf H\mathbf x+\mathbf v. \]
The same unknown vector \mathbf x appears directly in every observation equation.
In a spacecraft problem, however,
\[ \mathbf x(t_1), \quad \mathbf x(t_2), \quad \ldots, \quad \mathbf x(t_N) \]
are generally different because the vehicle moves.
Therefore, a measurement at t_1 depends on
\[ \mathbf x(t_1), \]
while a measurement at t_N depends on
\[ \mathbf x(t_N). \]
The states are nevertheless related by the spacecraft dynamics.
Thus,
\[ \boxed{ \text{Dynamic Estimation} = \text{Least Squares} + \text{State Propagation Through Time}. } \]
The estimator exploits this relationship so that measurements collected across an observation arc can all provide information about one common reference state.
4.3.3.2 Reference-Epoch State
Choose a reference time
\[ t_0. \]
The unknown state at this epoch is
\[ \boxed{ \mathbf x_0 = \mathbf x(t_0). } \]
For an orbital problem,
\[ \mathbf x_0 = \begin{bmatrix} \mathbf r_0\\ \mathbf v_0 \end{bmatrix}. \]
The objective may be to estimate
\[ \boxed{ \hat{\mathbf x}_0. } \]
Once \mathbf x_0 is known, the dynamic model can propagate the trajectory to any measurement epoch.
Therefore,
\[ \boxed{ \text{Reference-Epoch State} \rightarrow \text{Entire Predicted Trajectory}. } \]
This allows observations at many different times to constrain the same unknown state.
4.3.3.3 Initial State versus Reference State
The words initial state and reference state are often used similarly but should be interpreted carefully.
If
\[ t_0 \]
is the beginning of the observation arc, then
\[ \mathbf x_0 \]
is both the initial state and reference-epoch state.
However, the reference epoch does not necessarily have to coincide with the first observation.
It may instead be chosen
- at the midpoint of the observation arc,
- at a mission-defined epoch,
- at maneuver time,
- at a convenient numerical reference time.
Thus,
\[ \boxed{ \text{Reference Epoch} \neq \text{Necessarily First Measurement Epoch}. } \]
Choosing the reference epoch near the center of the observation arc can sometimes improve numerical conditioning because sensitivities do not need to propagate as far in only one time direction.
Engineering interpretation: Choosing the reference epoch is partly a modelling decision and partly a numerical one. The same physical trajectory can be represented at different epochs, but covariance, state correlation, and the magnitude of propagated sensitivities can change with that choice.
4.3.3.4 Dynamic State Model
The spacecraft state evolves according to a dynamic model:
\[ \boxed{ \dot{\mathbf x} = f(\mathbf x,\mathbf u,\boldsymbol{\theta},t). } \]
For orbital translational dynamics,
\[ \dot{\mathbf r} = \mathbf v \]
and
\[ \dot{\mathbf v} = \mathbf a(\mathbf r,\mathbf v,\boldsymbol{\theta},t). \]
The acceleration may include terms such as
- central-body gravity,
- higher-order gravity,
- third-body gravity,
- atmospheric drag,
- solar radiation pressure,
- thrust,
- empirical accelerations.
The propagation model determines the predicted trajectory from the reference state.
Thus,
\[ \boxed{ \mathbf x_0 \rightarrow f(\cdot) \rightarrow \mathbf x(t_k). } \]
4.3.3.5 State-Flow Mapping
The propagated state may be represented conceptually as
\[ \boxed{ \mathbf x(t_k) = \phi(t_k,t_0,\mathbf x_0,\boldsymbol{\theta}) } \]
where \phi is the nonlinear state-flow mapping.
This notation means:
Starting from
\mathbf x_0att_0, integrate the dynamics untilt_k.
For a nonlinear spacecraft model, \phi is usually evaluated numerically rather than expressed in closed form.
The batch estimator repeatedly performs this propagation during its iterations.
4.3.3.6 Measurements at Multiple Epochs
Suppose observations are obtained at
\[ t_1,t_2,\ldots,t_N. \]
At epoch t_k,
\[ \boxed{ \mathbf z_k = h_k(\mathbf x_k,\boldsymbol{\theta}) + \mathbf v_k } \]
where
\[ \mathbf x_k=\mathbf x(t_k). \]
Substituting the propagated state gives
\[ \boxed{ \mathbf z_k = h_k [ \phi(t_k,t_0,\mathbf x_0,\boldsymbol{\theta}), \boldsymbol{\theta} ] + \mathbf v_k. } \]
Therefore every observation depends indirectly on the same unknown reference state.
4.3.3.7 Observation Arc
The time interval over which measurements are collected is called the observation arc.
If measurements span
\[ t_1 \]
to
\[ t_N, \]
then
\[ \boxed{ [t_1,t_N] } \]
defines the measurement arc.
Observation-arc design affects estimation quality.
A longer arc may improve state separation because trajectory effects accumulate over time.
However, a longer arc may also increase sensitivity to
- force-model errors,
- unmodeled maneuvers,
- environmental uncertainty,
- parameter variation.
Therefore,
\[ \boxed{ \text{Longer Arc} \neq \text{Automatically Better Dynamic Estimation}. } \]
Engineering interpretation: Observation-arc duration should be selected together with model fidelity and the estimation objective. A short arc may not reveal enough dynamic signature, while a very long arc may allow unmodelled physics to dominate the residuals.
4.3.3.8 Predicted Trajectory
Given a current reference-state estimate
\[ \mathbf x_0^{(i)}, \]
the trajectory is propagated:
\[ \boxed{ \mathbf x_k^{(i)} = \phi ( t_k,t_0,\mathbf x_0^{(i)},\boldsymbol{\theta}^{(i)} ). } \]
This produces predicted states at every observation epoch.
Conceptually,
\[ \boxed{ \mathbf x_0^{(i)} \rightarrow \mathbf x_1^{(i)} \rightarrow \mathbf x_2^{(i)} \rightarrow \cdots \rightarrow \mathbf x_N^{(i)}. } \]
These predicted states are then passed through the measurement models.
4.3.3.9 Predicted Measurements
At each observation epoch,
\[ \boxed{ \hat{\mathbf z}_k = h_k ( \mathbf x_k^{(i)}, \boldsymbol{\theta}^{(i)} ). } \]
Thus the batch estimator generates one predicted observation for every actual measurement.
The process is
\[ \boxed{ \mathbf x_0^{(i)} \rightarrow \mathbf x_k^{(i)} \rightarrow \hat{\mathbf z}_k. } \]
The predicted observation must correspond to the same
- physical quantity,
- reference frame,
- units,
- epoch,
- convention
as the measured observation.
4.3.3.10 Measurement Residual at Each Epoch
The residual at time t_k is
\[ \boxed{ \mathbf r_k = \mathbf z_k-\hat{\mathbf z}_k. } \]
Equivalently,
\[ \mathbf r_k = \mathbf z_k - h_k ( \mathbf x_k^{(i)}, \boldsymbol{\theta}^{(i)} ). \]
These residuals indicate how well the current propagated trajectory explains the observation set.
The complete estimation objective seeks a change in the reference state that improves all of these residuals simultaneously.
4.3.3.11 Pre-Fit Residuals
Before the reference-state correction is applied, the residuals are often called pre-fit residuals:
\[ \boxed{ \mathbf r_{k,\text{pre}} = \mathbf z_k-\hat{\mathbf z}_k^{-}. } \]
They indicate the mismatch produced by the current reference trajectory.
Large pre-fit residuals may be caused by
- initial-state error,
- parameter error,
- measurement bias,
- model error,
- maneuver mismatch,
- poor initial guess.
The estimator then determines a correction that reduces the weighted residuals.
4.3.3.12 State Perturbation at the Reference Epoch
Suppose the true reference state differs from the nominal estimate by
\[ \delta\mathbf x_0. \]
Then
\[ \boxed{ \mathbf x_0 = \mathbf x_0^{*} + \delta\mathbf x_0 } \]
where
\[ \mathbf x_0^{*} \]
is the current nominal or reference trajectory state.
The goal of differential correction is to estimate
\[ \delta\mathbf x_0. \]
Then the reference state is updated:
\[ \boxed{ \mathbf x_0^{new} = \mathbf x_0^{old} + \delta\hat{\mathbf x}_0. } \]
4.3.3.13 Why Sensitivities Are Needed
The estimator must answer:
If I change the reference state slightly, how will a later measurement change?
This requires the chain
\[ \boxed{ \delta\mathbf x_0 \rightarrow \delta\mathbf x_k \rightarrow \delta\mathbf z_k. } \]
The first relationship is provided by the State Transition Matrix.
The second is provided by the measurement Jacobian.
Together, they create the dynamic design matrix.
4.3.3.14 State Transition Matrix
The State Transition Matrix is
\[ \boxed{ \boldsymbol{\Phi}(t_k,t_0) = \frac{\partial\mathbf x(t_k)} {\partial\mathbf x(t_0)}. } \]
For a small reference-state perturbation,
\[ \boxed{ \delta\mathbf x_k \approx \boldsymbol{\Phi}(t_k,t_0) \delta\mathbf x_0. } \]
This tells us how an error or perturbation at the reference epoch propagates to a later epoch.
The STM is therefore the fundamental bridge between dynamic propagation and least-squares estimation.
Engineering interpretation: The STM is local to the nominal trajectory about which the dynamics are linearized. In a nonlinear problem it should therefore be recomputed after the trajectory is updated rather than assumed fixed for every iteration.
4.3.3.15 Physical Meaning of the STM
Suppose one component of the reference state changes slightly.
For example,
\[ \delta x_0. \]
The resulting state change at time t_k is determined by the corresponding column of
\[ \boldsymbol{\Phi}(t_k,t_0). \]
Thus:
- each column describes sensitivity to one initial-state component,
- each row describes the effect on one propagated-state component.
Conceptually,
\[ \boxed{ \text{Initial-State Perturbation} \xrightarrow{\boldsymbol{\Phi}} \text{Later-State Perturbation}. } \]
4.3.3.16 Variational Equations
For
\[ \dot{\mathbf x} = f(\mathbf x,t), \]
define the dynamic Jacobian
\[ \boxed{ \mathbf A(t) = \frac{\partial f}{\partial\mathbf x}. } \]
The STM satisfies
\[ \boxed{ \dot{\boldsymbol{\Phi}} = \mathbf A(t) \boldsymbol{\Phi}. } \]
with initial condition
\[ \boxed{ \boldsymbol{\Phi}(t_0,t_0) = \mathbf I. } \]
These are called the variational equations.
In nonlinear dynamic estimation, the nominal state and STM are often integrated simultaneously.
4.3.3.17 Simultaneous Propagation of State and STM
The integration system may be written as
\[ \boxed{ \begin{cases} \dot{\mathbf x}=f(\mathbf x,t),\\ \dot{\boldsymbol{\Phi}} = \mathbf A(t)\boldsymbol{\Phi}. \end{cases} } \]
with
\[ \mathbf x(t_0)=\mathbf x_0 \]
and
\[ \boldsymbol{\Phi}(t_0,t_0)=\mathbf I. \]
This produces both
\[ \mathbf x(t_k) \]
and
\[ \boldsymbol{\Phi}(t_k,t_0) \]
at every measurement epoch.
This is a common implementation pattern in batch orbit determination and trajectory estimation.
4.3.3.18 Measurement Jacobian at the Observation Epoch
The measurement sensitivity to the state at t_k is
\[ \boxed{ \mathbf H_k = \left. \frac{\partial h_k} {\partial\mathbf x} \right|_{\mathbf x_k}. } \]
For a small perturbation,
\[ \delta\mathbf z_k \approx \mathbf H_k \delta\mathbf x_k. \]
However, the batch estimator is solving for
\[ \delta\mathbf x_0, \]
not directly for
\[ \delta\mathbf x_k. \]
Therefore the STM must be introduced.
4.3.3.19 Dynamic Measurement Sensitivity
Using
\[ \delta\mathbf x_k = \boldsymbol{\Phi}_{k,0} \delta\mathbf x_0, \]
we obtain
\[ \delta\mathbf z_k \approx \mathbf H_k \boldsymbol{\Phi}_{k,0} \delta\mathbf x_0. \]
Define the effective dynamic design matrix
\[ \boxed{ \mathbf H_k^{(0)} = \mathbf H_k \boldsymbol{\Phi}(t_k,t_0). } \]
Then
\[ \boxed{ \delta\mathbf z_k \approx \mathbf H_k^{(0)} \delta\mathbf x_0. } \]
This is one of the central equations of batch dynamic estimation.
Engineering interpretation: The product \(\mathbf H_k\boldsymbol{\Phi}_{k,0}\) is what allows a measurement at a later epoch to contribute information about the state at the reference epoch. It is the dynamic counterpart of the static least-squares design matrix.
4.3.3.20 Chain-Rule Interpretation
The same result follows from the chain rule:
\[ \boxed{ \frac{\partial h_k} {\partial\mathbf x_0} = \frac{\partial h_k} {\partial\mathbf x_k} \frac{\partial\mathbf x_k} {\partial\mathbf x_0}. } \]
Therefore,
\[ \boxed{ \frac{\partial h_k} {\partial\mathbf x_0} = \mathbf H_k \boldsymbol{\Phi}_{k,0}. } \]
This equation tells us exactly how a measurement at a later time depends on the reference state.
Conceptually,
\[ \boxed{ \text{Reference-State Sensitivity} = \text{Measurement Sensitivity} \times \text{Dynamic Sensitivity}. } \]
4.3.3.21 Linearized Residual Equation
Let the pre-fit residual be
\[ \mathbf r_k. \]
After a small reference-state correction
\[ \delta\mathbf x_0, \]
the residual is approximately
\[ \mathbf r_k^{new} \approx \mathbf r_k - \mathbf H_k^{(0)} \delta\mathbf x_0. \]
Equivalently,
\[ \boxed{ \mathbf r_k \approx \mathbf H_k^{(0)} \delta\mathbf x_0 + \mathbf v_k. } \]
This has exactly the same structure as a linear least-squares problem.
Therefore dynamic batch estimation converts a nonlinear trajectory problem into an iterative sequence of linear least-squares corrections.
4.3.3.22 Stacking Measurements Across the Arc
All residuals can be stacked:
\[ \boxed{ \mathbf r = \begin{bmatrix} \mathbf r_1\\ \mathbf r_2\\ \vdots\\ \mathbf r_N \end{bmatrix}. } \]
Similarly, stack the dynamic design matrices:
\[ \boxed{ \mathbf H = \begin{bmatrix} \mathbf H_1^{(0)}\\ \mathbf H_2^{(0)}\\ \vdots\\ \mathbf H_N^{(0)} \end{bmatrix}. } \]
Then
\[ \boxed{ \mathbf r \approx \mathbf H \delta\mathbf x_0 + \mathbf v. } \]
The dynamic problem has now been converted into the same algebraic form as linear weighted least squares.
4.3.3.23 Stacked Measurement Covariance
If measurement errors at different epochs are independent,
\[ \mathbf R = \begin{bmatrix} \mathbf R_1&0&\cdots&0\\ 0&\mathbf R_2&\cdots&0\\ \vdots&\vdots&\ddots&\vdots\\ 0&0&\cdots&\mathbf R_N \end{bmatrix}. \]
The batch weight matrix is
\[ \boxed{ \mathbf W = \mathbf R^{-1}. } \]
If measurement errors are correlated across epochs, the off-diagonal covariance blocks should be included.
Thus,
\[ \boxed{ \text{Batch Weighting Must Reflect Both Measurement Accuracy and Correlation}. } \]
Engineering interpretation: When heterogeneous measurements are stacked, the covariance matrix also makes quantities with different units statistically comparable. Raw residual magnitude alone is not a meaningful basis for weighting metres, radians, and metres per second together.
4.3.3.24 Batch Weighted Cost Function
The correction is obtained by minimizing
\[ \boxed{ J(\delta\mathbf x_0) = \sum_{k=1}^{N} \mathbf r_k^T \mathbf R_k^{-1} \mathbf r_k } \]
or, in stacked form,
\[ \boxed{ J = ( \mathbf r-\mathbf H\delta\mathbf x_0 )^T \mathbf R^{-1} ( \mathbf r-\mathbf H\delta\mathbf x_0 ). } \]
The estimator finds the reference-state correction that minimizes the weighted mismatch over the complete observation arc.
4.3.3.25 Batch Normal Equations
The weighted normal equations are
\[ \boxed{ \mathbf H^T \mathbf R^{-1} \mathbf H \, \delta\hat{\mathbf x}_0 = \mathbf H^T \mathbf R^{-1} \mathbf r. } \]
If the information matrix is nonsingular,
\[ \boxed{ \delta\hat{\mathbf x}_0 = ( \mathbf H^T \mathbf R^{-1} \mathbf H )^{-1} \mathbf H^T \mathbf R^{-1} \mathbf r. } \]
The updated reference state is
\[ \boxed{ \mathbf x_0^{new} = \mathbf x_0^{old} + \delta\hat{\mathbf x}_0. } \]
4.3.3.26 Why the Batch Problem Is Iterative
Even though each correction step looks linear, the complete problem is usually nonlinear because
\[ \mathbf x_k = \phi(t_k,t_0,\mathbf x_0) \]
and
\[ \mathbf z_k = h_k(\mathbf x_k). \]
Therefore after updating
\[ \mathbf x_0, \]
the estimator must
- propagate the trajectory again,
- recompute predicted observations,
- recompute residuals,
- recompute STMs,
- recompute measurement Jacobians,
- rebuild the design matrix,
- solve a new correction.
Thus,
\[ \boxed{ \text{Propagate} \rightarrow \text{Linearize} \rightarrow \text{Correct} \rightarrow \text{Repeat}. } \]
4.3.3.27 Differential Correction
This iterative process is often called differential correction.
At iteration i,
\[ \mathbf x_0^{(i)} \]
is propagated.
The residual vector is
\[ \mathbf r^{(i)}. \]
A correction is solved:
\[ \delta\mathbf x_0^{(i)}. \]
Then
\[ \boxed{ \mathbf x_0^{(i+1)} = \mathbf x_0^{(i)} + \delta\mathbf x_0^{(i)}. } \]
The cycle continues until convergence.
4.3.3.28 Complete Differential-Correction Loop
The complete loop is
\[ \boxed{ \begin{array}{c} \text{Initial Reference-State Guess}\\ \downarrow\\ \text{Propagate Dynamics}\\ \downarrow\\ \text{Predict Measurements}\\ \downarrow\\ \text{Compute Residuals}\\ \downarrow\\ \text{Propagate STM / Sensitivities}\\ \downarrow\\ \text{Build Dynamic Design Matrix}\\ \downarrow\\ \text{Solve Weighted LS Correction}\\ \downarrow\\ \text{Update Reference State}\\ \downarrow\\ \text{Check Convergence}\\ \downarrow\\ \text{Repeat if Required} \end{array} } \]
This is the basic architecture of a batch dynamic estimator.
4.3.3.29 Convergence Criteria
Several convergence criteria may be used.
Correction magnitude
\[ \boxed{ \| \delta\mathbf x_0^{(i)} \| < \epsilon_x. } \]
Cost-function change
\[ \boxed{ | J^{(i+1)}-J^{(i)} | < \epsilon_J. } \]
Relative change
\[ \boxed{ \frac{ \| \delta\mathbf x_0 \| }{ \| \mathbf x_0 \| } < \epsilon_r. } \]
Residual stabilization
The residual statistics may stop changing meaningfully.
In practice, several criteria may be used together.
4.3.3.30 Why Small Corrections Matter
A very small correction indicates that relinearizing around the updated trajectory is unlikely to change the solution significantly.
However,
\[ \boxed{ \text{Small Correction} \neq \text{Automatically Correct Physical Solution}. } \]
The estimator may converge to
- a local minimum,
- a biased solution,
- a weakly identifiable parameter set,
- a model-compensation solution.
Therefore convergence must be accompanied by residual, covariance, and physical checks.
Engineering interpretation: A converged correction only indicates that the local numerical iteration has stabilized. Residual structure, covariance, rank, parameter correlation, and physical plausibility must still be checked before accepting the solution.
4.3.3.31 Effect of the Initial Guess
Because batch dynamic estimation is nonlinear, the initial reference-state guess matters.
A poor initial state may cause
- inaccurate linearization,
- very large residuals,
- divergence,
- slow convergence,
- convergence to an incorrect local solution.
Therefore the initial guess should ideally lie within a region where the linearized sensitivities reasonably represent the nonlinear system.
Conceptually,
\[ \boxed{ \text{Good Initial Guess} \rightarrow \text{Valid Local Linearization} \rightarrow \text{Reliable Differential Correction}. } \]
4.3.3.32 A Priori State Information
Suppose an a priori reference state is
\[ \bar{\mathbf x}_0 \]
with covariance
\[ \mathbf P_0. \]
The batch objective can include this prior:
\[ \boxed{ \begin{aligned} J ={}& (\mathbf x_0-\bar{\mathbf x}_0)^T \mathbf P_0^{-1} (\mathbf x_0-\bar{\mathbf x}_0) \\ &+ \sum_{k=1}^{N} \mathbf r_k^T \mathbf R_k^{-1} \mathbf r_k. \end{aligned} } \]
This allows the estimator to combine
\[ \boxed{ \text{Prior State Information} + \text{Observation-Arc Information}. } \]
4.3.3.33 Prior-Constrained Batch Normal Equations
For a correction formulation, the normal matrix becomes
\[ \boxed{ \mathbf N = \mathbf P_0^{-1} + \mathbf H^T \mathbf R^{-1} \mathbf H. } \]
The right-hand side includes both measurement and prior contributions.
The solution covariance is approximately
\[ \boxed{ \mathbf P = \mathbf N^{-1}. } \]
Thus,
\[ \boxed{ \text{Posterior Information} = \text{Prior Information} + \text{Batch Measurement Information}. } \]
This is the dynamic counterpart of the prior-constrained WLS relationship introduced in Section 4.3.2.
4.3.3.34 Estimate Covariance
After convergence, the reference-state covariance is approximately
\[ \boxed{ \mathbf P_0^{+} \approx ( \mathbf H^T \mathbf R^{-1} \mathbf H )^{-1} } \]
for the no-prior full-rank case.
With prior information,
\[ \boxed{ \mathbf P_0^{+} = \left( \mathbf P_0^{-1} + \mathbf H^T \mathbf R^{-1} \mathbf H \right)^{-1}. } \]
This covariance quantifies the uncertainty in the estimated state at the reference epoch.
4.3.3.35 Covariance at Other Epochs
Once the reference-state covariance is known, it can be propagated:
\[ \boxed{ \mathbf P(t_k) = \boldsymbol{\Phi}(t_k,t_0) \mathbf P_0 \boldsymbol{\Phi}^T(t_k,t_0) } \]
for the deterministic linearized case.
If process noise is included, additional covariance terms are required.
Thus the estimated uncertainty can be mapped from the reference epoch to other points along the trajectory.
Engineering interpretation: When process noise is present, deterministic covariance propagation is incomplete because uncertainty is injected along the trajectory. The propagated covariance must then include the accumulated process-noise contribution in addition to the mapped reference covariance.
4.3.3.36 Parameter Estimation in a Batch Dynamic Problem
The estimator can solve for unknown dynamic parameters as well as the state.
Define the augmented unknown vector
\[ \boxed{ \boldsymbol{\xi} = \begin{bmatrix} \mathbf x_0\\ \boldsymbol{\theta} \end{bmatrix}. } \]
Examples of \boldsymbol{\theta} include
- drag coefficient,
- ballistic coefficient,
- solar-radiation-pressure coefficient,
- sensor bias,
- maneuver components,
- empirical accelerations.
The batch correction becomes
\[ \boxed{ \delta\boldsymbol{\xi} = \begin{bmatrix} \delta\mathbf x_0\\ \delta\boldsymbol{\theta} \end{bmatrix}. } \]
4.3.3.37 Parameter Sensitivity
If the dynamics depend on parameter \theta,
\[ \dot{\mathbf x} = f(\mathbf x,\theta,t), \]
define the parameter sensitivity
\[ \boxed{ \mathbf S_\theta(t) = \frac{\partial\mathbf x(t)} {\partial\theta}. } \]
Then
\[ \delta\mathbf x(t) \approx \boldsymbol{\Phi}(t,t_0) \delta\mathbf x_0 + \mathbf S_\theta(t) \delta\theta. \]
The measurement perturbation becomes
\[ \boxed{ \delta\mathbf z_k \approx \mathbf H_k \boldsymbol{\Phi}_{k,0} \delta\mathbf x_0 + \mathbf H_k \mathbf S_{\theta,k} \delta\theta. } \]
This allows states and parameters to be estimated together.
4.3.3.38 Variational Equation for Parameter Sensitivity
For
\[ \dot{\mathbf x} = f(\mathbf x,\theta,t), \]
the sensitivity satisfies
\[ \boxed{ \dot{\mathbf S}_\theta = \mathbf A \mathbf S_\theta + \frac{\partial f}{\partial\theta}. } \]
A common initial condition is
\[ \boxed{ \mathbf S_\theta(t_0)=\mathbf0 } \]
if the reference state itself does not explicitly depend on \theta.
This equation may be integrated alongside the state and STM.
4.3.3.39 Dynamic Design Matrix with Parameters
For an augmented unknown vector,
\[ \delta\boldsymbol{\xi} = \begin{bmatrix} \delta\mathbf x_0\\ \delta\boldsymbol{\theta} \end{bmatrix}, \]
the measurement design block becomes
\[ \boxed{ \mathbf G_k = \begin{bmatrix} \mathbf H_k\boldsymbol{\Phi}_{k,0} & \mathbf H_k\mathbf S_{\theta,k} + \frac{\partial h_k}{\partial\boldsymbol{\theta}} \end{bmatrix}. } \]
This explicitly includes
- indirect parameter effects through dynamics,
- direct parameter effects through the measurement model.
This distinction is important.
4.3.3.40 Direct and Indirect Parameter Effects
A parameter may influence a measurement in two ways.
Indirectly through dynamics
\[ \theta \rightarrow \mathbf x(t) \rightarrow h(\mathbf x). \]
Directly through the observation model
\[ \theta \rightarrow h(\mathbf x,\theta). \]
Therefore,
\[ \boxed{ \frac{\partial h_k}{\partial\theta_0} = \frac{\partial h_k}{\partial\mathbf x_k} \frac{\partial\mathbf x_k}{\partial\theta} + \left. \frac{\partial h_k}{\partial\theta} \right|_{\text{direct}}. } \]
Ignoring one of these paths can produce an incorrect design matrix.
4.3.3.41 General Orbit-Determination Interpretation
A classical application is orbit determination.
The unknown reference state may be
\[ \mathbf x_0 = \begin{bmatrix} \mathbf r_0\\ \mathbf v_0 \end{bmatrix}. \]
Tracking data are collected over an observation arc.
The estimator repeatedly:
- propagates the orbit,
- predicts the tracking measurements,
- forms observed-minus-computed residuals,
- computes sensitivities,
- solves a weighted least-squares correction,
- updates the reference orbit.
Thus,
\[ \boxed{ \text{Tracking Data} \rightarrow \text{Batch Dynamic Estimator} \rightarrow \text{Best-Fit Reference Orbit}. } \]
4.3.3.42 General Relative-Navigation Example
Consider a general rendezvous or proximity-navigation problem with relative state
\[ \boxed{ \mathbf x_{\text{rel},0} = \begin{bmatrix} \mathbf r_{\text{rel},0}\\ \mathbf v_{\text{rel},0} \end{bmatrix}. } \]
Suppose measurements such as range and line-of-sight direction are obtained at several times.
The relative state is propagated:
\[ \mathbf x_{\text{rel}}(t_k) = \phi_{\text{rel}} ( t_k,t_0,\mathbf x_{\text{rel},0} ). \]
Measurements are predicted:
\[ \hat{\mathbf z}_k = h_k ( \mathbf x_{\text{rel}}(t_k) ). \]
Then the estimator uses the accumulated residuals and dynamic sensitivities to correct
\[ \mathbf x_{\text{rel},0}. \]
The important general principle is
\[ \boxed{ \text{Relative Dynamics} + \text{Measurements Over Time} \rightarrow \text{Improved Relative-State Estimate}. } \]
This applies generally and is not specific to any particular RPO implementation.
Engineering interpretation: In relative navigation, changing geometry over the approach or fly-around can be as important as measurement precision. Measurements from different viewing geometries can separate state directions that are weakly constrained at one instant.
4.3.3.43 Batch Maneuver Estimation
Suppose a trajectory contains an uncertain impulsive maneuver
\[ \Delta\mathbf v. \]
The augmented unknown vector may be
\[ \boxed{ \boldsymbol{\xi} = \begin{bmatrix} \mathbf x_0\\ \Delta\mathbf v \end{bmatrix}. } \]
Measurements before and after the maneuver can constrain the maneuver magnitude and direction.
Conceptually,
\[ \boxed{ \text{Trajectory Before Maneuver} + \text{Trajectory After Maneuver} \rightarrow \widehat{\Delta\mathbf v}. } \]
If the maneuver epoch is also uncertain, it may become another estimated parameter.
4.3.3.44 Measurement Timing
Batch estimation depends on correct measurement epochs.
A measurement model must evaluate the state at the correct time:
\[ \boxed{ \hat{\mathbf z}_k = h_k [ \mathbf x(t_k) ]. } \]
A timing offset
\[ \Delta t \]
can produce an apparent state or velocity error.
For rapidly changing geometry,
\[ \boxed{ \text{Timestamp Error} \rightarrow \text{Measurement Prediction Error}. } \]
Therefore measurement timing must be handled consistently with the trajectory propagation.
4.3.3.45 Reference Frames in Dynamic Batch Estimation
State propagation may occur in one frame while measurements are naturally expressed in another.
For example,
\[ \text{ECI} \rightarrow \text{station frame} \]
or
\[ \text{relative orbital frame} \rightarrow \text{camera frame}. \]
Therefore the measurement model may include coordinate transformations:
\[ \boxed{ \mathbf z_k = h_k ( \mathbf C_{AB}(t_k)\mathbf x_k ). } \]
Frame transformations may themselves depend on time and estimated quantities.
Incorrect transformations can produce systematic residuals that an estimator may attempt to absorb into the state.
4.3.3.46 Observation Types May Be Mixed
A batch may contain heterogeneous observations such as
- range,
- range rate,
- Doppler,
- angles,
- GNSS measurements,
- optical line of sight,
- relative range,
- relative pose.
The stacked measurement vector may therefore contain different units and dimensions.
Covariance weighting is essential:
\[ \boxed{ J = \sum_k \mathbf r_k^T \mathbf R_k^{-1} \mathbf r_k. } \]
Thus every measurement contributes according to its expected uncertainty and sensitivity.
4.3.3.47 Measurement Availability Can Be Irregular
Measurements do not need to arrive at uniform time intervals.
The epochs may be
\[ t_1,\ t_2,\ t_5,\ t_9,\ldots \]
depending on sensor availability.
The state simply propagates between available measurement times.
Batch estimation naturally handles asynchronous observations as long as each observation is associated with the correct epoch.
4.3.3.48 Missing Measurements
If no observation exists at a particular time, no measurement residual is added for that epoch.
The dynamics still propagate across the gap.
Thus,
\[ \boxed{ \text{No Measurement} \neq \text{No State Propagation}. } \]
Long measurement gaps may increase sensitivity to model error and reduce estimation accuracy.
4.3.3.49 Measurement Correlation Across Time
Measurements collected at different epochs may not be statistically independent.
Correlation can arise from
- common clock error,
- common sensor bias,
- common environmental correction,
- shared calibration error,
- shared image-processing bias.
Then the stacked covariance matrix may contain off-diagonal blocks:
\[ \mathbf R = \begin{bmatrix} \mathbf R_{11}&\mathbf R_{12}&\cdots\\ \mathbf R_{21}&\mathbf R_{22}&\cdots\\ \vdots&\vdots&\ddots \end{bmatrix}. \]
Ignoring strong temporal correlation may cause the batch estimator to overestimate the amount of independent information available.
Engineering interpretation: Temporal correlation is especially important for high-rate measurements that share the same slowly varying bias or calibration error. Treating every sample as independent can make the formal covariance unrealistically small.
4.3.3.50 Process Noise in a Batch Problem
The basic deterministic batch formulation assumes the dynamic model is exact between measurements.
Real spacecraft dynamics are not exact.
Model errors may arise from
- force-model uncertainty,
- unmodeled thrust,
- atmospheric uncertainty,
- disturbance forces,
- actuator error.
These may be represented using process noise:
\[ \boxed{ \dot{\mathbf x} = f(\mathbf x,t) + \mathbf G\mathbf w. } \]
A more advanced batch formulation may estimate process-noise effects or introduce dynamic constraints with finite covariance.
This leads toward stochastic trajectory estimation and smoothing.
4.3.3.51 Deterministic Dynamics versus Stochastic Dynamics
In a deterministic batch estimator,
\[ \mathbf x(t_k) \]
is completely determined by
\[ \mathbf x_0 \]
and the model.
Thus the trajectory must remain exactly on the modeled dynamics.
In a stochastic formulation, the trajectory is allowed to deviate from the nominal dynamics according to process uncertainty.
Conceptually,
\[ \boxed{ \text{Deterministic Batch} \rightarrow \text{Exact Dynamic Constraint} } \]
while
\[ \boxed{ \text{Stochastic Batch} \rightarrow \text{Dynamic Constraint with Uncertainty}. } \]
This distinction becomes important when model error is significant.
4.3.3.52 Batch State Estimation and Smoothing
Batch estimation uses many observations over an interval.
Because later observations can influence an earlier reference state, the method has a close conceptual relationship to smoothing.
For example, an observation at t_N can change the estimated state at t_0.
Thus,
\[ \boxed{ \text{Future Measurements} \rightarrow \text{Improved Earlier-State Estimate}. } \]
This is one reason batch estimation can provide very accurate post-processed trajectories.
4.3.3.53 Batch versus Sequential Estimation
Batch estimation processes an observation set together.
Sequential estimation processes observations as they arrive.
A simplified comparison is:
| Feature | Batch Dynamic Estimation | Sequential Estimation |
|---|---|---|
| Measurement use | Entire observation arc | One measurement or epoch at a time |
| Typical use | Offline OD, reconstruction, calibration | Real-time navigation |
| Reprocessing | Straightforward | Usually requires replay or smoothing |
| Initial-state estimation | Natural | Possible |
| Computational load | Can be larger | Usually distributed over time |
| Future-data influence on past state | Natural | Requires smoother |
Neither is universally better.
4.3.3.54 Equivalence in Linear Gaussian Problems
Under appropriate linear-Gaussian assumptions, batch and recursive solutions can contain the same information.
Conceptually,
\[ \boxed{ \text{Batch Information Accumulation} \Longleftrightarrow \text{Sequential Information Accumulation}. } \]
The difference is primarily in how the information is processed and stored.
This relationship is explored further in 4.3.4 Recursive Estimation from Least-Squares and Bayesian Viewpoints.
4.3.3.55 Dynamic Information Matrix
The batch information matrix is
\[ \boxed{ \boldsymbol{\Lambda} = \sum_{k=1}^{N} \left( \mathbf H_k \boldsymbol{\Phi}_{k,0} \right)^T \mathbf R_k^{-1} \left( \mathbf H_k \boldsymbol{\Phi}_{k,0} \right). } \]
This equation is extremely informative.
Each measurement contributes information based on
- its measurement sensitivity,
- its uncertainty,
- the dynamic mapping from reference state to measurement epoch.
Thus,
\[ \boxed{ \text{Dynamic Information} = \text{Measurement Sensitivity} + \text{Dynamics} + \text{Geometry} + \text{Measurement Precision}. } \]
Engineering interpretation: The eigenstructure of the information matrix indicates which combinations of reference-state components are strongly constrained and which remain weakly determined over the observation arc.
4.3.3.56 Observability Over an Observation Arc
A state component may not be observable instantaneously but may become observable through dynamics.
For example, a measurement may provide position-related information at one instant.
Over time, the trajectory evolution may couple that information to velocity.
Therefore,
\[ \boxed{ \text{Dynamic Evolution Can Create Information About Otherwise Weak State Directions}. } \]
Observability in a dynamic batch problem depends on the full stacked design matrix, not a single measurement Jacobian.
4.3.3.57 Rank of the Dynamic Design Matrix
Let
\[ \mathbf H_B = \begin{bmatrix} \mathbf H_1\boldsymbol{\Phi}_{1,0}\\ \mathbf H_2\boldsymbol{\Phi}_{2,0}\\ \vdots\\ \mathbf H_N\boldsymbol{\Phi}_{N,0} \end{bmatrix}. \]
For n unknown reference-state components, a necessary linear condition for unique estimation is
\[ \boxed{ \operatorname{rank}(\mathbf H_B)=n. } \]
If
\[
\operatorname{rank}(\mathbf H_B) some reference-state direction is not independently constrained by the entire observation arc.
4.3.3.58 Conditioning of the Batch Problem
Even with full rank, the dynamic design matrix may be poorly conditioned.
A weak singular value indicates a state or parameter combination that has little effect on the observations.
This may produce
- large covariance,
- strong correlations,
- sensitivity to measurement noise,
- unstable numerical corrections.
Therefore,
\[ \boxed{ \text{Full Dynamic Rank} \not\Rightarrow \text{Strong Dynamic Estimability}. } \]
4.3.3.59 Observation Geometry Across Time
Dynamic geometry changes as the spacecraft moves.
This can be highly beneficial.
Suppose one early observation constrains one direction weakly.
Later geometry may rotate the measurement sensitivity and provide information in a different direction.
Thus,
\[ \boxed{ \text{Changing Geometry Over Time} \rightarrow \text{Improved State Separation}. } \]
This is one reason observation-arc design is important.
4.3.3.60 Parameter Correlation in Dynamic Estimation
Two dynamic parameters may produce similar effects over a short arc.
For example,
\[ \frac{\partial\mathbf z} {\partial\theta_1} \approx c \frac{\partial\mathbf z} {\partial\theta_2}. \]
A longer or more diverse arc may allow the effects to separate.
However, if the signatures remain nearly identical, the parameters remain highly correlated.
Thus,
\[ \boxed{ \text{Longer Arc Can Improve Identifiability Only If Parameter Signatures Evolve Differently}. } \]
4.3.3.61 Residual Analysis After Convergence
After convergence, compute post-fit residuals:
\[ \boxed{ \mathbf r_{k,\text{post}} = \mathbf z_k - h_k ( \hat{\mathbf x}_k ). } \]
Residuals should be examined for
- mean bias,
- RMS magnitude,
- trends with time,
- dependence on geometry,
- dependence on measurement type,
- outliers,
- unexplained periodic structure,
- consistency with assumed covariance.
A small total cost does not guarantee a correct dynamic model.
4.3.3.62 Residual Time History
Plotting residuals against time can reveal problems that a single RMS number hides.
For example,
- steadily increasing residuals may indicate model drift,
- a step may indicate a maneuver or calibration change,
- periodic residuals may indicate unmodeled dynamics,
- bias may indicate sensor or model offset.
Thus,
\[ \boxed{ \text{Residual Time Structure} \rightarrow \text{Diagnostic Information About Model Deficiency}. } \]
4.3.3.63 Post-Fit Residual Covariance
If the measurement covariance model is appropriate, the post-fit residual scale should be broadly compatible with the assumed measurement uncertainty.
A normalized residual may be defined as
\[ \tilde{\mathbf r}_k = \mathbf R_k^{-1/2} \mathbf r_k. \]
Large systematic normalized residuals may indicate
- incorrect covariance,
- outliers,
- unmodeled bias,
- dynamic-model deficiency.
Thus residual analysis is also a covariance-model validation tool.
4.3.3.64 Outliers in Batch Estimation
Because least squares squares the residuals, one large outlier can significantly affect the batch solution.
Outliers may arise from
- corrupted tracking data,
- false optical associations,
- GNSS multipath,
- sensor dropouts,
- timing errors,
- processing faults.
Possible handling methods include
- measurement screening,
- residual gating,
- robust loss functions,
- iterative reweighting.
However, measurement rejection should be based on defensible criteria rather than removing observations merely because they disagree with the current model.
4.3.3.65 Model Fidelity
A dynamic batch estimator can only fit measurements using the physics included in its model.
If a real acceleration is omitted, the estimator may attempt to absorb the discrepancy into
- initial position,
- initial velocity,
- drag parameter,
- maneuver parameter,
- empirical acceleration.
Therefore,
\[ \boxed{ \text{Model Error Can Be Misinterpreted as State or Parameter Error}. } \]
This is a major engineering consideration in orbit determination and trajectory reconstruction.
4.3.3.66 Overfitting with Too Many Parameters
Adding more estimated parameters often reduces residuals.
However, this does not automatically improve the physical solution.
A large parameter set may introduce
- weak observability,
- strong correlation,
- large covariance,
- nonphysical compensation.
Thus,
\[ \boxed{ \text{Smaller Residual} \neq \text{Better Physical Model}. } \]
Only parameters supported by meaningful measurement sensitivity should be estimated.
4.3.3.67 Reference-Epoch Choice and Correlation
Choosing the reference epoch can influence parameter correlation.
For example, position and velocity errors may become strongly coupled when the reference epoch lies far from the observation data.
Placing the reference epoch near the center of the arc can sometimes reduce correlation.
Conceptually,
\[ \boxed{ \text{Reference-Epoch Placement} \rightarrow \text{Sensitivity Structure} \rightarrow \text{Numerical Conditioning}. } \]
The optimal choice depends on the specific estimation problem.
4.3.3.68 Numerical Integration Accuracy
Trajectory propagation accuracy affects the predicted observations.
If numerical integration error becomes comparable to measurement accuracy, the estimator may interpret integration error as physical state error.
Therefore integration settings should be selected so that numerical propagation error is sufficiently below the estimation-error scale of interest.
Important considerations include
- integration step size,
- error tolerance,
- interpolation method,
- event handling.
Engineering interpretation: A useful numerical check is to tighten the integration tolerances and confirm that the estimated state, cost, and residual history change negligibly. Otherwise numerical integration error is still contaminating the estimation result.
4.3.3.69 Interpolation at Measurement Times
Numerical integrators may not naturally produce states exactly at every observation epoch.
The state may therefore require interpolation:
\[ \mathbf x(t_k) = \operatorname{Interp} [ \mathbf x(t_{j}), \mathbf x(t_{j+1}) ]. \]
The interpolation must be accurate enough for the measurement model.
For very high-accuracy estimation, poor interpolation can create artificial residuals.
4.3.3.70 Finite-Difference Sensitivities
If analytical Jacobians are unavailable, sensitivities can be approximated numerically.
For state component x_j,
\[ \boxed{ \frac{\partial z} {\partial x_j} \approx \frac{ z(x_j+\Delta x_j) - z(x_j-\Delta x_j) }{ 2\Delta x_j }. } \]
This requires additional propagations.
Finite differences are simple but sensitive to
- perturbation size,
- numerical precision,
- propagation error.
They should therefore be verified carefully.
Engineering interpretation: The finite-difference perturbation must be large enough to overcome floating-point and propagation noise but small enough to remain in the local linear regime. Comparing forward, backward, and central differences is a useful consistency check.
4.3.3.71 Analytical versus Numerical Sensitivities
Sensitivity computation can use
- analytical derivatives,
- variational equations,
- finite differences,
- automatic differentiation.
Analytical or variational derivatives are often efficient and accurate once implemented correctly.
Finite differences are easier to implement but can be computationally expensive and numerically sensitive.
Automatic differentiation can provide highly accurate derivatives when compatible with the software architecture.
No single approach is universally best.
4.3.3.72 Numerical Solution of the Batch Normal Equations
The analytical expression
\[ \delta\hat{\mathbf x}_0 = ( \mathbf H^T\mathbf R^{-1}\mathbf H )^{-1} \mathbf H^T\mathbf R^{-1}\mathbf r \]
is useful conceptually.
In software, explicit inversion is usually avoided.
Possible solvers include
- QR factorization,
- Cholesky factorization,
- SVD,
- square-root least squares.
The numerical method should be selected according to
- conditioning,
- problem size,
- sparsity,
- rank structure.
4.3.3.73 Square-Root Batch Estimation
Instead of solving directly with the normal matrix, square-root methods operate on factored forms of the information or covariance.
This can improve numerical robustness because it avoids squaring the condition number associated with
\[ \mathbf H^T\mathbf H. \]
Square-root methods are particularly useful in high-precision estimation and poorly conditioned problems.
4.3.3.74 Sparse Batch Estimation
Large batch problems may contain many states, parameters, and measurements.
Their matrices may be sparse because each observation depends only on a limited subset of variables.
Sparse linear algebra can substantially reduce
- memory use,
- computational cost.
This becomes especially important in
- long observation arcs,
- multi-arc estimation,
- large calibration problems,
- factor-graph-like formulations.
Engineering interpretation: Sparse structure becomes especially valuable when states or nuisance parameters are attached to many epochs or arcs. Exploiting sparsity avoids storing and factorizing large dense matrices containing mostly zeros.
4.3.3.75 Multi-Arc Estimation
Sometimes one continuous dynamic trajectory is not appropriate.
The data may be divided into several arcs:
\[ \text{Arc 1}, \quad \text{Arc 2}, \quad \ldots \]
Each arc may have its own initial state while sharing common global parameters.
For example,
\[ \boldsymbol{\xi} = \begin{bmatrix} \mathbf x_{0,1}\\ \mathbf x_{0,2}\\ \vdots\\ \boldsymbol{\theta}_{global} \end{bmatrix}. \]
This can be useful when
- maneuvers separate trajectory segments,
- dynamic-model fidelity varies,
- different observation intervals must be processed jointly.
4.3.3.76 Local versus Global Parameters
In multi-arc estimation, parameters may be classified as:
Local parameters
Specific to one arc.
Examples:
- arc initial state,
- local maneuver correction.
Global parameters
Shared across all arcs.
Examples:
- sensor calibration,
- common physical coefficient,
- station bias.
This structure can improve parameter separation and exploit information from multiple data intervals.
4.3.3.77 Batch Estimation as an Inverse Problem
The forward problem is
\[ \boxed{ \mathbf x_0,\boldsymbol{\theta} \rightarrow \text{Propagate} \rightarrow \mathbf x(t_k) \rightarrow h_k(\mathbf x(t_k)) \rightarrow \hat{\mathbf z}_k. } \]
Batch estimation reverses this:
\[ \boxed{ \{ \mathbf z_1,\ldots,\mathbf z_N \} \rightarrow \hat{\mathbf x}_0, \hat{\boldsymbol{\theta}}. } \]
Because many measurements constrain one dynamic trajectory, batch estimation is a structured inverse problem.
4.3.3.78 Information Accumulation Over Time
Each measurement contributes an information increment:
\[ \boxed{ \Delta\boldsymbol{\Lambda}_k = ( \mathbf H_k \boldsymbol{\Phi}_{k,0} )^T \mathbf R_k^{-1} ( \mathbf H_k \boldsymbol{\Phi}_{k,0} ). } \]
The total batch information is
\[ \boxed{ \boldsymbol{\Lambda} = \sum_{k=1}^{N} \Delta\boldsymbol{\Lambda}_k. } \]
This provides an intuitive connection between dynamic batch estimation and recursive information filtering.
4.3.3.79 Effect of Measurement Frequency
Increasing measurement frequency may increase information, but only if the additional measurements contribute sufficiently independent information.
Highly correlated or nearly redundant measurements may add less information than expected.
Thus,
\[ \boxed{ \text{Higher Measurement Rate} \neq \text{Proportionally Higher Estimation Quality}. } \]
The useful information depends on geometry, sensitivity, noise, and correlation.
4.3.3.80 Effect of Dynamic Excitation
Some parameters become estimable only when the trajectory provides sufficient excitation.
For example, a parameter may influence measurements weakly during nearly constant motion but strongly during a maneuver or changing geometry.
Thus,
\[ \boxed{ \text{Dynamic Excitation} \rightarrow \text{Parameter Signature} \rightarrow \text{Improved Identifiability}. } \]
This is a general principle in dynamic parameter estimation.
4.3.3.81 Observed-minus-Computed Notation
In orbit determination, residuals are frequently referred to as observed minus computed, or O-C:
\[ \boxed{ O-C = \mathbf z_{\text{obs}} - \mathbf z_{\text{computed}}. } \]
This is exactly the residual:
\[ \mathbf r = \mathbf z-\hat{\mathbf z}. \]
The terminology emphasizes that the measurement is compared with a quantity computed from the current reference trajectory.
4.3.3.82 Batch Estimation Success Criteria
A successful batch solution should generally satisfy several criteria simultaneously.
These include
- small state corrections,
- stable cost,
- physically plausible state,
- reasonable covariance,
- acceptable parameter correlations,
- post-fit residuals consistent with the assumed noise model,
- no unexplained residual trends,
- adequate rank and conditioning.
Therefore,
\[ \boxed{ \text{Convergence} \neq \text{Complete Validation}. } \]
4.3.3.83 Common Failure Modes
Common batch dynamic estimation failures include
- poor initial state,
- incorrect force model,
- incorrect observation model,
- incorrect timestamps,
- frame mismatch,
- wrong measurement covariance,
- unmodeled measurement bias,
- rank deficiency,
- poor geometry,
- weak parameter identifiability,
- excessive parameter estimation,
- outliers,
- inaccurate STM propagation,
- numerical integration error,
- ill-conditioning.
These problems should be diagnosed systematically rather than simply increasing the number of iterations.
4.3.3.84 Practical Batch Dynamic Estimation Workflow
A disciplined workflow is:
- Define the reference epoch.
- Define the reference-state vector.
- Define any estimated model parameters.
- Define units and coordinate frames.
- Define the dynamic model.
- Define force and disturbance models.
- Define measurement models.
- Associate every observation with the correct epoch.
- Define measurement covariance.
- Define prior state and parameter information.
- Select an initial reference-state guess.
- Propagate the state trajectory.
- Propagate the STM.
- Propagate parameter sensitivities if required.
- Generate predicted measurements.
- Compute pre-fit residuals.
- Compute measurement Jacobians.
- Form dynamic sensitivity blocks.
- Stack residuals and design matrices.
- Construct the covariance/weight matrix.
- Examine rank and conditioning.
- Solve the weighted least-squares correction.
- Update states and parameters.
- Repropagate the trajectory.
- Repeat until convergence.
- Compute post-fit residuals.
- Compute or approximate solution covariance.
- Examine parameter correlation.
- Check residual time histories.
- Check physical plausibility.
- Investigate outliers or systematic residual structure.
- Verify sensitivity to initial guess and modeling assumptions.
Conceptually,
\[ \boxed{ \begin{array}{c} \text{Define Reference State / Parameters}\\ \downarrow\\ \text{Propagate Dynamics}\\ \downarrow\\ \text{Propagate STM / Sensitivities}\\ \downarrow\\ \text{Predict Measurements}\\ \downarrow\\ \text{Compute Residuals}\\ \downarrow\\ \text{Assemble Dynamic Design Matrix}\\ \downarrow\\ \text{Weight by Measurement Uncertainty}\\ \downarrow\\ \text{Solve Batch Correction}\\ \downarrow\\ \text{Update Reference State / Parameters}\\ \downarrow\\ \text{Check Convergence}\\ \downarrow\\ \text{Validate Residuals / Covariance / Physics} \end{array} } \]
Engineering interpretation: The workflow is iterative at the engineering level as well as inside differential correction. If diagnostics expose weak observability, poor geometry, or model mismatch, the correct response may be to revise the data, parameter set, covariance model, or physics rather than simply running more iterations.
4.3.3.85 Complete Batch Dynamic Estimation Architecture
The complete architecture can be summarized as
\[ \boxed{ \begin{array}{c} \text{Reference State Guess } \mathbf x_0^{(i)} \\ \downarrow\\ \text{Dynamic Propagation} \\ \mathbf x_k^{(i)} = \phi(t_k,t_0,\mathbf x_0^{(i)}) \\ \downarrow\\ \text{Measurement Prediction} \\ \hat{\mathbf z}_k = h_k(\mathbf x_k^{(i)}) \\ \downarrow\\ \text{Residual} \\ \mathbf r_k = \mathbf z_k-\hat{\mathbf z}_k \\ \downarrow\\ \text{STM Propagation} \\ \boldsymbol{\Phi}_{k,0} \\ \downarrow\\ \text{Dynamic Sensitivity} \\ \mathbf H_k^{(0)} = \mathbf H_k\boldsymbol{\Phi}_{k,0} \\ \downarrow\\ \text{Stack All Epochs} \\ \mathbf r,\mathbf H,\mathbf R \\ \downarrow\\ \text{Weighted LS Correction} \\ \delta\hat{\mathbf x}_0 \\ \downarrow\\ \text{Update} \\ \mathbf x_0^{(i+1)} = \mathbf x_0^{(i)} + \delta\hat{\mathbf x}_0 \\ \downarrow\\ \text{Repropagate Until Converged} \end{array} } \]
4.3.3.86 Key Equations
Dynamic model
\[ \boxed{ \dot{\mathbf x} = f(\mathbf x,\boldsymbol{\theta},t) } \]
State-flow mapping
\[ \boxed{ \mathbf x(t_k) = \phi(t_k,t_0,\mathbf x_0,\boldsymbol{\theta}) } \]
Measurement model
\[ \boxed{ \mathbf z_k = h_k(\mathbf x_k,\boldsymbol{\theta}) + \mathbf v_k } \]
Predicted measurement
\[ \boxed{ \hat{\mathbf z}_k = h_k(\hat{\mathbf x}_k,\hat{\boldsymbol{\theta}}) } \]
Residual
\[ \boxed{ \mathbf r_k = \mathbf z_k-\hat{\mathbf z}_k } \]
State Transition Matrix
\[ \boxed{ \boldsymbol{\Phi}(t_k,t_0) = \frac{\partial\mathbf x(t_k)} {\partial\mathbf x(t_0)} } \]
STM propagation
\[ \boxed{ \dot{\boldsymbol{\Phi}} = \mathbf A\boldsymbol{\Phi} } \]
where
\[ \boxed{ \mathbf A = \frac{\partial f}{\partial\mathbf x} } \]
Measurement Jacobian
\[ \boxed{ \mathbf H_k = \frac{\partial h_k} {\partial\mathbf x_k} } \]
Dynamic measurement sensitivity
\[ \boxed{ \mathbf H_k^{(0)} = \mathbf H_k \boldsymbol{\Phi}_{k,0} } \]
Linearized residual equation
\[ \boxed{ \mathbf r_k \approx \mathbf H_k^{(0)} \delta\mathbf x_0 + \mathbf v_k } \]
Stacked residual equation
\[ \boxed{ \mathbf r \approx \mathbf H \delta\mathbf x_0 + \mathbf v } \]
Batch weighted cost
\[ \boxed{ J = ( \mathbf r-\mathbf H\delta\mathbf x_0 )^T \mathbf R^{-1} ( \mathbf r-\mathbf H\delta\mathbf x_0 ) } \]
Batch normal equations
\[ \boxed{ \mathbf H^T \mathbf R^{-1} \mathbf H \delta\hat{\mathbf x}_0 = \mathbf H^T \mathbf R^{-1} \mathbf r } \]
Batch correction
\[ \boxed{ \delta\hat{\mathbf x}_0 = ( \mathbf H^T \mathbf R^{-1} \mathbf H )^{-1} \mathbf H^T \mathbf R^{-1} \mathbf r } \]
Reference-state update
\[ \boxed{ \mathbf x_0^{(i+1)} = \mathbf x_0^{(i)} + \delta\hat{\mathbf x}_0^{(i)} } \]
Batch information matrix
\[ \boxed{ \boldsymbol{\Lambda} = \mathbf H^T \mathbf R^{-1} \mathbf H } \]
Reference-state covariance
\[ \boxed{ \mathbf P_0^{+} = ( \mathbf H^T \mathbf R^{-1} \mathbf H )^{-1} } \]
Prior-constrained covariance
\[ \boxed{ \mathbf P^{+} = \left( \mathbf P_0^{-1} + \mathbf H^T \mathbf R^{-1} \mathbf H \right)^{-1} } \]
Covariance propagation
\[ \boxed{ \mathbf P(t_k) = \boldsymbol{\Phi}_{k,0} \mathbf P_0 \boldsymbol{\Phi}_{k,0}^{T} } \]
Parameter sensitivity
\[ \boxed{ \mathbf S_\theta = \frac{\partial\mathbf x} {\partial\theta} } \]
Parameter-sensitivity dynamics
\[ \boxed{ \dot{\mathbf S}_\theta = \mathbf A\mathbf S_\theta + \frac{\partial f} {\partial\theta} } \]
Rank condition
\[ \boxed{ \operatorname{rank}(\mathbf H_B)=n } \]
for a locally unique unconstrained estimate of n reference-state quantities.
4.3.3.87 Key Takeaways
Batch dynamic state estimation extends the least-squares framework from static observations to measurements collected along a dynamic trajectory.
The central dynamic relationship is
\[ \boxed{ \mathbf x(t_k) = \phi(t_k,t_0,\mathbf x_0). } \]
Every observation is therefore indirectly related to the same reference state.
The measurement model is
\[ \boxed{ \mathbf z_k = h_k(\mathbf x_k) + \mathbf v_k. } \]
The key sensitivity relationship is
\[ \boxed{ \frac{\partial h_k} {\partial\mathbf x_0} = \mathbf H_k \boldsymbol{\Phi}_{k,0}. } \]
This combines
\[ \boxed{ \text{Measurement Sensitivity} \times \text{Dynamic Sensitivity}. } \]
Measurements across the observation arc are stacked into one least-squares system:
\[ \boxed{ \mathbf r \approx \mathbf H \delta\mathbf x_0 + \mathbf v. } \]
The weighted correction is obtained from
\[ \boxed{ \mathbf H^T \mathbf R^{-1} \mathbf H \delta\hat{\mathbf x}_0 = \mathbf H^T \mathbf R^{-1} \mathbf r. } \]
Because the dynamic and measurement models are usually nonlinear, the process is iterative:
\[ \boxed{ \text{Propagate} \rightarrow \text{Predict} \rightarrow \text{Residual} \rightarrow \text{Sensitivity} \rightarrow \text{Correct} \rightarrow \text{Repropagate}. } \]
The STM
\[ \boxed{ \boldsymbol{\Phi}(t_k,t_0) } \]
is central because it maps perturbations from the reference epoch to the measurement epoch.
The batch information matrix accumulates information from all measurements:
\[ \boxed{ \boldsymbol{\Lambda} = \sum_k ( \mathbf H_k\boldsymbol{\Phi}_{k,0} )^T \mathbf R_k^{-1} ( \mathbf H_k\boldsymbol{\Phi}_{k,0} ). } \]
The quality of the estimate depends not only on the number of observations but on
- measurement accuracy,
- dynamic sensitivity,
- geometry,
- observation duration,
- rank,
- conditioning,
- model fidelity,
- parameter correlation.
Therefore,
\[ \boxed{ \text{More Measurements} \neq \text{Automatically Better Dynamic Estimation}. } \]
The central engineering principle is
\[ \boxed{ \text{Batch Dynamic Estimation Uses the Physics of Motion to Turn Measurements Across Time Into Information About a Common Reference State}. } \]
4.3.3.88 What Comes Next
Batch dynamic estimation processes the complete observation set together.
However, onboard spacecraft navigation often cannot wait until the end of an observation arc.
Measurements arrive sequentially:
\[ \mathbf z_1, \mathbf z_2, \mathbf z_3, \ldots \]
and the estimator must update the state as each new measurement becomes available.
Instead of repeatedly solving the entire batch problem, previously accumulated information can be carried forward.
Conceptually,
\[ \boxed{ \text{Previous Estimate and Information} + \text{New Measurement} \rightarrow \text{Updated Estimate and Information}. } \]
This raises the next major question:
\[ \boxed{ \text{How can the same estimation information be processed recursively rather than as one complete batch?} } \]
That leads directly to
\[ \boxed{ \textbf{4.3.4 Recursive Estimation from Least-Squares and Bayesian Viewpoints} } \]
where the next section will develop
- recursive least squares,
- information accumulation,
- measurement-by-measurement updating,
- Bayesian recursion,
- prior and posterior distributions,
- relation between batch WLS and recursive estimation,
- information-form interpretation,
- relationship to Kalman filtering,
- and why recursive estimation is naturally suited to real-time spacecraft navigation.
Next: 4.3.4 Recursive Estimation from Least-Squares and Bayesian Viewpoints
Batch dynamic estimation treats the full observation arc as one coupled inverse problem. Real-time spacecraft navigation, however, often requires the estimate to be updated as each new observation arrives instead of waiting for the complete data set.
The next section develops recursive least squares, measurement-by-measurement information accumulation, Bayesian prediction and update, prior-to-posterior recursion, the connection between batch weighted least squares and sequential estimation, information-form equations, and the mathematical bridge to Kalman filtering.
4.3.4 Recursive Estimation from Least-Squares and Bayesian Viewpoints
Recursive least squares, Bayesian recursion, prior and posterior distributions, sequential information accumulation, measurement-by-measurement updates, equivalence with batch estimation under linear-Gaussian assumptions, information-form interpretation, and the bridge to Kalman filtering.
Continue to Recursive Estimation →