Propagation seems to be wrong for TLEs with low eccentricity
See original GitHub issueHi,
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:
- 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
- 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 is0.0
and the argument of perigee is also0.0
, perigee position should be a point on the equator. - Find the lowest distance, that’s the perigee. Plot it.
- 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 also0.0
).
NOT OK case:
- 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
- Repeat step 2 from OK case.
- Repeat step 3 from OK case.
- 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 also0.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:
- Created 5 years ago
- Comments:10 (4 by maintainers)
Top 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 >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
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:
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.
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.