The Full Wiki

More info on Two-line element set

Two-line element set: Map

Advertisements
  
  

Wikipedia article:

Map showing all locations mentioned on Wikipedia article:



A Two-Line Element set (TLE) is a set of orbital elements that describe the orbit of an earth satellite. A computer program called a model can use the TLE to compute the precise position of a satellite at a particular time. The TLE is in a format specified by NORADmarker and used by NORAD and NASAmarker. The TLE can be used directly by the SGP4 model (or one of the SGP8, SDP4, SDP8 models). Orbital elements are determined for many thousands of space objects by NORADmarker and are freely distributed on the Internet in the form of TLEs. A TLE consists of a title line followed by two lines of formatted text.

Format

The following is an example of a TLE (for the International Space Station)

ISS (ZARYA)
1 25544U 98067A   08264.51782528 -.00002182  00000-0 -11606-4 0  2927
2 25544  51.6416 247.4627 0006703 130.5360 325.0288 15.72125391563537


The meaning of this data is as follows:
Title line
Field Columns Content Example
1 01-24 Satellite name ISS (ZARYA)


LINE 1
Field Columns Content Example
1 01-01 Line number 1
2 03-07 Satellite number 25544
3 08-08 Classification (U=Unclassified) U
4 10-11 International Designator (Last two digits of launch year) 98
5 12-14 International Designator (Launch number of the year) 067
6 15-17 International Designator (Piece of the launch) A
7 19-20 Epoch Year (Last two digits of year) 08
8 21-32 Epoch (Day of the year and fractional portion of the day) 264.51782528
9 34-43 First Time Derivative of the Mean Motion divided by two -.00002182
10 45-52 Second Time Derivative of Mean Motion divided by six (decimal point assumed) 00000-0
11 54-61 BSTAR drag term (decimal point assumed) -11606-4
12 63-63 The number 0 (Originally this should have been "Ephemeris type") 0
13 65-68 Element number 292
14 69-69 Checksum (Modulo 10) 7


LINE 2:
|-
Field Columns Content Example
1 01-01 Line number 2
2 03-07 Satellite number 25544
3 09-16 Inclination [Degrees] 51.6416
4 18-25 Right Ascension of the Ascending Node [Degrees] 247.4627
5 27-33 Eccentricity (decimal point assumed) 0006703
6 35-42 Argument of Perigee [Degrees] 130.5360
7 44-51 Mean Anomaly [Degrees] 325.0288
8 53-63 Mean Motion [Revs per day] 15.72125391
9 64-69 Revolution number at epoch [Revs] 563537


Usage

The "First Time Derivative of the Mean Motion" and the "Second Time Derivative of Mean Motion" are not used for the SGP4 model.

The parameters "Inclination", "Right Ascension of the Ascending Node", "Eccentricity", "Argument of Perigee" and "Mean Anomaly" are not osculating Kepler elements but a special case of "mean elements" to be used with the SGP4 model.

The original FORTRAN code for the SGP4 algorithm is as follows:

      SUBROUTINE SGP4(IFLAG,TSINCE)
      COMMON/E1/XMO,XNODEO,OMEGAO,EO,XINCL,XNO,
     1           BSTAR,X,Y,Z,XDOT,YDOT,ZDOT
      COMMON/C1/CK2,CK4,E6A,QOMS2T,S,TOTHRD,XJ3,XKE,XKMPER,AE
C
C   THE FOLLOWING SAVE STATEMENTS ADDED TO THE ORIGINAL CODE
C   SOME FORTRAN SYSTEM DO NOT KEEP THE VALUES OTHERWISE!
C
      SAVE COSIO,X3THM1,XNODP,AODP,ISIMP,ETA,C1,SINIO,X1MTH2,C4,C5
      SAVE XMDOT,OMGDOT,XNODOT,OMGCOF,XMCOF,XNODCF,T2COF,XLCOF,AYCOF
      SAVE DELMO,SINMO,X7THM1,D2,D3,D4,T3COF,T4COF,T5COF
      IF (IFLAG .EQ. 0) GO TO 100
C RECOVER ORIGINAL MEAN MOTION (XNODP) AND SEMIMAJOR AXIS (AODP)
C FROM INPUT ELEMENTS
      A1=(XKE/XNO)**TOTHRD
      COSIO=COS(XINCL)
      THETA2=COSIO*COSIO
      X3THM1=3.*THETA2-1.
      EOSQ=EO*EO
      BETAO2=1.-EOSQ
      BETAO=SQRT(BETAO2)
      DEL1=1.5*CK2*X3THM1/(A1*A1*BETAO*BETAO2)
      AO=A1*(1.-DEL1*(.5*TOTHRD+DEL1*(1.+134./81.*DEL1)))
      DELO=1.5*CK2*X3THM1/(AO*AO*BETAO*BETAO2)
      XNODP=XNO/(1.+DELO)
      AODP=AO/(1.-DELO)
