question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Propagation seems to be wrong for TLEs with low eccentricity

See original GitHub issue

Hi,

I’m stuck with the following. I’m doing many orbit calculations for polar earth satellites and I can’t understand why, when the eccentricity falls below some value, the perigee is not where it is supposed to be.

OK case:

  1. Take the following TLE
1 99999U          19001.00000000 -.00000000  00000-0  00000-0 0 00001
2 99999 090.0000 270.0000 0100000 000.0000 000.0000 14.00000000000000
  1. Propagate the TLE to complete nearly an orbit using, say dt = 1 min , and compute distances for each position to the center of the Earth. As right ascension of ascending node is 0.0 and the argument of perigee is also 0.0, perigee position should be a point on the equator.
  2. Find the lowest distance, that’s the perigee. Plot it.
  3. You will find that the perigee happens for a point very nearly to the equator (OK because right ascension of ascending node is 0.0 and the argument of perigee is also 0.0).

NOT OK case:

  1. Take the following TLE (only differs in eccentricity from the former, now is 0010000)
1 99999U          19001.00000000 -.00000000  00000-0  00000-0 0 00001
2 99999 090.0000 270.0000 0010000 000.0000 000.0000 14.00000000000000
  1. Repeat step 2 from OK case.
  2. Repeat step 3 from OK case.
  3. For me, perigee is not a point very nearly to the equator! (not OK, given that right ascension of ascending node is 0.0 and the argument of perigee is also 0.0 then the perigee should a point very near to the equator). The lowest distance to the center of the Earth occurs for me at an angle of approx. 60.3 degrees from the ascending node.

What am I doing wrong?

THX, Alejandro

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:10 (4 by maintainers)

github_iconTop GitHub Comments

1reaction
MichaelRThompsoncommented, Jun 25, 2019

Confirmed the above results with the my own SGP4 propagator. It’s not something inherently wrong with the propagator.

SGP4 takes into account multiple perturbations that are messing with your argument of perigee. As your orbit gets closer to circular (a lower eccentricity value), argument of perigee becomes more and more sensitive given that it’s closer to a circular orbit, where argument of perigee is pretty much undefined.

For your two test cases:

  • Eccentricity - 0.01 Argument of perigee varies between ~355 and 15 degrees. A 20 degree range.

  • Eccentricity - 0.001 Argument of perigee varies between ~315 and 90 degrees. A 135 degree range.

You’re approaching your problem with the assumption that your argument of perigee is going to stay relatively constant, but in reality it is varying by quite a bit. Your two test cases are at about 800 km altitude, and the perturbations due to things like J2 are still quite strong there.

I created a 3rd test case using the TLE:

1 99999U          19001.00000000 -.00000000  00000-0  00000-0 0 00001
2 99999 090.0000 270.0000 0010000 000.0000 000.0000 5.00000000000000

This is a much higher orbit, and the argument of perigee is bounded between ~5 and 45 degrees.

As you can see, your issue isn’t really a problem with the propagator, it’s an issue with perturbations. Especially at low eccentricities, your argument of perigee can become really sensitive to perturbations, and your periapsis can move around a good bit.

0reactions
MichaelRThompsoncommented, Jun 26, 2019

I’m not sure that this case specifically needs to be addressed, but looking over the documentation, a quick introduction to the SGP4 propagator could be helpful, probably on the Earth Satellites page here. Just an overview of what kind of perturbations are included and what that can do to some of your orbital elements.

I think it could fit it nicely with the limitations section up at the top. Let me know if you’d like any help in writing something up.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Negative eccentricity error when propagating numerically
Hello, I'm building a numerical propagator class with the Python wrapper, and facing a very strange error: org.orekit.errors.
Read more >
What would the TLE data (Mean Motion, Eccentricity ...
I am currently making a satellite tracker app for android. I want to test my orbit propagation algorithm and I want to make...
Read more >
Correcting TLEs at epoch: Application to the GPS constellation
This initial error (sometimes called "bias") must be distinguished from the propagation error – although they are not exclusive. TLEs provide Brouwer-Lyddane ...
Read more >
ACCURACY ASSESSMENT OF SGP4 ORBIT INFORMATION ...
The resulting TLE sets were propagated forward and ... propagation results in a bad orbit prediction especially ... determination of the eccentricity.
Read more >
Simplified Approach to Detect Satellite Maneuvers Using TLE ...
Just using TLEs to detect maneuvers can lead to false results as the accuracy of ... inclination, RAAN, eccentricity, and orbital energy, were...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found