Orekit is a free low level space dynamics library written in Java. It provides basic elements (orbits, dates, attitude, frames) and various algorithms to handle them (conversions, analytical and numerical propagation, pointing, etc.).

Orekit main features are:

  • Time: high accuracy absolute dates, time scales, transparent handling of leap seconds
  • Geometry : frames hierarchy supporting fixed and time-dependent (or telemetry-dependent) frames
  • Spacecraft state: cartesian, elliptical keplerian, circular and equinoctial parameters, Two-Lines Elements, transparent conversion between all parameters, attitude state and derivative, mass management
  • Propagation: analytical propagation models, semi-analytical propagator (DSST), numerical propagators with customisable force models
  •  Tabulated ephemerides (file based, memory based, integration based)
  • Handling of discrete events during integration
  • Extensible attitude evolution models and predefined laws
  • Customizable data loading from local disk, classpath and network

Orekit has already been successfully used during the real time monitoring of the rendezvous phase between the Automated Transfer Vehicle (ATV) and the International Space Station (ISS) by the Centre National d’Études Spatiales (CNES, the French space agency) and ESA.

CS GROUP – ROMANIA implemented the DSST (Draper Semi-analytical Satellite Theory) orbit and attitude propagator in OREKIT open-source flight dynamics library, as a project funded by European Space Agency (ESA), a proposal to ESA ITT A07169 – 1st call for outline proposals under the Romanian industry incentive scheme.

Semi-analytic propagators compute the orbital state as the sum of two different parts. One part has very slow dynamics while the other part corresponds to fast variations. The slowly varying part is akin to a centered or mean model including secular and long period terms, its rate of change is long with respect to the orbital period and it can be numerically integrated with very long steps (several orbits per step). The fast varying part is akin to short period terms that correspond to the difference between mean and osculating parameters. These terms are either computed analytically or represented as Fourier series. Fast computation is achieved because numerical integration can be done with long steps and short period terms are closed-form evaluations. High accuracy is achieved because the averaging and variations computation can be done for a wide range of perturbation types and only the zero-mean part of these perturbations needs to be handled (the non-zero-mean part being handled in the numerical integration).