C INITIALIZATION
C FOR PERIGEE LESS THAN 220 KILOMETERS, THE ISIMP FLAG IS SET AND
C THE EQUATIONS ARE TRUNCATED TO LINEAR VARIATION IN SQRT A AND
C QUADRATIC VARIATION IN MEAN ANOMALY. ALSO, THE C3 TERM, THE
C DELTA OMEGA TERM, AND THE DELTA M TERM ARE DROPPED.
      ISIMP=0
      IF((AODP*(1.-EO)/AE) .LT. (220./XKMPER+AE)) ISIMP=1
C FOR PERIGEE BELOW 156 KM, THE VALUES OF
C S AND QOMS2T ARE ALTERED
      S4=S
      QOMS24=QOMS2T
      PERIGE=(AODP*(1.-EO)-AE)*XKMPER
      IF(PERIGE .GE. 156.) GO TO 10
      S4=PERIGE-78.
      IF(PERIGE .GT. 98.) GO TO 9
      S4=20.
    9 QOMS24=((120.-S4)*AE/XKMPER)**4
      S4=S4/XKMPER+AE
   10 PINVSQ=1./(AODP*AODP*BETAO2*BETAO2)
      TSI=1./(AODP-S4)
      ETA=AODP*EO*TSI
      ETASQ=ETA*ETA
      EETA=EO*ETA
      PSISQ=ABS(1.-ETASQ)
      COEF=QOMS24*TSI**4
      COEF1=COEF/PSISQ**3.5
      C2=COEF1*XNODP*(AODP*(1.+1.5*ETASQ+EETA*(4.+ETASQ))+.75*
     1 CK2*TSI/PSISQ*X3THM1*(8.+3.*ETASQ*(8.+ETASQ)))
      C1=BSTAR*C2
      SINIO=SIN(XINCL)
      A3OVK2=-XJ3/CK2*AE**3
      C3=COEF*TSI*A3OVK2*XNODP*AE*SINIO/EO
      X1MTH2=1.-THETA2
      C4=2.*XNODP*COEF1*AODP*BETAO2*(ETA*
     1 (2.+.5*ETASQ)+EO*(.5+2.*ETASQ)-2.*CK2*TSI/
     2 (AODP*PSISQ)*(-3.*X3THM1*(1.-2.*EETA+ETASQ*
     3 (1.5-.5*EETA))+.75*X1MTH2*(2.*ETASQ-EETA*
     4 (1.+ETASQ))*COS(2.*OMEGAO)))
      C5=2.*COEF1*AODP*BETAO2*(1.+2.75*(ETASQ+EETA)+EETA*ETASQ)
      THETA4=THETA2*THETA2
      TEMP1=3.*CK2*PINVSQ*XNODP
      TEMP2=TEMP1*CK2*PINVSQ
      TEMP3=1.25*CK4*PINVSQ*PINVSQ*XNODP
      XMDOT=XNODP+.5*TEMP1*BETAO*X3THM1+.0625*TEMP2*BETAO*
     1 (13.-78.*THETA2+137.*THETA4)
      X1M5TH=1.-5.*THETA2
      OMGDOT=-.5*TEMP1*X1M5TH+.0625*TEMP2*(7.-114.*THETA2+
     1 395.*THETA4)+TEMP3*(3.-36.*THETA2+49.*THETA4)
      XHDOT1=-TEMP1*COSIO
      XNODOT=XHDOT1+(.5*TEMP2*(4.-19.*THETA2)+2.*TEMP3*(3.-
     1 7.*THETA2))*COSIO
      OMGCOF=BSTAR*C3*COS(OMEGAO)
      XMCOF=-TOTHRD*COEF*BSTAR*AE/EETA
      XNODCF=3.5*BETAO2*XHDOT1*C1
      T2COF=1.5*C1
      XLCOF=.125*A3OVK2*SINIO*(3.+5.*COSIO)/(1.+COSIO)
      AYCOF=.25*A3OVK2*SINIO
      DELMO=(1.+ETA*COS(XMO))**3
      SINMO=SIN(XMO)
      X7THM1=7.*THETA2-1.
      IF(ISIMP .EQ. 1) GO TO 90
      C1SQ=C1*C1
      D2=4.*AODP*TSI*C1SQ
      TEMP=D2*TSI*C1/3.
      D3=(17.*AODP+S4)*TEMP
      D4=.5*TEMP*AODP*TSI*(221.*AODP+31.*S4)*C1
      T3COF=D2+2.*C1SQ
      T4COF=.25*(3.*D3+C1*(12.*D2+10.*C1SQ))
      T5COF=.2*(3.*D4+12.*C1*D3+6.*D2*D2+15.*C1SQ*(
     1 2.*D2+C1SQ))
   90 IFLAG=0
