Class EOPHistory

  • All Implemented Interfaces:
    Serializable

    public class EOPHistory
    extends Object
    implements Serializable
    This class loads any kind of Earth Orientation Parameter data throughout a large time range.
    Author:
    Pascal Parraud
    See Also:
    Serialized Form
    • Constructor Detail

      • EOPHistory

        protected EOPHistory​(IERSConventions conventions,
                             Collection<EOPEntry> data,
                             boolean simpleEOP)
        Simple constructor.
        Parameters:
        conventions - IERS conventions to which EOP refers
        data - the EOP data to use
        simpleEOP - if true, tidal effects are ignored when interpolating EOP
    • Method Detail

      • getNonInterpolatingEOPHistory

        public EOPHistory getNonInterpolatingEOPHistory()
        Get non-interpolating version of the instance.
        Returns:
        non-interpolatig version of the instance
      • usesInterpolation

        public boolean usesInterpolation()
        Check if the instance uses interpolation on tidal corrections.
        Returns:
        true if the instance uses interpolation on tidal corrections
      • getConventions

        public IERSConventions getConventions()
        Get the IERS conventions to which these EOP apply.
        Returns:
        IERS conventions to which these EOP apply
      • getStartDate

        public AbsoluteDate getStartDate()
        Get the date of the first available Earth Orientation Parameters.
        Returns:
        the start date of the available data
      • getEndDate

        public AbsoluteDate getEndDate()
        Get the date of the last available Earth Orientation Parameters.
        Returns:
        the end date of the available data
      • getUT1MinusUTC

        public double getUT1MinusUTC​(AbsoluteDate date)
        Get the UT1-UTC value.

        The data provided comes from the IERS files. It is smoothed data.

        Parameters:
        date - date at which the value is desired
        Returns:
        UT1-UTC in seconds (0 if date is outside covered range)
      • getUT1MinusUTC

        public <T extends org.hipparchus.RealFieldElement<T>> T getUT1MinusUTC​(FieldAbsoluteDate<T> date)
        Get the UT1-UTC value.

        The data provided comes from the IERS files. It is smoothed data.

        Type Parameters:
        T - type of the field elements
        Parameters:
        date - date at which the value is desired
        Returns:
        UT1-UTC in seconds (0 if date is outside covered range)
        Since:
        9.0
      • getNeighbors

        protected Stream<EOPEntry> getNeighbors​(AbsoluteDate central)
        Get the entries surrounding a central date.

        See hasDataFor(AbsoluteDate) to determine if the cache has data for central without throwing an exception.

        Parameters:
        central - central date
        Returns:
        array of cached entries surrounding specified date
      • getLOD

        public double getLOD​(AbsoluteDate date)
        Get the LoD (Length of Day) value.

        The data provided comes from the IERS files. It is smoothed data.

        Parameters:
        date - date at which the value is desired
        Returns:
        LoD in seconds (0 if date is outside covered range)
      • getLOD

        public <T extends org.hipparchus.RealFieldElement<T>> T getLOD​(FieldAbsoluteDate<T> date)
        Get the LoD (Length of Day) value.

        The data provided comes from the IERS files. It is smoothed data.

        Type Parameters:
        T - type of the filed elements
        Parameters:
        date - date at which the value is desired
        Returns:
        LoD in seconds (0 if date is outside covered range)
        Since:
        9.0
      • getPoleCorrection

        public PoleCorrection getPoleCorrection​(AbsoluteDate date)
        Get the pole IERS Reference Pole correction.

        The data provided comes from the IERS files. It is smoothed data.

        Parameters:
        date - date at which the correction is desired
        Returns:
        pole correction (PoleCorrection.NULL_CORRECTION if date is outside covered range)
      • getPoleCorrection

        public <T extends org.hipparchus.RealFieldElement<T>> FieldPoleCorrection<T> getPoleCorrection​(FieldAbsoluteDate<T> date)
        Get the pole IERS Reference Pole correction.

        The data provided comes from the IERS files. It is smoothed data.

        Type Parameters:
        T - type of the field elements
        Parameters:
        date - date at which the correction is desired
        Returns:
        pole correction (PoleCorrection.NULL_CORRECTION if date is outside covered range)
      • getEquinoxNutationCorrection

        public double[] getEquinoxNutationCorrection​(AbsoluteDate date)
        Get the correction to the nutation parameters for equinox-based paradigm.

        The data provided comes from the IERS files. It is smoothed data.

        Parameters:
        date - date at which the correction is desired
        Returns:
        nutation correction in longitude ΔΨ and in obliquity Δε (zero if date is outside covered range)
      • getEquinoxNutationCorrection

        public <T extends org.hipparchus.RealFieldElement<T>> T[] getEquinoxNutationCorrection​(FieldAbsoluteDate<T> date)
        Get the correction to the nutation parameters for equinox-based paradigm.

        The data provided comes from the IERS files. It is smoothed data.

        Type Parameters:
        T - type of the field elements
        Parameters:
        date - date at which the correction is desired
        Returns:
        nutation correction in longitude ΔΨ and in obliquity Δε (zero if date is outside covered range)
      • getNonRotatinOriginNutationCorrection

        public double[] getNonRotatinOriginNutationCorrection​(AbsoluteDate date)
        Get the correction to the nutation parameters for Non-Rotating Origin paradigm.

        The data provided comes from the IERS files. It is smoothed data.

        Parameters:
        date - date at which the correction is desired
        Returns:
        nutation correction in Celestial Intermediat Pole coordinates δX and δY (zero if date is outside covered range)
      • getNonRotatinOriginNutationCorrection

        public <T extends org.hipparchus.RealFieldElement<T>> T[] getNonRotatinOriginNutationCorrection​(FieldAbsoluteDate<T> date)
        Get the correction to the nutation parameters for Non-Rotating Origin paradigm.

        The data provided comes from the IERS files. It is smoothed data.

        Type Parameters:
        T - type of the filed elements
        Parameters:
        date - date at which the correction is desired
        Returns:
        nutation correction in Celestial Intermediat Pole coordinates δX and δY (zero if date is outside covered range)
      • getITRFVersion

        public ITRFVersion getITRFVersion​(AbsoluteDate date)
        Get the ITRF version.
        Parameters:
        date - date at which the value is desired
        Returns:
        ITRF version of the EOP covering the specified date
        Since:
        9.2
      • checkEOPContinuity

        public void checkEOPContinuity​(double maxGap)
        Check Earth orientation parameters continuity.
        Parameters:
        maxGap - maximal allowed gap between entries (in seconds)
      • hasDataFor

        protected boolean hasDataFor​(AbsoluteDate date)
        Check if the cache has data for the given date using getStartDate() and getEndDate().
        Parameters:
        date - the requested date
        Returns:
        true if the cache has data for the requested date, false otherwise.