T
- type of the field elements
public class FieldStateCovariance<T extends org.hipparchus.CalculusFieldElement<T>> extends Object implements FieldTimeStamped<T>
目前,协方差仅表示轨道元素。
可以通过使用changeCovarianceFrame(FieldOrbit, Frame)
或changeCovarianceFrame(FieldOrbit, LOF)
方法来更改协方差框架。这些方法基于David A. SVallado的《卫星飞行动力学操作的协方差变换》中的方程(18)和(20)。
最后,可以使用changeCovarianceType(FieldOrbit, OrbitType, PositionAngle)
方法更改协方差轨道类型。
Constructor and Description |
---|
FieldStateCovariance(org.hipparchus.linear.FieldMatrix<T> orbitalCovariance, FieldAbsoluteDate<T> epoch, Frame covarianceFrame, OrbitType orbitType, PositionAngleType angleType)
构造函数。
|
FieldStateCovariance(org.hipparchus.linear.FieldMatrix<T> orbitalCovariance, FieldAbsoluteDate<T> epoch, LOF lof)
构造函数。
|
Modifier and Type | Method and Description |
---|---|
FieldStateCovariance<T> |
changeCovarianceFrame(FieldOrbit<T> orbit, Frame frameOut)
获取输出框架中的协方差。
|
FieldStateCovariance<T> |
changeCovarianceFrame(FieldOrbit<T> orbit, LOF lofOut)
获取给定局部轨道框架中的协方差。
|
FieldStateCovariance<T> |
changeCovarianceType(FieldOrbit<T> orbit, OrbitType outOrbitType, PositionAngleType outAngleType)
获取另一种轨道类型中的协方差矩阵。
|
FieldAbsoluteDate<T> |
getDate()
获取日期。
|
Frame |
getFrame()
获取协方差框架。
|
LOF |
getLOF()
获取协方差LOF类型。
|
org.hipparchus.linear.FieldMatrix<T> |
getMatrix()
获取协方差矩阵。
|
OrbitType |
getOrbitType()
获取协方差轨道类型。
|
PositionAngleType |
getPositionAngleType()
获取协方差角度类型。
|
FieldStateCovariance<T> |
shiftedBy(org.hipparchus.Field<T> field, FieldOrbit<T> orbit, T dt)
获取时间偏移的协方差矩阵。
|
StateCovariance |
toStateCovariance()
获取新的状态协方差实例。
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
durationFrom
public FieldStateCovariance(org.hipparchus.linear.FieldMatrix<T> orbitalCovariance, FieldAbsoluteDate<T> epoch, LOF lof)
orbitalCovariance
- 6x6轨道参数协方差
epoch
- 协方差的时刻
lof
- 协方差LOF类型
public FieldStateCovariance(org.hipparchus.linear.FieldMatrix<T> orbitalCovariance, FieldAbsoluteDate<T> epoch, Frame covarianceFrame, OrbitType orbitType, PositionAngleType angleType)
orbitalCovariance
- 6x6轨道参数协方差
epoch
- 协方差的时刻
covarianceFrame
- 协方差框架(惯性或地球固定)
orbitType
- 协方差的轨道类型(如果covarianceFrame不是伪惯性则为CARTESIAN)
angleType
- 协方差的位置角类型(如果orbitType为CARTESIAN则不使用)
public FieldAbsoluteDate<T> getDate()
getDate
在接口 FieldTimeStamped<T extends org.hipparchus.CalculusFieldElement<T>>
public org.hipparchus.linear.FieldMatrix<T> getMatrix()
public OrbitType getOrbitType()
public PositionAngleType getPositionAngleType()
public LOF getLOF()
getFrame()
public FieldStateCovariance<T> changeCovarianceType(FieldOrbit<T> orbit, OrbitType outOrbitType, PositionAngleType outAngleType)
如果协方差矩阵是在局部轨道框架
或非伪惯性框架中表示,则无法更改协方差轨道类型。
由于此类型更改使用变换的雅可比矩阵,因此引入了线性近似。因此,当前协方差矩阵将不完全匹配新的线性化情况,分布将不再遵循广义高斯分布。
这是基于“Vallado, D. A. (2004). Covariance transformations for satellite flight dynamics operations.”中的方程(1)到(6)。
orbit
- 协方差矩阵应对应的轨道
outOrbitType
- 状态协方差矩阵的目标轨道类型
outAngleType
- 状态协方差矩阵的目标位置角类型
changeCovarianceFrame(FieldOrbit, Frame)
public FieldStateCovariance<T> changeCovarianceFrame(FieldOrbit<T> orbit, LOF lofOut)
更改协方差框架是一个线性过程,除非需要更改协方差轨道类型,否则此方法不会引入近似。
这是基于“Vallado, D. A. (2004). Covariance transformations for satellite flight dynamics operations.”中的方程(18)到(20)。
orbit
- 协方差矩阵应对应的轨道
lofOut
- 输出局部轨道框架
public FieldStateCovariance<T> changeCovarianceFrame(FieldOrbit<T> orbit, Frame frameOut)
更改协方差框架是一个线性过程,除非需要更改协方差轨道类型,否则此方法不会引入近似。
这是基于“Vallado, D. A. (2004). Covariance transformations for satellite flight dynamics operations.”中的方程(18)到(20)。
orbit
- 协方差矩阵应对应的轨道
frameOut
- 输出框架
public FieldStateCovariance<T> shiftedBy(org.hipparchus.Field<T> field, FieldOrbit<T> orbit, T dt)
偏移模型是一个线性化的、开普勒的模型。换句话说,它是基于假定开普勒运动计算的状态转移矩阵。
偏移不旨在替代适当的协方差传播,但对于小时间偏移或粗略精度应该足够。
field
- 元素所属的域
orbit
- 协方差矩阵应对应的轨道
dt
- 以秒为单位的时间偏移
public StateCovariance toStateCovariance()
Copyright © 2002-2023 CS GROUP. All rights reserved.