public class LazyLoadedGravityFields extends Object implements GravityFields
GravityFieldFactory
的行为相匹配。
GravityFieldFactory
Constructor and Description |
---|
LazyLoadedGravityFields(DataProvidersManager dataProvidersManager, TimeScale timeScale)
创建一个重力场工厂,使用给定的数据管理器加载重力场文件。
|
public LazyLoadedGravityFields(DataProvidersManager dataProvidersManager, TimeScale timeScale)
dataProvidersManager
- 提供对辅助数据文件的访问。
timeScale
- 用于解析addDefaultPotentialCoefficientsReaders()
中的日期。在Orekit 10.0中为TT。
public void addPotentialCoefficientsReader(PotentialCoefficientsReader reader)
reader
- 要添加到重力场的自定义读取器
addDefaultPotentialCoefficientsReaders()
, clearPotentialCoefficientsReaders()
public void addDefaultPotentialCoefficientsReaders()
默认的读取器支持ICGEM、SHM、EGM和GRGS格式,使用默认名称GravityFieldFactory.ICGEM_FILENAME
、GravityFieldFactory.SHM_FILENAME
、GravityFieldFactory.EGM_FILENAME
、GravityFieldFactory.GRGS_FILENAME
,并且不允许缺失系数。
public void clearPotentialCoefficientsReaders()
public void addOceanTidesReader(OceanTidesReader reader)
reader
- 要添加到重力场的自定义读取器
addDefaultPotentialCoefficientsReaders()
, clearPotentialCoefficientsReaders()
public void configureOceanLoadDeformationCoefficients(OceanLoadDeformationCoefficients oldc)
oldc
- 海洋载荷变形系数
getOceanLoadDeformationCoefficients()
public OceanLoadDeformationCoefficients getOceanLoadDeformationCoefficients()
如果从未调用过configureOceanLoadDeformationCoefficients
,默认值将是IERS 2010
系数。
configureOceanLoadDeformationCoefficients(OceanLoadDeformationCoefficients)
public void addDefaultOceanTidesReaders()
默认的读取器支持类似于IERS发布的fes2004_Cnm-Snm.dat和fes2004.dat文件,使用配置的
海洋载荷变形系数,默认为IERS 2010系数,限制为6阶。如果需要更高阶系数,可以在加载海洋潮汐模型之前调用configureOceanLoadDeformationCoefficients
方法,使用Pascal Gégout计算的高阶系数
。
警告:已发布的约定中引用的文件存在一些错误。这些错误已经得到纠正,更新后的文件可以在这里找到: http://tai.bipm.org/iers/convupdt/convupdt_c6.html。
public void clearOceanTidesReaders()
public PotentialCoefficientsReader readGravityField(int maxParseDegree, int maxParseOrder)
如果没有通过调用addPotentialCoefficientsReader
添加任何PotentialCoefficientsReader
,或者在之后调用clearPotentialCoefficientsReaders
,则将自动调用addDefaultPotentialCoefficientsReaders
方法。
maxParseDegree
- 要解析的最大阶数
maxParseOrder
- 要解析的最大次数
public NormalizedSphericalHarmonicsProvider getConstantNormalizedProvider(int degree, int order, AbsoluteDate freezingDate)
如果没有通过调用PotentialCoefficientsReader
添加过,或者之后调用了clearPotentialCoefficientsReaders
,则将自动调用addDefaultPotentialCoefficientsReaders
方法。
getConstantNormalizedProvider
在接口 GravityFields
degree
- 最大次数
order
- 最大阶数
freezingDate
- 冻结时刻
GravityFields.getNormalizedProvider(int, int)
public NormalizedSphericalHarmonicsProvider getNormalizedProvider(int degree, int order)
如果没有通过调用PotentialCoefficientsReader
添加过,或者之后调用了clearPotentialCoefficientsReaders
,则将自动调用addDefaultPotentialCoefficientsReaders
方法。
getNormalizedProvider
在接口 GravityFields
degree
- 最大次数
order
- 最大阶数
GravityFields.getConstantNormalizedProvider(int, int, AbsoluteDate)
public UnnormalizedSphericalHarmonicsProvider getConstantUnnormalizedProvider(int degree, int order, AbsoluteDate freezingDate)
如果没有通过调用PotentialCoefficientsReader
添加过,或者之后调用了clearPotentialCoefficientsReaders
,则将自动调用addDefaultPotentialCoefficientsReaders
方法。
getConstantUnnormalizedProvider
在接口 GravityFields
degree
- 最大次数
order
- 最大阶数
freezingDate
- 冻结时刻
GravityFields.getUnnormalizedProvider(int, int)
public UnnormalizedSphericalHarmonicsProvider getUnnormalizedProvider(int degree, int order)
如果没有通过调用PotentialCoefficientsReader
添加过,或者之后调用了clearPotentialCoefficientsReaders
,则将自动调用addDefaultPotentialCoefficientsReaders
方法。
getUnnormalizedProvider
在接口 GravityFields
degree
- 最大次数
order
- 最大阶数
GravityFields.getConstantUnnormalizedProvider(int, int, AbsoluteDate)
public List<OceanTidesWave> getOceanTidesWaves(int degree, int order)
警告:截至2013-11-17,加载Sa波(Doodson数56.554)和P1波(Doodson数163.555)时存在不一致性。系数的符号不同。我们认为问题出在IERS的输入文件中,而不是转换中(对于所有其他波都有效),但无法确定。因此,海洋潮汐在此日期仍被视为实验性。
如果没有通过调用OceanTidesReader
添加过,或者之后调用了clearOceanTidesReaders
,则将自动调用addDefaultOceanTidesReaders
方法。
getOceanTidesWaves
在接口 GravityFields
degree
- 最大次数
order
- 最大阶数
Copyright © 2002-2023 CS GROUP. All rights reserved.