Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

#97 Improper ingestion of TLEs with spaces padding epoch

1.4
open
TLE (1)
fixed
5
2014-04-17
2014-04-03
Henry Hallam
No

Fields in a TLE may be left-padded with either zeros or spaces [1].

In the following TLE, the epoch is the 92nd Julian day of 2014.

0 Flock1-15 0721
1 90115U 98067DS  14 92.08870996  .00166554  00000-0  17775-2 0  1391
2 90115 051.6455 115.1973 0007045 034.4456 325.6785 15.62888609    02

Convert_Satellite_Data in sgp_in.c tries to treat the two fields 'epoch year' and 'epoch (fractional) day' as a single double, i.e. it calls g_ascii_strtod on "14 92.08870996".

This causes a bogus epoch, so the propagated orbit has decayed, resulting in 100% CPU, crashes, wildly erratic orbit etc.

The attached patch fixes it by inserting zeros if needed prior to calling g_ascii_strtod.

[1] http://celestrak.com/columns/v04n03/ "In other words, an epoch can be represented as either 98001.12345678 or 98 1.12345678"

1 Attachments

Discussion

  • Hi Henry,

    Thanks for the patch and sorry for the late reply. Your patch will be applied.

    Alex

     
    • assigned_to: Alexandru Csete
    • Resolution: new --> accepted
    • Milestones: undecided --> 1.4
     
    • labels: --> TLE
    • Resolution: accepted --> fixed
     
  • Thanks for the fix. The patch has been applied.

     
  • Henry Hallam
    Henry Hallam
    2014-04-17

    Thanks Alex!