public class HarrisPriester extends Object implements Atmosphere
这个模型是一个静态模型,考虑了昼夜密度隆起。它不需要任何空间天气数据,只需要一个密度与高度表,这取决于太阳活动。
实现依赖于书籍:
卫星轨道
Oliver Montenbruck, Eberhard Gill
Springer 2005
Constructor and Description |
---|
HarrisPriester(PVCoordinatesProvider sun, OneAxisEllipsoid earth)
修改后的哈里斯-普里斯特大气模型的简单构造函数。
|
HarrisPriester(PVCoordinatesProvider sun, OneAxisEllipsoid earth, double n)
修改后的哈里斯-普里斯特大气模型的构造函数。
|
HarrisPriester(PVCoordinatesProvider sun, OneAxisEllipsoid earth, double[][] tabAltRho)
修改后的哈里斯-普里斯特大气模型的构造函数。
|
HarrisPriester(PVCoordinatesProvider sun, OneAxisEllipsoid earth, double[][] tabAltRho, double n)
修改后的哈里斯-普里斯特大气模型的构造函数。
|
Modifier and Type | Method and Description |
---|---|
double |
getDensity(AbsoluteDate date, org.hipparchus.geometry.euclidean.threed.Vector3D position, Frame frame)
获取某个位置的局部密度。
|
<T extends org.hipparchus.CalculusFieldElement<T>> |
getDensity(FieldAbsoluteDate<T> date, org.hipparchus.geometry.euclidean.threed.FieldVector3D<T> position, Frame frame)
获取某个位置的局部密度。
|
<T extends org.hipparchus.CalculusFieldElement<T>> |
getDensity(org.hipparchus.geometry.euclidean.threed.Vector3D sunInEarth, org.hipparchus.geometry.euclidean.threed.FieldVector3D<T> posInEarth)
获取局部密度。
|
double |
getDensity(org.hipparchus.geometry.euclidean.threed.Vector3D sunInEarth, org.hipparchus.geometry.euclidean.threed.Vector3D posInEarth)
获取局部密度。
|
Frame |
getFrame()
获取中心天体的参考系。
|
double |
getMaxAlt()
获取模型的最大高度。
|
double |
getMinAlt()
获取模型的最小高度。
|
double[][] |
getTabDensity()
获取当前的密度表。
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getVelocity, getVelocity
public HarrisPriester(PVCoordinatesProvider sun, OneAxisEllipsoid earth)
余弦指数默认设置为4。
默认嵌入密度表是Montenbruck & Gill的参考书中给出的密度表。它适用于平均太阳活动,并覆盖100到1000公里。
sun
- 太阳位置
earth
- 地球形状
public HarrisPriester(PVCoordinatesProvider sun, OneAxisEllipsoid earth, double n)
推荐的余弦指数值范围从2到6,适用于低轨道倾角到极地轨道。
默认嵌入密度表是Montenbruck & Gill的参考书中给出的密度表。它适用于平均太阳活动,并覆盖100到1000公里。
sun
- 太阳位置
earth
- 地球形状
n
- 余弦指数
public HarrisPriester(PVCoordinatesProvider sun, OneAxisEllipsoid earth, double[][] tabAltRho)
提供的密度表必须是这样的数组:
高度必须是递增的,范围没有限制。内部密度表是提供的密度表的副本。
余弦指数默认设置为4。
sun
- 太阳位置
earth
- 地球形状
tabAltRho
- 密度表
public HarrisPriester(PVCoordinatesProvider sun, OneAxisEllipsoid earth, double[][] tabAltRho, double n)
推荐的余弦指数值范围从2到6,适用于低轨道倾角到极地轨道。
提供的密度表必须是这样的数组:
高度必须是递增的,范围没有限制。内部密度表是提供的密度表的副本。
sun
- 太阳位置
earth
- 地球形状
tabAltRho
- 密度表
n
- 余弦指数
public Frame getFrame()
getFrame
在接口 Atmosphere
public double[][] getTabDensity()
密度表是这样的数组:
高度必须是递增的,范围没有限制。
返回的密度表是当前密度表的副本。
public double getMinAlt()
在此高度以下无法进行计算。
public double getMaxAlt()
在此高度以上,密度被假定为零。
public double getDensity(org.hipparchus.geometry.euclidean.threed.Vector3D sunInEarth, org.hipparchus.geometry.euclidean.threed.Vector3D posInEarth)
sunInEarth
- 太阳在地球参考系中的位置(米)
posInEarth
- 目标位置在地球参考系中的位置(米)
public <T extends org.hipparchus.CalculusFieldElement<T>> T getDensity(org.hipparchus.geometry.euclidean.threed.Vector3D sunInEarth, org.hipparchus.geometry.euclidean.threed.FieldVector3D<T> posInEarth)
T
- CalculusFieldElement<T>的实例
sunInEarth
- 太阳在地球参考系中的位置(米)
posInEarth
- 目标位置在地球参考系中的位置(米)
public double getDensity(AbsoluteDate date, org.hipparchus.geometry.euclidean.threed.Vector3D position, Frame frame)
getDensity
在接口 Atmosphere
date
- 当前日期
position
- 当前位置
frame
- 定义位置的参考系
public <T extends org.hipparchus.CalculusFieldElement<T>> T getDensity(FieldAbsoluteDate<T> date, org.hipparchus.geometry.euclidean.threed.FieldVector3D<T> position, Frame frame)
getDensity
在接口 Atmosphere
T
- 实现CalculusFieldElement
date
- 当前日期
position
- 当前位置
frame
- 定义位置的参考系
Copyright © 2002-2023 CS GROUP. All rights reserved.