public class TLE extends Object implements TimeStamped, Serializable, ParameterDriversProvider
TLE数据集可以通过直接提供两行数据来构建,此时将在内部执行解析,也可以通过提供已解析的元素来构建。
TLE不能直接转换为Orbit
实例。它们只与专用的propagator
相关联,后者还计算位置和速度坐标。任何直接使用轨道参数如eccentricity
、inclination
等而没有参考TLE propagator
的尝试都容易出错。
有关TLE格式的更多信息可以在CelesTrak网站上找到。
Modifier and Type | Field and Description |
---|---|
static String |
B_STAR
B*系数的参数名称。
|
static int |
DEFAULT
默认星历类型(SGP4/SDP4)的标识符。
|
static int |
SDP4
SDP4星历类型的标识符。
|
static int |
SDP8
SDP8星历类型的标识符。
|
static int |
SGP
SGP星历类型的标识符。
|
static int |
SGP4
SGP4星历类型的标识符。
|
static int |
SGP8
SGP8星历类型的标识符。
|
Constructor and Description |
---|
TLE(int satelliteNumber, char classification, int launchYear, int launchNumber, String launchPiece, int ephemerisType, int elementNumber, AbsoluteDate epoch, double meanMotion, double meanMotionFirstDerivative, double meanMotionSecondDerivative, double e, double i, double pa, double raan, double meanAnomaly, int revolutionNumberAtEpoch, double bStar)
使用已解析的元素的简单构造函数。
|
TLE(int satelliteNumber, char classification, int launchYear, int launchNumber, String launchPiece, int ephemerisType, int elementNumber, AbsoluteDate epoch, double meanMotion, double meanMotionFirstDerivative, double meanMotionSecondDerivative, double e, double i, double pa, double raan, double meanAnomaly, int revolutionNumberAtEpoch, double bStar, TimeScale utc)
使用已解析的元素和给定的UTC时间标度的简单构造函数。
|
TLE(String line1, String line2)
使用未解析的两行数据的简单构造函数。
|
TLE(String line1, String line2, TimeScale utc)
使用未解析的两行数据和给定的UTC时间标度的简单构造函数。
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object o)
检查此TLE是否等于提供的TLE。
|
double |
getBStar()
获取TLE日期的弹道系数。
|
double |
getBStar(AbsoluteDate date)
获取特定日期的弹道系数。
|
char |
getClassification()
获取分类。
|
AbsoluteDate |
getDate()
获取TLE当前日期。
|
double |
getE()
获取偏心率。
|
int |
getElementNumber()
获取元素编号。
|
int |
getEphemerisType()
获取星历类型。
|
double |
getI()
获取倾角。
|
int |
getLaunchNumber()
获取发射编号。
|
String |
getLaunchPiece()
获取发射部件。
|
int |
getLaunchYear()
获取发射年份。
|
String |
getLine1()
获取第一行。
|
String |
getLine2()
获取第二行。
|
double |
getMeanAnomaly()
获取平近点角。
|
double |
getMeanMotion()
获取平均运动。
|
double |
getMeanMotionFirstDerivative()
获取平均运动的第一导数。
|
double |
getMeanMotionSecondDerivative()
获取平均运动的第二导数。
|
List<ParameterDriver> |
getParametersDrivers()
获取TLE传播SGP4和SDP4的驱动程序。
|
double |
getPerigeeArgument()
获取近地点幅角。
|
double |
getRaan()
获取升交点赤经。
|
int |
getRevolutionNumberAtEpoch()
获取革命数。
|
int |
getSatelliteNumber()
获取卫星ID。
|
TimeScale |
getUtc()
获取用于创建此TLE的UTC时间标度。
|
int |
hashCode()
获取此TLE的哈希码。
|
static boolean |
isFormatOK(String line1, String line2)
检查行格式的有效性。
|
static TLE |
stateToTLE(SpacecraftState state, TLE templateTLE, TleGenerationAlgorithm generationAlgorithm)
将空间飞行器状态转换为TLE。
|
String |
toString()
获取此TLE集的字符串表示。
|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
durationFrom
getNbParametersDriversValue, getParameterDriver, getParameters, getParameters, getParameters, getParameters, getParametersAllValues, getParametersAllValues, isSupported
public static final int SGP
public static final int SGP4
public static final int SDP4
public static final int SGP8
public static final int SDP8
public static final int DEFAULT
@DefaultDataContext public TLE(String line1, String line2)
默认数据上下文
。
在尝试构建此对象之前,应调用静态方法isFormatOK(String, String)
。
line1
- 第一个元素(69个字符的字符串)
line2
- 第二个元素(69个字符的字符串)
TLE(String, String, TimeScale)
public TLE(String line1, String line2, TimeScale utc)
在尝试构建此对象之前,应调用静态方法isFormatOK(String, String)
。
line1
- 第一个元素(69个字符的字符串)
line2
- 第二个元素(69个字符的字符串)
utc
- UTC时间标度
@DefaultDataContext public TLE(int satelliteNumber, char classification, int launchYear, int launchNumber, String launchPiece, int ephemerisType, int elementNumber, AbsoluteDate epoch, double meanMotion, double meanMotionFirstDerivative, double meanMotionSecondDerivative, double e, double i, double pa, double raan, double meanAnomaly, int revolutionNumberAtEpoch, double bStar)
使用已解析的元素的简单构造函数。此构造函数使用默认数据上下文
。
平近点角、升交点赤经Ω和近地点幅角ω被归一化到[0, 2π]区间,因为它们可能为负数。之后,对一些轨道元素进行范围检查:
meanMotion >= 0 0 <= i <= π 0 <= Ω <= 2π 0 <= e <= 1 0 <= ω <= 2π 0 <= meanAnomaly <= 2π
satelliteNumber
- 卫星编号
classification
- 分类(未分类为U)
launchYear
- 发射年份(所有数字)
launchNumber
- 发射编号
launchPiece
- 发射部件(3个字符的字符串)
ephemerisType
- 星历类型
elementNumber
- 元素编号
epoch
- 元素时刻
meanMotion
- 平均运动(弧度/秒)
meanMotionFirstDerivative
- 平均运动第一导数(弧度/秒²)
meanMotionSecondDerivative
- 平均运动第二导数(弧度/秒³)
e
- 偏心率
i
- 倾角(弧度)
pa
- 近地点幅角(弧度)
raan
- 升交点赤经(弧度)
meanAnomaly
- 平近点角(弧度)
revolutionNumberAtEpoch
- 元素时刻的革命数
bStar
- 弹道系数
TLE(int, char, int, int, String, int, int, AbsoluteDate, double, double, double, double, double, double, double, double, int, double, TimeScale)
public TLE(int satelliteNumber, char classification, int launchYear, int launchNumber, String launchPiece, int ephemerisType, int elementNumber, AbsoluteDate epoch, double meanMotion, double meanMotionFirstDerivative, double meanMotionSecondDerivative, double e, double i, double pa, double raan, double meanAnomaly, int revolutionNumberAtEpoch, double bStar, TimeScale utc)
使用已解析的元素和给定的UTC时间标度的简单构造函数。
平近点角、升交点赤经Ω和近地点幅角ω被归一化到[0, 2π]区间,因为它们可能为负数。之后,对一些轨道元素进行范围检查:
meanMotion >= 0 0 <= i <= π 0 <= Ω <= 2π 0 <= e <= 1 0 <= ω <= 2π 0 <= meanAnomaly <= 2π
satelliteNumber
- 卫星编号
classification
- 分类(未分类为U)
launchYear
- 发射年份(所有数字)
launchNumber
- 发射编号
launchPiece
- 发射部件(3个字符的字符串)
ephemerisType
- 星历类型
elementNumber
- 元素编号
epoch
- 元素时刻
meanMotion
- 平均运动(弧度/秒)
meanMotionFirstDerivative
- 平均运动第一导数(弧度/秒²)
meanMotionSecondDerivative
- 平均运动第二导数(弧度/秒³)
e
- 偏心率
i
- 倾角(弧度)
pa
- 近地点幅角(弧度)
raan
- 升交点赤经(弧度)
meanAnomaly
- 平近点角(弧度)
revolutionNumberAtEpoch
- 元素时刻的革命数
bStar
- 弹道系数
utc
- UTC时间标度
public TimeScale getUtc()
public String getLine1()
public String getLine2()
public int getSatelliteNumber()
public char getClassification()
public int getLaunchYear()
public int getLaunchNumber()
public String getLaunchPiece()
public int getEphemerisType()
public int getElementNumber()
public AbsoluteDate getDate()
getDate
在接口 TimeStamped
public double getMeanMotion()
public double getMeanMotionFirstDerivative()
public double getMeanMotionSecondDerivative()
public double getE()
public double getI()
public double getPerigeeArgument()
public double getRaan()
public double getMeanAnomaly()
public int getRevolutionNumberAtEpoch()
public double getBStar()
public double getBStar(AbsoluteDate date)
date
- 要获取弹道系数的日期
public String toString()
表示形式只是两行,由平台行分隔。
public static TLE stateToTLE(SpacecraftState state, TLE templateTLE, TleGenerationAlgorithm generationAlgorithm)
state
- 要转换为TLE的航天器状态
templateTLE
- 用于获取标识和估计新TLE的第一个猜测
generationAlgorithm
- TLE生成算法
public static boolean isFormatOK(String line1, String line2)
line1
- 第一个元素
line2
- 第二个元素
public boolean equals(Object o)
由于TLE的对象和字符串表示之间精度的差异,即使由toString()
返回的字符串表示相等,此方法可能返回false。
public List<ParameterDriver> getParametersDrivers()
getParametersDrivers
在接口 ParameterDriversProvider
Copyright © 2002-2023 CS GROUP. All rights reserved.