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 satelliteNumberIn,
char classificationIn,
int launchYearIn,
int launchNumberIn,
String launchPieceIn,
int ephemerisTypeIn,
int elementNumberIn,
AbsoluteDate epochIn,
double meanMotionIn,
double meanMotionFirstDerivativeIn,
double meanMotionSecondDerivativeIn,
double e,
double i,
double paIn,
double raanIn,
double meanAnomalyIn,
int revolutionNumberAtEpochIn,
double bStarIn)
Simple constructor from already parsed elements.
|
TLE(String line1In,
String line2In)
Simple constructor from unparsed two lines.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object object)
Test for the equality of two TLE objects.
|
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 in [0, π].
|
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 in [0, 2π].
|
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 in [0, 2π].
|
double |
getRaan()
Get Right Ascension of the Ascending node in [0, 2π].
|
int |
getRevolutionNumberAtEpoch()
Get the revolution number.
|
int |
getSatelliteNumber()
Get the satellite id.
|
int |
hashCode()
Get a hashCode for the 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
public TLE(String line1In, String line2In) throws PatriusException
The static method isFormatOK(String, String)
should be called before trying to build
this object.
line1In
- the first element (69 char String)line2In
- the second element (69 char String)PatriusException
- if some format error occurs or lines are inconsistentpublic TLE(int satelliteNumberIn, char classificationIn, int launchYearIn, int launchNumberIn, String launchPieceIn, int ephemerisTypeIn, int elementNumberIn, AbsoluteDate epochIn, double meanMotionIn, double meanMotionFirstDerivativeIn, double meanMotionSecondDerivativeIn, double e, double i, double paIn, double raanIn, double meanAnomalyIn, int revolutionNumberAtEpochIn, double bStarIn) throws PatriusException
satelliteNumberIn
- satellite numberclassificationIn
- classification (U for unclassified)launchYearIn
- launch year (all digits)launchNumberIn
- launch numberlaunchPieceIn
- launch pieceephemerisTypeIn
- type of ephemeriselementNumberIn
- element numberepochIn
- elements epochmeanMotionIn
- mean motion (rad/s)meanMotionFirstDerivativeIn
- mean motion first derivative (rad/s2)meanMotionSecondDerivativeIn
- mean motion second derivative (rad/s3)e
- eccentricityi
- inclination (rad). In case of negative inclination, inclination will be set to positive value and 180°
will be added to RAAN valuepaIn
- argument of perigee (rad). It will then be normalized in [0, 360°]raanIn
- right ascension of ascending node (rad). It will then be normalized in [0, 360°]meanAnomalyIn
- mean anomaly (rad). It will then be normalized in [0, 360°]revolutionNumberAtEpochIn
- revolution number at epochbStarIn
- ballistic coefficientPatriusException
- thrown if inclination is negativepublic String getLine1() throws PatriusException
PatriusException
- if UTC conversion cannot be donepublic 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) throws PatriusException
line1
- the first elementline2
- the second elementPatriusException
- if checksum is not validpublic boolean equals(Object object)
TLE objects are considered equals if they have the same attributes
Copyright © 2021 CNES. All rights reserved.