I am studying different dynamical models of relative motion of satellites. In my work, I've always just used a numerical integrator like RK78 to integrate the cartesian system of equations:



Where I can make the model as complex as I want by expanding the $a_{pert}$ term that stands for accelerations due to perturbing forces like nonspherical gravity, solar radiation pressure, atmospheric drag, etc.

However, in the field of relative motion, it is clear that countless researchers have spent an enormous amount of effort to create a myriad of state transition matrices to describe relative motion of satellite. These include the CW, Lawden, Gim-Alfriend, and Yan-Alfriend models, for example - the latter two being very complex.

My question is this: what are these used for? If you can easily integrate a nonlinear model numerically, what would I use these complicated STMs for? Are these derived purely so we can create a model that is computationally tractable for a flight computer so that they can be the backbone of a guidance algorithm? What reason would I want to use these STMs over the exact nonlinear model with perturbations if they are only approximations of that model?

  • $\begingroup$ Hi CuriousEngineer, could you maybe provide some context for the STMs? LIke their derivation. Maybe doing so, would already answer your question.. $\endgroup$ – AtmosphericPrisonEscape Dec 17 '18 at 23:12
  • $\begingroup$ There are several very good answers to How to best think of the State Transition Matrix, and how to use it to find periodic Halo orbits? that you may find helpful. If you find an answer you are happy with, it's perfectly fine and even encouraged for you to take a few minutes and post an answer here to your own question. $\endgroup$ – uhoh Dec 18 '18 at 1:39
  • $\begingroup$ Numerical integration for accurate orbit prediction is not that trivial; if you go with 1st degree (trapezoid method) your errors will accumulate quickly enough your orbit won't even approach closing up. And more complex methods are okay for predicting the orbit/trajectory from a single state vector (point+velocity); not searching the phase-space of all possible orbits for one that meets your criteria, say, passing through three different preset points in space, velocities/times to be found. $\endgroup$ – SF. Feb 12 at 10:35
  • $\begingroup$ Here's an application of STMs by my former boss: arc.aiaa.org/doi/abs/10.2514/1.34977?journalCode=jgcd (sadly it's paywalled) $\endgroup$ – Organic Marble Mar 6 at 15:11

From the top of my head I could think of the following practical applications for state transition matrices. Note that the application referred to in the question is captured in point 3. Also, I don't explain the theory of state transition matrices, as that is already done here.

1. Covariance propagation

The position and velocity of the spacecraft is always known within a certain accuracy after performing orbit determination. For the purpose of collision avoidance, it is desirable to know how the uncertainty of the state propagates over time. The uncertainty then represents a 'volume' around the satellite in which the satellite is likely to be in the future. A good approximation of the propagated uncertainty can be found by performing a Monte Carlo simulation, where the initial state usually varied using a Gaussian distribution. However, to obtain a reliable result, you possibly need to propagate 1000 (or even more) orbits for slighty different initial conditions, which is computationally intensive. When using state transition matrices however, an approximated covariance matrix can be found using a single matrix operation as

$$\textbf P(t)=\Phi(t,t_0)\textbf P(t_0)\Phi(t,t_0)^T$$

where $\Phi(t,t_0)$ is your state transition matrix and $\textbf P(t)$ the covariance matrix. Similar to the state transition matrix $\Phi(t,t_0)=\partial \textbf x/\partial \textbf x_0$, the linearized change in the state as a function of time due to the change in the parameter vector $\textbf p$ is the sensitivity matrix. This matrix is denoted as $\textbf S(t)=\partial \textbf x/\partial \textbf p$. The parameter vector typically includes coefficients such as the drag coefficient ($C_D$) or reflectivity coefficient ($C_r$) of the satellite. The sensitivity matrix is often considered to include the uncertaincy of these parameters by using the matrix $\Psi$, such that

$$\Psi(t,t_0) = \begin{bmatrix}\Phi(t,t_0) &S(t,t_0)\\0&I\end{bmatrix}$$

and the covariance is given by

$$\textbf P_c(t)=\Psi(t,t_0)\textbf P_c(t_0)\Psi(t,t_0)^T$$

For orbits around the Earth, the appoximation using the STM is often used. It is also implemented in commercial software packages such as STK, which is discussed more here. If the propagation time is not more than a few days, the linearization error is typically small enough for practical purposes.

2. Precise Orbit Determination (POD)

Also for the implementation of an orbit determination algorithm, such as a batch least squares or Kalman filter, the STM is required to represent the dynamics. This document shows the mathematical theory behind this. In order to obtain better orbit estimations, many perturbation STM's are included. For precise orbit determination typically all important perturbances such as spherical harmonics, drag, etc are included. Also the uncertainty of environment parameters, such as the coefficients of the spherical harmonics model, can be included. In fact, when the position can be determined with great precision, such as for a mission as GRACE, these environment coefficients can therefore be determined.

3. Guidance, Navigation and Control

As suggested in the question, the STM is also useful for GNC purposes. In particular for rendez-vous manoeuvres and station keeping in formation flight, since the linearization error is small for these small distances (see the Clohessy-Wiltshire equations). The STM approach is mostly used for robust online optimal control of the necessary manoeuvres for the station keeping or docking ( e.g. by using a Linear Quadratic Regulator (LQR)). In the case of formation flight, this is of high interest to reduce fuel consumption, such that the mission duration is maximized. For some more eccentric orbits (being 'less linear'), also adoptions exist that take into account the elliptic orbit or also sometimes the $J_2$ effect (e.g. Gim-Alfriend and Yan-Alfriend models). The more complicated models are necessary in these cases to reduce the linearization error, especially when the target and chaser are far apart.

4. Orbit design (for CR3BP)

As explained here, the STM are useful to determine an initial solution for Halo orbits. Even more, the STMs can be used to assess the stability of the obtained orbit if they are integrated along with the equations of motion. Similar as for the covariance propagationn, the STM can give information about how a small error in the intial state will change the final trajectory.


As suggested in your question, the state transition matrices are in principle indeed mostly used to reduce computation times, but also prove to be handy for space situational awareness, orbit determination or orbit design. Of course, the user should always be aware that these are a linear approximation and numerical integrated trajectories are for most purposes a better choice.

  • 3
    $\begingroup$ This is a great answer $\endgroup$ – Chris Feb 11 at 15:42
  • 3
    $\begingroup$ Edited the post, but would've been a pity to leave out all the other applications :) $\endgroup$ – jochim Feb 11 at 15:52
  • 1
    $\begingroup$ It's great when a new user joins and immediately makes a noteworthy, thorough, and authoritative contribution! $\endgroup$ – uhoh Feb 13 at 2:21

Your Answer

By clicking "Post Your Answer", you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.