Serializable
, TransformProvider
public class EstimatedEarthFrameProvider extends Object implements TransformProvider
This class adds parameters for an additional polar motion
and an additional prime meridian orientation on top of an underlying regular Earth
frame like ITRF
.
The polar motion and prime meridian orientation are applied after regular Earth
orientation parameters, so the value of the estimated parameters will be correction to EOP,
they will not be the complete EOP values by themselves. Basically, this means that for
Earth, the following transforms are applied in order, between inertial frame and this frame:
getPrimeMeridianOffsetDriver()
and getPrimeMeridianDriftDriver()
getPolarOffsetXDriver()
, getPolarDriftXDriver()
,
getPolarOffsetYDriver()
and getPolarDriftYDriver()
Modifier and Type | Field | Description |
---|---|---|
static double |
EARTH_ANGULAR_VELOCITY |
Earth Angular Velocity, in rad/s, from TIRF model.
|
Constructor | Description |
---|---|
EstimatedEarthFrameProvider(UT1Scale baseUT1) |
Build an estimated Earth frame.
|
Modifier and Type | Method | Description |
---|---|---|
UT1Scale |
getEstimatedUT1() |
Get the estimated UT1 time scale.
|
ParameterDriver |
getPolarDriftXDriver() |
Get a driver allowing to add a polar drift along X.
|
ParameterDriver |
getPolarDriftYDriver() |
Get a driver allowing to add a polar drift along Y.
|
ParameterDriver |
getPolarOffsetXDriver() |
Get a driver allowing to add a polar offset along X.
|
ParameterDriver |
getPolarOffsetYDriver() |
Get a driver allowing to add a polar offset along Y.
|
ParameterDriver |
getPrimeMeridianDriftDriver() |
Get a driver allowing to add a prime meridian rotation rate.
|
ParameterDriver |
getPrimeMeridianOffsetDriver() |
Get a driver allowing to add a prime meridian rotation.
|
Transform |
getTransform(AbsoluteDate date) |
Get the
Transform corresponding to specified date. |
FieldTransform<DerivativeStructure> |
getTransform(FieldAbsoluteDate<DerivativeStructure> date,
DSFactory factory,
Map<String,Integer> indices) |
Get the transform with derivatives.
|
<T extends RealFieldElement<T>> |
getTransform(FieldAbsoluteDate<T> date) |
Get the
FieldTransform corresponding to specified date. |
public static final double EARTH_ANGULAR_VELOCITY
public EstimatedEarthFrameProvider(UT1Scale baseUT1) throws OrekitException
The initial values for the pole and prime meridian parametric linear models
(getPrimeMeridianOffsetDriver()
, getPrimeMeridianDriftDriver()
,
getPolarOffsetXDriver()
, getPolarDriftXDriver()
,
getPolarOffsetXDriver()
, getPolarDriftXDriver()
) are set to 0.
baseUT1
- underlying base UT1OrekitException
- if scales are too close to zero (never happens)public ParameterDriver getPrimeMeridianOffsetDriver()
The parameter is an angle in radians. In order to convert this
value to a DUT1 in seconds, the value must be divided by
EARTH_ANGULAR_VELOCITY
(nominal Angular Velocity of Earth).
public ParameterDriver getPrimeMeridianDriftDriver()
The parameter is an angle rate in radians per second. In order to convert this
value to a LOD in seconds, the value must be multiplied by -86400 and divided by
EARTH_ANGULAR_VELOCITY
(nominal Angular Velocity of Earth).
public ParameterDriver getPolarOffsetXDriver()
The parameter is an angle in radians
public ParameterDriver getPolarDriftXDriver()
The parameter is an angle rate in radians per second
public ParameterDriver getPolarOffsetYDriver()
The parameter is an angle in radians
public ParameterDriver getPolarDriftYDriver()
The parameter is an angle rate in radians per second
public UT1Scale getEstimatedUT1()
public Transform getTransform(AbsoluteDate date) throws OrekitException
Transform
corresponding to specified date.getTransform
in interface TransformProvider
date
- current dateOrekitException
- if transform cannot be computed at given datepublic <T extends RealFieldElement<T>> FieldTransform<T> getTransform(FieldAbsoluteDate<T> date) throws OrekitException
FieldTransform
corresponding to specified date.getTransform
in interface TransformProvider
T
- type of the field elementsdate
- current dateOrekitException
- if transform cannot be computed at given datepublic FieldTransform<DerivativeStructure> getTransform(FieldAbsoluteDate<DerivativeStructure> date, DSFactory factory, Map<String,Integer> indices) throws OrekitException
date
- date of the transformfactory
- factory for the derivativesindices
- indices of the estimated parameters in derivatives computationsOrekitException
- if some frame transforms cannot be computedCopyright © 2002-2018 CS Systèmes d'information. All rights reserved.