# How to implement a relative motion STM without any numerical integration

I am trying to program the Gim-Alfriend state transition matrix. You can read all about it here. The GA STM is a complex analytical model that maps relative motion of a deputy satellite in a curvilinear frame centered at a chief satellite. It is robust in that it captures J2 perturbations and is applicable to eccentric orbits. Specifically it maps differences in orbit elements between a deputy and chief satellite and the deputy's motion in the curvilinear frame:

$$\textbf{r} = \Phi \delta \textbf{e}$$

where

$$\textbf{e} = \{a,e,i,\omega,\Omega,M\}$$ and $$\textbf{r} = \{x,y,z,\dot{x},\dot{y},\dot{z}\}$$

My problem is this: many of the terms that comprise the total STM depend on the instantaneous osculating orbit elements of the chief satellite at each step in your simulation. However, this STM is a linearization of a nonlinear model, hence it is only valid for a small period of time. In order to keep using it, you need to recompute $$\Phi$$ at every time step in your simulation.

Does that mean that I need to numerically integrate the nonlinear equations of motion for that one satellite first before I can apply the STM? That seems incorrect to me. My understanding is that the beauty of an STM is that can be implemented without having to brute force numerically integrate your nonlinear force model.