C UPDATE FOR SECULAR GRAVITY AND ATMOSPHERIC DRAG
  100 XMDF=XMO+XMDOT*TSINCE
      OMGADF=OMEGAO+OMGDOT*TSINCE
      XNODDF=XNODEO+XNODOT*TSINCE
      OMEGA=OMGADF
      XMP=XMDF
      TSQ=TSINCE*TSINCE
      XNODE=XNODDF+XNODCF*TSQ
      TEMPA=1.-C1*TSINCE
      TEMPE=BSTAR*C4*TSINCE
      TEMPL=T2COF*TSQ
      IF(ISIMP .EQ. 1) GO TO 110
      DELOMG=OMGCOF*TSINCE
      DELM=XMCOF*((1.+ETA*COS(XMDF))**3-DELMO)
      TEMP=DELOMG+DELM
      XMP=XMDF+TEMP
      OMEGA=OMGADF-TEMP
      TCUBE=TSQ*TSINCE
      TFOUR=TSINCE*TCUBE
      TEMPA=TEMPA-D2*TSQ-D3*TCUBE-D4*TFOUR
      TEMPE=TEMPE+BSTAR*C5*(SIN(XMP)-SINMO)
      TEMPL=TEMPL+T3COF*TCUBE+
     1 TFOUR*(T4COF+TSINCE*T5COF)
  110 A=AODP*TEMPA**2
      E=EO-TEMPE
      XL=XMP+OMEGA+XNODE+XNODP*TEMPL
      BETA=SQRT(1.-E*E)
      XN=XKE/A**1.5
C LONG PERIOD PERIODICS
      AXN=E*COS(OMEGA)
      TEMP=1./(A*BETA*BETA)
      XLL=TEMP*XLCOF*AXN
      AYNL=TEMP*AYCOF
      XLT=XL+XLL
      AYN=E*SIN(OMEGA)+AYNL
C SOLVE KEPLERS EQUATION
      CAPU=FMOD2P(XLT-XNODE)
      TEMP2=CAPU
      DO 130 I=1,10
      SINEPW=SIN(TEMP2)
      COSEPW=COS(TEMP2)
      TEMP3=AXN*SINEPW
      TEMP4=AYN*COSEPW
      TEMP5=AXN*COSEPW
      TEMP6=AYN*SINEPW
      EPW=(CAPU-TEMP4+TEMP3-TEMP2)/(1.-TEMP5-TEMP6)+TEMP2
      IF(ABS(EPW-TEMP2) .LE. E6A) GO TO 140
  130 TEMP2=EPW
C SHORT PERIOD PRELIMINARY QUANTITIES
  140 ECOSE=TEMP5+TEMP6
      ESINE=TEMP3-TEMP4
      ELSQ=AXN*AXN+AYN*AYN
      TEMP=1.-ELSQ
      PL=A*TEMP
      R=A*(1.-ECOSE)
      TEMP1=1./R
      RDOT=XKE*SQRT(A)*ESINE*TEMP1
      RFDOT=XKE*SQRT(PL)*TEMP1
      TEMP2=A*TEMP1
      BETAL=SQRT(TEMP)
      TEMP3=1./(1.+BETAL)
      COSU=TEMP2*(COSEPW-AXN+AYN*ESINE*TEMP3)
      SINU=TEMP2*(SINEPW-AYN-AXN*ESINE*TEMP3)
      U=ACTAN(SINU,COSU)
      SIN2U=2.*SINU*COSU
      COS2U=2.*COSU*COSU-1.
      TEMP=1./PL
      TEMP1=CK2*TEMP
      TEMP2=TEMP1*TEMP
C UPDATE FOR SHORT PERIODICS
      RK=R*(1.-1.5*TEMP2*BETAL*X3THM1)+.5*TEMP1*X1MTH2*COS2U
      UK=U-.25*TEMP2*X7THM1*SIN2U
      XNODEK=XNODE+1.5*TEMP2*COSIO*SIN2U
      XINCK=XINCL+1.5*TEMP2*COSIO*SINIO*COS2U
      RDOTK=RDOT-XN*TEMP1*X1MTH2*SIN2U
      RFDOTK=RFDOT+XN*TEMP1*(X1MTH2*COS2U+1.5*X3THM1)
