Package org.orekit.time

This independent package provides classes to handle epochs, time scales, and to compare instants together.

The principal class is AbsoluteDate which represents a unique instant in time, with no ambiguity. For that purpose, the ways to define this object are quite strict.

The easiest and most evident way is to define an instant with an offset from another one. Orekit defines 9 reference epochs. The first 6 are commonly used in the space community, the seventh one is commonly used in the computer science field and the last two are convenient for initialization in min/max research loops:

The second definition, which could be the source of some confusion if not used with care, is by giving a location (a date) in a specific time scale. It is of prime importance to understand the various available time scales definitions to avoid mistakes. Orekit provides 9 of the most important ones:

  • TAIScale: International Atomic Time,
  • TTScale: Terrestrial Time as defined by IAU(1991) recommendation IV. Coordinate time at the surface of the Earth. It is the successor of Ephemeris Time TE. By convention, TT = TAI + 32.184 s,
  • UTCScale: Coordinated Universal Time. UTC is related to TAI using step adjustments from time to time according to IERS (International Earth Rotation Service) rules. These adjustments require introduction of leap seconds. Some leaps are already known and predefined in the library (at least from 1972-01-01 to 2009-01-01) and other ones can be supported by providing UTC-TAI.history files using the data loading mechanism provided by DataProvidersManager,
  • UT1Scale: Universal Time 1. UT1 is a time scale directly linked to the actual rotation of the Earth. It is an irregular scale, reflecting Earth irregular rotation rate. The offset between UT1 and UTCScale is found in the Earth Orientation Parameters published by IERS,
  • TCGScale: Geocentric Coordinate Time. Coordinate time at the center of mass of the Earth. This time scale depends linearly on TTScale,
  • TDBScale: Barycentric Dynamic Time. Time used to compute ephemerides in the solar system. This time is offset with respect to TT by small relativistic corrections due to Earth motion,
  • TCBScale: Barycentric Coordinate Time. Coordinate time used for computations in the solar system. This time scale depends linearly on TDBScale,
  • GPSScale: Global Positioning System reference scale. This scale was equal to UTC at start of the GPS Epoch when it was 19 seconds behind TAI, and remained parallel to TAI since then (i.e. UTC is now offset from GPS due to leap seconds). TGPS = TAI - 19 s,
  • GMSTScale: Greenwich Mean Sidereal Time scale. The Greenwich Mean Sidereal Time is the hour angle between the meridian of Greenwich and mean equinox of date at 0h UT1.

Once it is built, an AbsoluteDate can be compared to other ones, and expressed in other time scales. It is used to define states, orbits, frames... Classes that include a date implement the TimeStamped interface. The ChronologicalComparator singleton can sort objects implementing this interface chronologically.

L. Maisonobe