Enum IERSConventions
- java.lang.Object
-
- java.lang.Enum<IERSConventions>
-
- org.orekit.utils.IERSConventions
-
- All Implemented Interfaces:
Serializable
,Comparable<IERSConventions>
public enum IERSConventions extends Enum<IERSConventions>
Supported IERS conventions.- Since:
- 6.0
- Author:
- Luc Maisonobe
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
IERSConventions.NutationCorrectionConverter
Interface for functions converting nutation corrections between δΔψ/δΔε to δX/δY.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description double
evaluateTC(AbsoluteDate date)
Evaluate the date offset between the current date and thereference date
.<T extends org.hipparchus.RealFieldElement<T>>
TevaluateTC(FieldAbsoluteDate<T> date)
Evaluate the date offset between the current date and thereference date
.TimeScalarFunction
getEarthOrientationAngleFunction(TimeScale ut1)
Get the function computing the raw Earth Orientation Angle.abstract TimeVectorFunction
getEOPTidalCorrection()
Get the function computing tidal corrections for Earth Orientation Parameters.abstract TimeScalarFunction
getGASTFunction(TimeScale ut1, EOPHistory eopHistory)
Get the function computing Greenwich apparent sidereal time, in radians.abstract TimeScalarFunction
getGMSTFunction(TimeScale ut1)
Get the function computing Greenwich mean sidereal time, in radians.abstract TimeScalarFunction
getGMSTRateFunction(TimeScale ut1)
Get the function computing Greenwich mean sidereal time rate, in radians per second.abstract LoveNumbers
getLoveNumbers()
Get the Love numbers.abstract TimeScalarFunction
getMeanObliquityFunction()
Get the function computing mean obliquity of the ecliptic.abstract double[]
getNominalTidalDisplacement()
Get the nominal values of the displacement numbers.abstract FundamentalNutationArguments
getNutationArguments(TimeScale timeScale)
Get the fundamental nutation arguments.IERSConventions.NutationCorrectionConverter
getNutationCorrectionConverter()
Create a function converting nutation corrections between δX/δY and δΔψ/δΔε.abstract TimeVectorFunction
getNutationFunction()
Get the function computing the nutation angles.AbsoluteDate
getNutationReferenceEpoch()
Get the reference epoch for fundamental nutation arguments.abstract TimeVectorFunction
getOceanPoleTide(EOPHistory eopHistory)
Get the function computing ocean pole tide (ΔC₂₁, ΔS₂₁).abstract double
getPermanentTide()
Get the permanent tide to be removed from ΔC₂₀ when zero-tide potentials are used.abstract TimeVectorFunction
getPrecessionFunction()
Get the function computing the precession angles.abstract TimeVectorFunction
getSolidPoleTide(EOPHistory eopHistory)
Get the function computing solid pole tide (ΔC₂₁, ΔS₂₁).abstract PoissonSeries.CompiledSeries
getTidalDisplacementFrequencyCorrectionDiurnal()
Get the correction function for tidal displacement for diurnal tides.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.abstract PoissonSeries.CompiledSeries
getTidalDisplacementFrequencyCorrectionZonal()
Get the correction function for tidal displacement for zonal tides.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.abstract TimeVectorFunction
getTideFrequencyDependenceFunction(TimeScale ut1)
Get the function computing frequency dependent terms (ΔC₂₀, ΔC₂₁, ΔS₂₁, ΔC₂₂, ΔS₂₂).abstract TimeVectorFunction
getXYSpXY2Function()
Get the function computing the Celestial Intermediate Pole and Celestial Intermediate Origin components.protected LoveNumbers
loadLoveNumbers(String nameLove)
Load the Love numbers.static IERSConventions
valueOf(String name)
Returns the enum constant of this type with the specified name.static IERSConventions[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
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 nameNullPointerException
- if the argument is null
-
getNutationReferenceEpoch
public AbsoluteDate getNutationReferenceEpoch()
Get the reference epoch for fundamental nutation arguments.- Returns:
- reference epoch for fundamental nutation arguments
- Since:
- 6.1
-
evaluateTC
public double evaluateTC(AbsoluteDate date)
Evaluate the date offset between the current date and thereference date
.- Parameters:
date
- current date- Returns:
- date offset in Julian centuries
- Since:
- 6.1
-
evaluateTC
public <T extends org.hipparchus.RealFieldElement<T>> T evaluateTC(FieldAbsoluteDate<T> date)
Evaluate the date offset between the current date and thereference date
.- Type Parameters:
T
- type of the field elements- Parameters:
date
- current date- Returns:
- date offset in Julian centuries
- Since:
- 9.0
-
getNutationArguments
public abstract FundamentalNutationArguments getNutationArguments(TimeScale timeScale)
Get the fundamental nutation arguments.- Parameters:
timeScale
- time scale for computing Greenwich Mean Sidereal Time (typicallyUT1
)- Returns:
- fundamental nutation arguments
- Since:
- 6.1
-
getMeanObliquityFunction
public abstract TimeScalarFunction getMeanObliquityFunction()
Get the function computing mean obliquity of the ecliptic.- Returns:
- function computing mean obliquity of the ecliptic
- Since:
- 6.1
-
getXYSpXY2Function
public abstract 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.
- Returns:
- function computing the Celestial Intermediate Pole and Celestial Intermediate Origin components
- Since:
- 6.1
-
getEarthOrientationAngleFunction
public TimeScalarFunction getEarthOrientationAngleFunction(TimeScale ut1)
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- Returns:
- function computing the rawEarth Orientation Angle, in the non-rotating origin paradigm
- Since:
- 6.1
-
getPrecessionFunction
public abstract TimeVectorFunction getPrecessionFunction()
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()
atnutation reference epoch
.- Returns:
- function computing the precession angle
- Since:
- 6.1
-
getNutationFunction
public abstract TimeVectorFunction getNutationFunction()
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)
- Returns:
- function computing the nutation in longitude ΔΨ and Δε and the correction of equation of equinoxes
- Since:
- 6.1
-
getGMSTFunction
public abstract TimeScalarFunction getGMSTFunction(TimeScale ut1)
Get the function computing Greenwich mean sidereal time, in radians.- Parameters:
ut1
- UT1 time scale- Returns:
- function computing Greenwich mean sidereal time
- Since:
- 6.1
-
getGMSTRateFunction
public abstract TimeScalarFunction getGMSTRateFunction(TimeScale ut1)
Get the function computing Greenwich mean sidereal time rate, in radians per second.- Parameters:
ut1
- UT1 time scale- Returns:
- function computing Greenwich mean sidereal time rate
- Since:
- 9.0
-
getGASTFunction
public abstract TimeScalarFunction getGASTFunction(TimeScale ut1, EOPHistory eopHistory)
Get the function computing Greenwich apparent sidereal time, in radians.- Parameters:
ut1
- UT1 time scaleeopHistory
- EOP history- Returns:
- function computing Greenwich apparent sidereal time
- Since:
- 6.1
-
getEOPTidalCorrection
public abstract TimeVectorFunction getEOPTidalCorrection()
Get the function computing tidal corrections for Earth Orientation Parameters.- Returns:
- function computing tidal corrections for Earth Orientation Parameters, for xp, yp, ut1 and lod respectively
- Since:
- 6.1
-
getLoveNumbers
public abstract LoveNumbers getLoveNumbers()
Get the Love numbers.- Returns:
- Love numbers
- Since:
- 6.1
-
getTideFrequencyDependenceFunction
public abstract TimeVectorFunction getTideFrequencyDependenceFunction(TimeScale ut1)
Get the function computing frequency dependent terms (ΔC₂₀, ΔC₂₁, ΔS₂₁, ΔC₂₂, ΔS₂₂).- Parameters:
ut1
- UT1 time scale- Returns:
- frequency dependence model for tides computation (ΔC₂₀, ΔC₂₁, ΔS₂₁, ΔC₂₂, ΔS₂₂).
- Since:
- 6.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 tablecols
- total number of columns of the diurnal tides tablerIp
- column holding ∆Rf(ip) in the diurnal tides table, counting from 1rOp
- column holding ∆Rf(op) in the diurnal tides table, counting from 1tIp
- column holding ∆Tf(ip) in the diurnal tides table, counting from 1tOp
- 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 tablecols
- total number of columns of the tablerIp
- column holding ∆Rf(ip) in the table, counting from 1rOp
- column holding ∆Rf(op) in the table, counting from 1tIp
- column holding ∆Tf(ip) in the table, counting from 1tOp
- 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()
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.
- Returns:
- a new converter
- Since:
- 6.1
-
loadLoveNumbers
protected LoveNumbers loadLoveNumbers(String nameLove)
Load the Love numbers.- Parameters:
nameLove
- name of the Love number resource- Returns:
- Love numbers
-
-