Interface Frames

  • All Known Implementing Classes:
    AbstractFrames, LazyLoadedFrames

    public interface Frames
    A collection of commonly used Frames. This interface defines methods for obtaining instances of many commonly used reference frames.
    Since:
    10.0
    Author:
    Guylaine Prat, Luc Maisonobe, Pascal Parraud, Evan Ward
    See Also:
    FramesFactory
    • Method Detail

      • getEOPHistory

        EOPHistory getEOPHistory​(IERSConventions conventions,
                                 boolean simpleEOP)
        Get Earth Orientation Parameters history.
        Parameters:
        conventions - conventions for which EOP history is requested
        simpleEOP - if true, tidal effects are ignored when interpolating EOP
        Returns:
        Earth Orientation Parameters history
      • getFrame

        Frame getFrame​(Predefined factoryKey)
        Get one of the predefined frames.
        Parameters:
        factoryKey - key of the frame within the factory
        Returns:
        the predefined frame
      • getGCRF

        Frame getGCRF()
        Get the unique GCRF frame.

        The GCRF frame is the root frame in the frame tree.

        Returns:
        the unique instance of the GCRF frame
      • getICRF

        Frame getICRF()
        Get the unique ICRF frame.

        The ICRF frame is centered at solar system barycenter and aligned with GCRF.

        Returns:
        the unique instance of the ICRF frame
      • getEcliptic

        Frame getEcliptic​(IERSConventions conventions)
        Get the ecliptic frame. The IAU defines the ecliptic as "the plane perpendicular to the mean heliocentric orbital angular momentum vector of the Earth-Moon barycentre in the BCRS (IAU 2006 Resolution B1)." The +z axis is aligned with the angular momentum vector, and the +x axis is aligned with +x axis of MOD.

        This implementation agrees with the JPL 406 ephemerides to within 0.5 arc seconds.

        Parameters:
        conventions - IERS conventions to apply
        Returns:
        the selected reference frame singleton.
      • getEME2000

        FactoryManagedFrame getEME2000()
        Get the unique EME2000 frame.

        The EME2000 frame is also called the J2000 frame. The former denomination is preferred in Orekit.

        Returns:
        the unique instance of the EME2000 frame
      • getTIRF

        FactoryManagedFrame getTIRF​(IERSConventions conventions)
        Get the TIRF reference frame, ignoring tidal effects.
        Parameters:
        conventions - IERS conventions to apply
        Returns:
        the selected reference frame singleton. library cannot be read.
      • getITRF

        VersionedITRF getITRF​(ITRFVersion version,
                              IERSConventions conventions,
                              boolean simpleEOP)
        Get an specific International Terrestrial Reference Frame.

        Note that if a specific version of ITRF is required, then simpleEOP should most probably be set to false, as ignoring tidal effects has an effect of the same order of magnitude as the differences between the various ITRF versions.

        Parameters:
        version - ITRF version
        conventions - IERS conventions to apply
        simpleEOP - if true, tidal effects are ignored when interpolating EOP
        Returns:
        the selected reference frame singleton.
        Since:
        9.2
      • buildUncachedITRF

        Frame buildUncachedITRF​(UT1Scale ut1)
        Build an uncached International Terrestrial Reference Frame with specific EOP history.

        This frame and its parent frames (TIRF and CIRF) will not be cached, they are rebuilt from scratch each time this method is called. This factory method is intended to be used when EOP history is changed at run time. For regular ITRF use, the getITRF(IERSConventions, boolean) and {link getITRF(ITRFVersion, IERSConventions, boolean) are more suitable.

        Parameters:
        ut1 - UT1 time scale (contains the EOP history)
        Returns:
        an ITRF frame with specified time scale and embedded EOP history
        Since:
        12.0
      • getTIRF

        FactoryManagedFrame getTIRF​(IERSConventions conventions,
                                    boolean simpleEOP)
        Get the TIRF reference frame.
        Parameters:
        conventions - IERS conventions to apply
        simpleEOP - if true, tidal effects are ignored when interpolating EOP
        Returns:
        the selected reference frame singleton.
        Since:
        6.1
      • getCIRF

        FactoryManagedFrame getCIRF​(IERSConventions conventions,
                                    boolean simpleEOP)
        Get the CIRF2000 reference frame.
        Parameters:
        conventions - IERS conventions to apply
        simpleEOP - if true, tidal effects are ignored when interpolating EOP
        Returns:
        the selected reference frame singleton.
      • getVeis1950

        FactoryManagedFrame getVeis1950()
        Get the VEIS 1950 reference frame.

        Its parent frame is the GTOD frame with IERS 1996 conventions without EOP corrections.

        Returns:
        the selected reference frame singleton.
      • getITRFEquinox

        FactoryManagedFrame getITRFEquinox​(IERSConventions conventions,
                                           boolean simpleEOP)
        Get the equinox-based ITRF reference frame.
        Parameters:
        conventions - IERS conventions to apply
        simpleEOP - if true, tidal effects are ignored when interpolating EOP
        Returns:
        the selected reference frame singleton.
        Since:
        6.1
      • getGTOD

        FactoryManagedFrame getGTOD​(boolean applyEOPCorr)
        Get the GTOD reference frame.

        The applyEOPCorr parameter is available mainly for testing purposes or for consistency with legacy software that don't handle EOP correction parameters. Beware that setting this parameter to false leads to crude accuracy (order of magnitudes for errors might be above 250m in LEO and 1400m in GEO). For this reason, setting this parameter to false is restricted to IERS 1996 conventions, and hence the IERS conventions cannot be freely chosen here.

        Parameters:
        applyEOPCorr - if true, EOP corrections are applied (here, dut1 and lod)
        Returns:
        the selected reference frame singleton.
      • getGTOD

        FactoryManagedFrame getGTOD​(IERSConventions conventions,
                                    boolean simpleEOP)
        Get the GTOD reference frame.
        Parameters:
        conventions - IERS conventions to apply
        simpleEOP - if true, tidal effects are ignored when interpolating EOP
        Returns:
        the selected reference frame singleton.
      • getTOD

        FactoryManagedFrame getTOD​(boolean applyEOPCorr)
        Get the TOD reference frame.

        The applyEOPCorr parameter is available mainly for testing purposes or for consistency with legacy software that don't handle EOP correction parameters. Beware that setting this parameter to false leads to crude accuracy (order of magnitudes for errors might be above 1m in LEO and 10m in GEO). For this reason, setting this parameter to false is restricted to IERS 1996 conventions, and hence the IERS conventions cannot be freely chosen here.

        Parameters:
        applyEOPCorr - if true, EOP corrections are applied (here, nutation)
        Returns:
        the selected reference frame singleton.
      • getTOD

        FactoryManagedFrame getTOD​(IERSConventions conventions,
                                   boolean simpleEOP)
        Get the TOD reference frame.
        Parameters:
        conventions - IERS conventions to apply
        simpleEOP - if true, tidal effects are ignored when interpolating EOP
        Returns:
        the selected reference frame singleton.
      • getMOD

        FactoryManagedFrame getMOD​(boolean applyEOPCorr)
        Get the MOD reference frame.

        The applyEOPCorr parameter is available mainly for testing purposes or for consistency with legacy software that don't handle EOP correction parameters. Beware that setting this parameter to false leads to crude accuracy (order of magnitudes for errors might be above 1m in LEO and 10m in GEO). For this reason, setting this parameter to false is restricted to IERS 1996 conventions, and hence the IERS conventions cannot be freely chosen here.

        Parameters:
        applyEOPCorr - if true, EOP corrections are applied (EME2000/GCRF bias compensation)
        Returns:
        the selected reference frame singleton.
      • getMOD

        FactoryManagedFrame getMOD​(IERSConventions conventions)
        Get the MOD reference frame.
        Parameters:
        conventions - IERS conventions to apply
        Returns:
        the selected reference frame singleton.
      • getTEME

        FactoryManagedFrame getTEME()
        Get the TEME reference frame.

        The TEME frame is used for the SGP4 model in TLE propagation. This frame has no official definition and there are some ambiguities about whether it should be used as "of date" or "of epoch". This frame should therefore be used only for TLE propagation and not for anything else, as recommended by the CCSDS Orbit Data Message blue book.

        Returns:
        the selected reference frame singleton.
      • getPZ9011

        FactoryManagedFrame getPZ9011​(IERSConventions convention,
                                      boolean simpleEOP)
        Get the PZ-90.11 (Parametry Zemly – 1990.11) reference frame.

        The PZ-90.11 reference system was updated on all operational GLONASS satellites starting from 3:00 pm on December 31, 2013.

        The transition between parent frame (ITRF-2008) and PZ-90.11 frame is performed using a seven parameters Helmert transformation.

            From       To      ΔX(m)   ΔY(m)   ΔZ(m)   RX(mas)   RY(mas)  RZ(mas)   Epoch
         ITRF-2008  PZ-90.11  +0.003  +0.001  -0.000   +0.019    -0.042   +0.002     2010
         
        Parameters:
        convention - IERS conventions to apply
        simpleEOP - if true, tidal effects are ignored when interpolating EOP
        Returns:
        the selected reference frame singleton.
        See Also:
        "Springer Handbook of Global Navigation Satellite Systems, Peter Teunissen & Oliver Montenbruck"
      • of

        static Frames of​(TimeScales timeScales,
                         CelestialBodies celestialBodies)
        Create a set of frames from the given data.
        Parameters:
        timeScales - used to build the frames as well as the EOP data set.
        celestialBodies - used to get getICRF() which is the inertial frame of the solar system barycenter.
        Returns:
        a set of reference frame constructed from the given data.
        See Also:
        of(TimeScales, Supplier)
      • of

        static Frames of​(TimeScales timeScales,
                         Supplier<Frame> icrfSupplier)
        Create a set of frames from the given data.
        Parameters:
        timeScales - used to build the frames as well as the EOP data set.
        icrfSupplier - used to get getICRF(). For example, celestialBodies.getSolarSystemBarycenter().getInertiallyOrientedFrame()
        Returns:
        a set of reference frame constructed from the given data.
        See Also:
        CelestialBodies, TimeScales.of(Collection, BiFunction)