Orbital Elements#

In pykep the default osculating orbital elements used are the classical set \([a, e, i, \Omega, \omega, f]\) (\(f\) is the True Anomaly) together with the Cartesian position and velocity \([\mathbf r, \mathbf v]\). Support is given also for the set \([a, e, i, \Omega, \omega, M]\) (\(M\) is the Mean Anomaly) is supported as well as the Mean Equinoctial Elements [WIO85] defined as:

\[\begin{split}\left\{ \begin{array}{l} p = a (1 - e^2) \\ f = e\cos(\omega + \Omega) \\ g = e\sin(\omega + \Omega) \\ h = \tan\left(\frac i2\right)\cos\Omega \\ k = \tan\left(\frac i2\right)\sin\Omega \\ L = \Omega + \omega + f \end{array} \right.\end{split}\]

These are avoid of singularities, except at \(i = \pi\), in which case the retrogade version of the elements is to be used.

Note

In pykep` the convention \(a<0\) for hyperbolas is enforced. The user will thus not be able to instantiate orbital elements where \(a(1-e) < 0\)

A number of functions are provided to convert to and from the various orbital parameters.


class pykep.el_type#

Members:

KEP_M : Keplerian Elements \([a,e,i,\Omega,\omega,M]\) (Mean anomaly)

KEP_F : Keplerian Elements \([a,e,i,\Omega,\omega,f]\) (True anomaly)

MEQ : Modified Equinoctial Elements \([p,f,g,h,k,L]\) (Mean Longitude)

MEQ_R : Modified Equinoctial Elements (retrograde) \([p,f,g,h,k,L]\) (Mean Longitude)

POSVEL : Position and Velocity

pykep.ic2par()#
pykep.par2ic()#
pykep.ic2eq()#
pykep.eq2ic()#
pykep.eq2par()#
pykep.par2eq()#