C ORIENTATION VECTORS
      SINUK=SIN(UK)
      COSUK=COS(UK)
      SINIK=SIN(XINCK)
      COSIK=COS(XINCK)
      SINNOK=SIN(XNODEK)
      COSNOK=COS(XNODEK)
      XMX=-SINNOK*COSIK
      XMY=COSNOK*COSIK
      UX=XMX*SINUK+COSNOK*COSUK
      UY=XMY*SINUK+SINNOK*COSUK
      UZ=SINIK*SINUK
      VX=XMX*COSUK-COSNOK*SINUK
      VY=XMY*COSUK-SINNOK*SINUK
      VZ=SINIK*COSUK
C POSITION AND VELOCITY
      X=RK*UX
      Y=RK*UY
      Z=RK*UZ
      XDOT=RDOTK*UX+RFDOTK*VX
      YDOT=RDOTK*UY+RFDOTK*VY
      ZDOT=RDOTK*UZ+RFDOTK*VZ
      RETURN
      END
      FUNCTION ACTAN(X,Y)
      ACTAN=ATAN2(X,Y)
      IF (ACTAN. LT. 0. ) ACTAN=ACTAN + 6.283185
      RETURN
      END
      FUNCTION FMOD2P(X)
      FMOD2P=AMOD(X,6.283185)
      IF (FMOD2P. LT. 0. ) FMOD2P=FMOD2P + 6.283185
      RETURN
      END


Using this original code for the SGP4 algorithm the variables in COMMON/E1/ shall be given the following values:

BSTAR is the drag term value from line 1 cols 54-61 (example: -11606-4 means -0.11606E-4)

XINCL is the inclination in radians, computed by multiplying π/180 by the inclination in degrees from line 2 cols 9-16.

XNODEO is the right ascension of the ascending node (RAAN) in radians. It is computed by multiplying π/180 by the RAAN in degrees from line 2 cols 18-25.

EO is the (dimensionless) eccentricity from line 2 cols 27-33 (example: 0006703 means 0.0006703).

OMEGAO is the argument of perigee in radians, computed by multiplying π/180 by the value in degrees in line 2 cols 35-42.

XMO is the mean anomaly at epoch in radians, computed by multiplying π/180 by the mean anomaly in degrees in line 2 cols 44-51.

XNO is the mean motion in radians/minute, computed by multiplying π/720 by the mean motion in revolutions/day from line 2 cols 53-63.

COMMON/C1/ contains the following fixed constants:

     CK2 = 5.413080E-4
     CK4 = 0.62098875E-6
     E6A = 1E-6
     QOMS2T = 1.88027916E-9
     S = 1.01222928
     TOTHRD = 2./3.
     XJ3 = -0.253881E-5
     XKE = 0.743669161E-1 []
     XKMPER = 6378.135
     AE = 1.


XKE is the angular velocity in radians/minute of a hypothetical satellite with a semimajor axis of 1 earth equatorial radius (a "surface skimming" satellite).

XKMPER is the earth's equatorial radius in km from WGS-72.

The position and velocity in km and km/s (in the "True of Date" coordinate system) ata certain time are obtained from the parameters X,Y,Z,XDOT,YDOT,ZDOT of COMMON/E1/ as

     XKMPER*X
     XKMPER*Y
     XKMPER*Z
     XKMPER*XDOT/60.
     XKMPER*YDOT/60.
     XKMPER*ZDOT/60.


after having made a call

     CALL SGP4(IFLAG,TSINCE)


where TSINCE is a REAL*4 variable giving the time in minutes relative to the epoch time specified on line 1 cols 19-32.

The INTEGER*4 variable IFLAG initializes the model for a new set of elements. It shall have another value then 0 for the first call of SGP4 and will be 0 after the call. For subsequent calls with unchanged values for XMO,XNODEO,OMEGAO,EO,XINCL,XNO,BSTAR (i.e no new TLE having been read) the variable IFLAG can be kept 0 resulting in a faster execution.

SGP4 accuracy

For a spacecraft in a typical Low Earth orbit the accuracy that can be obtained with the SGP4 orbit model is in the order of 1 km.

References

  1. Celestrak (http://celestrak.com/)
  2. Spacetrack documentation



Embed code:
Advertisements






Got something to say? Make a comment.
Your name
Your email address
Message