Enum IERSConventions

    • Enum Constant Detail

      • IERS_1996

        public static final IERSConventions IERS_1996
        Constant for IERS 1996 conventions.
      • IERS_2003

        public static final IERSConventions IERS_2003
        Constant for IERS 2003 conventions.
      • IERS_2010

        public static final IERSConventions IERS_2010
        Constant for IERS 2010 conventions.
    • Method Detail

      • values

        public static IERSConventions[] values()
        Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
        for (IERSConventions c : IERSConventions.values())
            System.out.println(c);
        
        Returns:
        an array containing the constants of this enum type, in the order they are declared
      • valueOf

        public static IERSConventions valueOf​(String name)
        Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
        Parameters:
        name - the name of the enum constant to be returned.
        Returns:
        the enum constant with the specified name
        Throws:
        IllegalArgumentException - if this enum type has no constant with the specified name
        NullPointerException - if the argument is null
      • getNutationReferenceEpoch

        public AbsoluteDate getNutationReferenceEpoch​(TimeScales timeScales)
        Get the reference epoch for fundamental nutation arguments.
        Parameters:
        timeScales - to use for the reference epoch.
        Returns:
        reference epoch for fundamental nutation arguments
        Since:
        10.1
      • evaluateTC

        public double evaluateTC​(AbsoluteDate date,
                                 TimeScales timeScales)
        Evaluate the date offset between the current date and the reference date.
        Parameters:
        date - current date
        timeScales - used in the evaluation.
        Returns:
        date offset in Julian centuries
        Since:
        10.1
      • evaluateTC

        public <T extends CalculusFieldElement<T>> T evaluateTC​(FieldAbsoluteDate<T> date,
                                                                TimeScales timeScales)
        Evaluate the date offset between the current date and the reference date.
        Type Parameters:
        T - type of the field elements
        Parameters:
        date - current date
        timeScales - used in the evaluation.
        Returns:
        date offset in Julian centuries
        Since:
        10.1
      • getNutationArguments

        public abstract FundamentalNutationArguments getNutationArguments​(TimeScale timeScale,
                                                                          TimeScales timeScales)
        Get the fundamental nutation arguments.
        Parameters:
        timeScale - time scale for computing Greenwich Mean Sidereal Time (typically UT1)
        timeScales - other time scales used in the computation including TAI and TT.
        Returns:
        fundamental nutation arguments
        Since:
        10.1
      • getMeanObliquityFunction

        public abstract TimeScalarFunction getMeanObliquityFunction​(TimeScales timeScales)
        Get the function computing mean obliquity of the ecliptic.
        Parameters:
        timeScales - used in computing the function.
        Returns:
        function computing mean obliquity of the ecliptic
        Since:
        10.1
      • getXYSpXY2Function

        @DefaultDataContext
        public TimeVectorFunction getXYSpXY2Function()
        Get the function computing the Celestial Intermediate Pole and Celestial Intermediate Origin components.

        The returned function computes the two X, Y components of CIP and the S+XY/2 component of the non-rotating CIO.

        This method uses the default data context.

        Returns:
        function computing the Celestial Intermediate Pole and Celestial Intermediate Origin components
        Since:
        6.1
        See Also:
        getXYSpXY2Function(TimeScales)
      • getXYSpXY2Function

        public abstract TimeVectorFunction getXYSpXY2Function​(TimeScales timeScales)
        Get the function computing the Celestial Intermediate Pole and Celestial Intermediate Origin components.

        The returned function computes the two X, Y components of CIP and the S+XY/2 component of the non-rotating CIO.

        Parameters:
        timeScales - used to define the function.
        Returns:
        function computing the Celestial Intermediate Pole and Celestial Intermediate Origin components
        Since:
        10.1
      • getEarthOrientationAngleFunction

        @DefaultDataContext
        public TimeScalarFunction getEarthOrientationAngleFunction​(TimeScale ut1)
        Get the function computing the raw Earth Orientation Angle.

        This method uses the default data context.

        The raw angle does not contain any correction. If for example dTU1 correction due to tidal effect is desired, it must be added afterward by the caller. The returned value contain the angle as the value and the angular rate as the first derivative.

        Parameters:
        ut1 - UT1 time scale
        Returns:
        function computing the rawEarth Orientation Angle, in the non-rotating origin paradigm
        Since:
        6.1
        See Also:
        getEarthOrientationAngleFunction(TimeScale, TimeScale)
      • getEarthOrientationAngleFunction

        public TimeScalarFunction getEarthOrientationAngleFunction​(TimeScale ut1,
                                                                   TimeScale tai)
        Get the function computing the raw Earth Orientation Angle.

        The raw angle does not contain any correction. If for example dTU1 correction due to tidal effect is desired, it must be added afterward by the caller. The returned value contain the angle as the value and the angular rate as the first derivative.

        Parameters:
        ut1 - UT1 time scale
        tai - TAI time scale
        Returns:
        function computing the rawEarth Orientation Angle, in the non-rotating origin paradigm
        Since:
        10.1
      • getPrecessionFunction

        public abstract TimeVectorFunction getPrecessionFunction​(TimeScales timeScales)
        Get the function computing the precession angles.

        The function returned computes the three precession angles ψA (around Z axis), ωA (around X axis) and χA (around Z axis). The constant angle ε₀ for the fourth rotation (around X axis) can be retrieved by evaluating the function returned by getMeanObliquityFunction() at nutation reference epoch.

        Parameters:
        timeScales - used to define the function.
        Returns:
        function computing the precession angle
        Since:
        10.1
      • getNutationFunction

        @DefaultDataContext
        public TimeVectorFunction getNutationFunction()
        Get the function computing the nutation angles.

        This method uses the default data context.

        The function returned computes the two classical angles ΔΨ and Δε, and the correction to the equation of equinoxes introduced since 1997-02-27 by IAU 1994 resolution C7 (the correction is forced to 0 before this date)

        Returns:
        function computing the nutation in longitude ΔΨ and Δε and the correction of equation of equinoxes
        Since:
        6.1
      • getNutationFunction

        public abstract TimeVectorFunction getNutationFunction​(TimeScales timeScales)
        Get the function computing the nutation angles.

        The function returned computes the two classical angles ΔΨ and Δε, and the correction to the equation of equinoxes introduced since 1997-02-27 by IAU 1994 resolution C7 (the correction is forced to 0 before this date)

        Parameters:
        timeScales - used in the computation including TAI and TT.
        Returns:
        function computing the nutation in longitude ΔΨ and Δε and the correction of equation of equinoxes
        Since:
        10.1
      • getGMSTFunction

        public abstract TimeScalarFunction getGMSTFunction​(TimeScale ut1,
                                                           TimeScales timeScales)
        Get the function computing Greenwich mean sidereal time, in radians.
        Parameters:
        ut1 - UT1 time scale
        timeScales - other time scales used in the computation including TAI and TT.
        Returns:
        function computing Greenwich mean sidereal time
        Since:
        10.1
      • getGMSTRateFunction

        public abstract TimeScalarFunction getGMSTRateFunction​(TimeScale ut1,
                                                               TimeScales timeScales)
        Get the function computing Greenwich mean sidereal time rate, in radians per second.
        Parameters:
        ut1 - UT1 time scale
        timeScales - other time scales used in the computation including TAI and TT.
        Returns:
        function computing Greenwich mean sidereal time rate
        Since:
        10.1
      • getGASTFunction

        public abstract TimeScalarFunction getGASTFunction​(TimeScale ut1,
                                                           EOPHistory eopHistory,
                                                           TimeScales timeScales)
        Get the function computing Greenwich apparent sidereal time, in radians.
        Parameters:
        ut1 - UT1 time scale
        eopHistory - EOP history. If null then no nutation correction is applied for EOP.
        timeScales - TAI time scale.
        Returns:
        function computing Greenwich apparent sidereal time
        Since:
        10.1
      • getEOPTidalCorrection

        public abstract TimeVectorFunction getEOPTidalCorrection​(TimeScales timeScales)
        Get the function computing tidal corrections for Earth Orientation Parameters.
        Parameters:
        timeScales - used in the computation. The TT and TAI scales are used.
        Returns:
        function computing tidal corrections for Earth Orientation Parameters, for xp, yp, ut1 and lod respectively
        Since:
        10.1
      • getLoveNumbers

        public abstract LoveNumbers getLoveNumbers()
        Get the Love numbers.
        Returns:
        Love numbers
        Since:
        6.1
      • getTideFrequencyDependenceFunction

        public abstract TimeVectorFunction getTideFrequencyDependenceFunction​(TimeScale ut1,
                                                                              TimeScales timeScales)
        Get the function computing frequency dependent terms (ΔC₂₀, ΔC₂₁, ΔS₂₁, ΔC₂₂, ΔS₂₂).
        Parameters:
        ut1 - UT1 time scale
        timeScales - other time scales used in the computation including TAI and TT.
        Returns:
        frequency dependence model for tides computation (ΔC₂₀, ΔC₂₁, ΔS₂₁, ΔC₂₂, ΔS₂₂).
        Since:
        10.1
      • getPermanentTide

        public abstract double getPermanentTide()
        Get the permanent tide to be removed from ΔC₂₀ when zero-tide potentials are used.
        Returns:
        permanent tide to remove
      • getSolidPoleTide

        public abstract TimeVectorFunction getSolidPoleTide​(EOPHistory eopHistory)
        Get the function computing solid pole tide (ΔC₂₁, ΔS₂₁).
        Parameters:
        eopHistory - EOP history
        Returns:
        model for solid pole tide (ΔC₂₀, ΔC₂₁, ΔS₂₁, ΔC₂₂, ΔS₂₂).
        Since:
        6.1
      • getOceanPoleTide

        public abstract TimeVectorFunction getOceanPoleTide​(EOPHistory eopHistory)
        Get the function computing ocean pole tide (ΔC₂₁, ΔS₂₁).
        Parameters:
        eopHistory - EOP history
        Returns:
        model for ocean pole tide (ΔC₂₀, ΔC₂₁, ΔS₂₁, ΔC₂₂, ΔS₂₂).
        Since:
        6.1
      • getNominalTidalDisplacement

        public abstract double[] getNominalTidalDisplacement()
        Get the nominal values of the displacement numbers.
        Returns:
        an array containing h⁽⁰⁾, h⁽²⁾, h₃, hI diurnal, hI semi-diurnal, l⁽⁰⁾, l⁽¹⁾ diurnal, l⁽¹⁾ semi-diurnal, l⁽²⁾, l₃, lI diurnal, lI semi-diurnal, H₀ permanent deformation amplitude
        Since:
        9.1
      • getTidalDisplacementFrequencyCorrectionDiurnal

        public abstract PoissonSeries.CompiledSeries getTidalDisplacementFrequencyCorrectionDiurnal()
        Get the correction function for tidal displacement for diurnal tides.
        • f[0]: radial correction, longitude cosine part
        • f[1]: radial correction, longitude sine part
        • f[2]: North correction, longitude cosine part
        • f[3]: North correction, longitude sine part
        • f[4]: East correction, longitude cosine part
        • f[5]: East correction, longitude sine part
        Returns:
        correction function for tidal displacement
        Since:
        9.1
      • getTidalDisplacementFrequencyCorrectionDiurnal

        protected static PoissonSeries.CompiledSeries getTidalDisplacementFrequencyCorrectionDiurnal​(String tableName,
                                                                                                     int cols,
                                                                                                     int rIp,
                                                                                                     int rOp,
                                                                                                     int tIp,
                                                                                                     int tOp)
        Get the correction function for tidal displacement for diurnal tides.
        • f[0]: radial correction, longitude cosine part
        • f[1]: radial correction, longitude sine part
        • f[2]: North correction, longitude cosine part
        • f[3]: North correction, longitude sine part
        • f[4]: East correction, longitude cosine part
        • f[5]: East correction, longitude sine part
        Parameters:
        tableName - name for the diurnal tides table
        cols - total number of columns of the diurnal tides table
        rIp - column holding ∆Rf(ip) in the diurnal tides table, counting from 1
        rOp - column holding ∆Rf(op) in the diurnal tides table, counting from 1
        tIp - column holding ∆Tf(ip) in the diurnal tides table, counting from 1
        tOp - column holding ∆Tf(op) in the diurnal tides table, counting from 1
        Returns:
        correction function for tidal displacement for diurnal tides
        Since:
        9.1
      • getTidalDisplacementFrequencyCorrectionZonal

        public abstract PoissonSeries.CompiledSeries getTidalDisplacementFrequencyCorrectionZonal()
        Get the correction function for tidal displacement for zonal tides.
        • f[0]: radial correction
        • f[1]: North correction
        Returns:
        correction function for tidal displacement
        Since:
        9.1
      • getTidalDisplacementFrequencyCorrectionZonal

        protected static PoissonSeries.CompiledSeries getTidalDisplacementFrequencyCorrectionZonal​(String tableName,
                                                                                                   int cols,
                                                                                                   int rIp,
                                                                                                   int rOp,
                                                                                                   int tIp,
                                                                                                   int tOp)
        Get the correction function for tidal displacement for zonal tides.
        • f[0]: radial correction
        • f[1]: North correction
        Parameters:
        tableName - name for the zonal tides table
        cols - total number of columns of the table
        rIp - column holding ∆Rf(ip) in the table, counting from 1
        rOp - column holding ∆Rf(op) in the table, counting from 1
        tIp - column holding ∆Tf(ip) in the table, counting from 1
        tOp - column holding ∆Tf(op) in the table, counting from 1
        Returns:
        correction function for tidal displacement for zonal tides
        Since:
        9.1
      • getNutationCorrectionConverter

        public IERSConventions.NutationCorrectionConverter getNutationCorrectionConverter​(TimeScales timeScales)
        Create a function converting nutation corrections between δX/δY and δΔψ/δΔε.
        • δX/δY nutation corrections are used with the Non-Rotating Origin paradigm.
        • δΔψ/δΔε nutation corrections are used with the equinox-based paradigm.
        Parameters:
        timeScales - used to define the conversion.
        Returns:
        a new converter
        Since:
        10.1
      • loadLoveNumbers

        protected LoveNumbers loadLoveNumbers​(String nameLove)
        Load the Love numbers.
        Parameters:
        nameLove - name of the Love number resource
        Returns:
        Love numbers