public class TLE extends Object implements TimeStamped, Serializable
TLE sets can be built either by providing directly the two lines, in which case parsing is performed internally or by providing the already parsed elements.
TLE are not transparently convertible to Orbit
instances. They are significant only with respect to their dedicated propagator
, which also computes position and velocity coordinates.
Any attempt to directly use orbital parameters like eccentricity
,
inclination
, etc. without any reference to the TLE propagator
is prone to errors.
More information on the TLE format can be found on the CelesTrak website.
Modifier and Type | Field and Description |
---|---|
static int |
DEFAULT
Identifier for default type of ephemeris (SGP4/SDP4).
|
static int |
SDP4
Identifier for SDP4 type of ephemeris.
|
static int |
SDP8
Identifier for SDP8 type of ephemeris.
|
static int |
SGP
Identifier for SGP type of ephemeris.
|
static int |
SGP4
Identifier for SGP4 type of ephemeris.
|
static int |
SGP8
Identifier for SGP8 type of ephemeris.
|
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)
Simple constructor from already parsed elements.
|
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)
Simple constructor from already parsed elements using the given time scale as
UTC.
|
TLE(String line1,
String line2)
Simple constructor from unparsed two lines.
|
TLE(String line1,
String line2,
TimeScale utc)
Simple constructor from unparsed two lines using the given time scale as UTC.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object o)
Check if this tle equals the provided tle.
|
double |
getBStar()
Get the ballistic coefficient.
|
char |
getClassification()
Get the classification.
|
AbsoluteDate |
getDate()
Get the TLE current date.
|
double |
getE()
Get the eccentricity.
|
int |
getElementNumber()
Get the element number.
|
int |
getEphemerisType()
Get the type of ephemeris.
|
double |
getI()
Get the inclination.
|
int |
getLaunchNumber()
Get the launch number.
|
String |
getLaunchPiece()
Get the launch piece.
|
int |
getLaunchYear()
Get the launch year.
|
String |
getLine1()
Get the first line.
|
String |
getLine2()
Get the second line.
|
double |
getMeanAnomaly()
Get the mean anomaly.
|
double |
getMeanMotion()
Get the mean motion.
|
double |
getMeanMotionFirstDerivative()
Get the mean motion first derivative.
|
double |
getMeanMotionSecondDerivative()
Get the mean motion second derivative.
|
double |
getPerigeeArgument()
Get the argument of perigee.
|
double |
getRaan()
Get Right Ascension of the Ascending node.
|
int |
getRevolutionNumberAtEpoch()
Get the revolution number.
|
int |
getSatelliteNumber()
Get the satellite id.
|
int |
hashCode()
Get a hashcode for this tle.
|
static boolean |
isFormatOK(String line1,
String line2)
Check the lines format validity.
|
String |
toString()
Get a string representation of this TLE set.
|
public static final int DEFAULT
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
@DefaultDataContext public TLE(String line1, String line2)
default data context
.
The static method isFormatOK(String, String)
should be called
before trying to build this object.
line1
- the first element (69 char String)line2
- the second element (69 char String)TLE(String, String, TimeScale)
public TLE(String line1, String line2, TimeScale utc)
The static method isFormatOK(String, String)
should be called
before trying to build this object.
line1
- the first element (69 char String)line2
- the second element (69 char String)utc
- the UTC time scale.@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)
Simple constructor from already parsed elements. This constructor uses the
default data context
.
The mean anomaly, the right ascension of ascending node Ω and the argument of perigee ω are normalized into the [0, 2π] interval as they can be negative. After that, a range check is performed on some of the orbital elements:
meanMotion >= 0 0 <= i <= π 0 <= Ω <= 2π 0 <= e <= 1 0 <= ω <= 2π 0 <= meanAnomaly <= 2π
satelliteNumber
- satellite numberclassification
- classification (U for unclassified)launchYear
- launch year (all digits)launchNumber
- launch numberlaunchPiece
- launch piece (3 char String)ephemerisType
- type of ephemeriselementNumber
- element numberepoch
- elements epochmeanMotion
- mean motion (rad/s)meanMotionFirstDerivative
- mean motion first derivative (rad/s²)meanMotionSecondDerivative
- mean motion second derivative (rad/s³)e
- eccentricityi
- inclination (rad)pa
- argument of perigee (rad)raan
- right ascension of ascending node (rad)meanAnomaly
- mean anomaly (rad)revolutionNumberAtEpoch
- revolution number at epochbStar
- ballistic coefficientTLE(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)
Simple constructor from already parsed elements using the given time scale as UTC.
The mean anomaly, the right ascension of ascending node Ω and the argument of perigee ω are normalized into the [0, 2π] interval as they can be negative. After that, a range check is performed on some of the orbital elements:
meanMotion >= 0 0 <= i <= π 0 <= Ω <= 2π 0 <= e <= 1 0 <= ω <= 2π 0 <= meanAnomaly <= 2π
satelliteNumber
- satellite numberclassification
- classification (U for unclassified)launchYear
- launch year (all digits)launchNumber
- launch numberlaunchPiece
- launch piece (3 char String)ephemerisType
- type of ephemeriselementNumber
- element numberepoch
- elements epochmeanMotion
- mean motion (rad/s)meanMotionFirstDerivative
- mean motion first derivative (rad/s²)meanMotionSecondDerivative
- mean motion second derivative (rad/s³)e
- eccentricityi
- inclination (rad)pa
- argument of perigee (rad)raan
- right ascension of ascending node (rad)meanAnomaly
- mean anomaly (rad)revolutionNumberAtEpoch
- revolution number at epochbStar
- ballistic coefficientutc
- the UTC time scale.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
in interface 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 String toString()
The representation is simply the two lines separated by the platform line separator.
public static boolean isFormatOK(String line1, String line2)
line1
- the first elementline2
- the second elementpublic boolean equals(Object o)
Due to the difference in precision between object and string
representations of TLE, it is possible for this method to return false
even if string representations returned by toString()
are equal.
Copyright © 2002-2020 CS GROUP. All rights reserved.