At face value this seems like a trivial question the TLE's are the input to SGP4, but my question is a little more specific.

Given a TLE, the values are in specific units (eg. argument of perigee is in degrees). The equations listed in space track report #3 do not specify (as far as I can tell - I don't know FORTRAN) what the units the values should be in for computation. Largely this may not matter (degree or radians is simply just a question of using the correct sin/cos) but for some of the equations where the values are multiplied by constants (EG. the equation for D4: has 221 * a0Dash and 31 * s) I'm concerned that the units used may matter!

As far as I can tell the following values are used by SGP4:

First Time Derivative of the Mean Motion divided by two
BSTAR drag term
Right ascension of the ascending node
Argument of perigee
Mean Anomaly
Mean Motion

So what conversions must I make before I can start the set of equations outlined in space track report #3 page 10!

I should note that one of the motivations for asking this is the value AE is given as 1 in the constants section toward the end of the document, I can't for the life of me work out why this value has any place in the equations!

  • $\begingroup$ "I'm ignoring the Epoch since that's just a timestamp" Try changing the epoch by 0.001 day and see what happens to the position. Then (re)consider what Mean Anomaly means. $\endgroup$
    – uhoh
    Commented Apr 23, 2018 at 4:43
  • $\begingroup$ Reading vintage FORTRAN is an acquired skill, usually acquired back in the 20th century. Which language(s) are you most comfortable with? $\endgroup$
    – uhoh
    Commented Apr 23, 2018 at 4:51
  • 1
    $\begingroup$ @uhoh what I meant about the time stamp is that I assume it's in seconds - that being said I've edited the question to include it! Better safe than sorry. I'm comfortable (ish) with Python and VB.Net. I'm trying to understand the ins and outs of SGP4 not just use someone else's implementation (I know there's a python lib out there!) $\endgroup$
    – ThePlanMan
    Commented Apr 23, 2018 at 10:23
  • 1
    $\begingroup$ Understanding SGP4 is admirable, I certainly don't yet, at least ;-) $\endgroup$
    – uhoh
    Commented Apr 23, 2018 at 10:25

1 Answer 1


I will recommend you to work with CPP version that can be found here:


Aditional information can be found here:


  • $\begingroup$ I've upvoted this answer as it contains useful information but strictly speaking it doesn't answer my question. $\endgroup$
    – ThePlanMan
    Commented Apr 23, 2018 at 17:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.