Skip to content

Verification Test Cases

Essentially, these cases allowed several features of SGP4 to be tested, but the answers were generally agreed upon during the testing phase of research for this paper. Cases for which there were technical questions about how the code was implemented are discussed in a subsequent section. The element sets were sorted numerically in the computer file to aid location of specific test cases, but are grouped here by effect. Comments were added to indicate what each test was accomplishing. The original SGP4 model had two types defined in the code, normal (near Earth) and ‘simplified drag’, while the original SDP4 had three types, normal (deep space), resonant (12^h Molniya style) and synchronous (24^h GEO). Table 1 shows a sample. The file (sgp4-ver.tle) is on the Internet at the web site listed at the end of the paper, and in the Appendix.

Table 1. SGP4 Verification Test Cases. These satellites highlight the primary test cases used for analysis and verification of the SGP4 code. A few other satellites are included in the full test set. The satellites used for the figures are also included, but at a reduced ephemeris density. The file gives the applicable time range in minutes from epoch (MFE). The original STR#3 tests are kept for continuity.[^9]

SatelliteCategoryComments
00005Near EarthTEME example satellite.
28129Deep SpaceA GPS navigation satellite in a near circular 12^h orbit.
26975ResonantMolniya style debris launch. Exercises the 0.5 to 0.65 eccentricity branches in deep space.
08195ResonantMolniya launch. Exercises the 0.65 to 0.7 eccentricity branches of the deep-space code.
09880ResonantMolniya launch. Exercises the 0.7 to 0.715 eccentricity branches of the deep-space code.
21897ResonantMolniya launch. Exercises the eccentricity branches above 0.715, with a negative Bstar value.
22674ResonantRocket body, similar to 21897 (e > 0.715) but positive Bstar.
28626SynchronousLow-inclination (< 3 deg) geostationary orbit that shows the problems in premature correction of negative inclination at around 1130 minutes from epoch.
25954SynchronousLow-inclination GEO case like 28626, shows negative inclination problem at around 274 minutes from epoch.
24208SynchronousGeostationary orbit above 3 deg.
09998SynchronousRelatively high eccentricity for GEO (e = 0.027) shows secular integrator problem clearly.
14128, 04632SynchronousGeostationary orbit close to 0.2 radian inclination. Shows Lyddane choice problem at about 2080 minutes and about -5000 minutes from epoch.
20413Deep SpaceLong period orbit (~4 days) shows Lyddane choice at 1860 minutes from epoch. It also demonstrates processing through a leap second, although the SGP4 code is independent of any leap second processing. Leap seconds are handled in any external program using the SGP4-derived ephemerides.
23333Deep SpaceVery high eccentricity, shows Kepler solution problems in Report #3 code.
28623Deep SpaceDeep-space object with low perigee (135.75 km) that uses the branch (perigee < 156 km) for modifying the ‘s4’ drag coefficient.
16925Deep SpaceDeep-space object with very low perigee (82.48 km) that uses the second branch (perigee < 98 km) for limiting the ‘s4’ drag coefficient to 20.
06251Near EarthNear Earth normal drag case. The perigee of 377.26 km is low, but above the threshold of 220 km for simplified equations, so moderate drag case.
28057Near EarthNear Earth normal drag case but with low eccentricity (0.000 088 4) so certain drag terms are set to zero to avoid math errors / loss of precision.
29238NE/SNear Earth with perigee 212.24 km, thus uses simplified drag branch (perigee < 220 km) test.
28350NE/SNear Earth low perigee (127.20 km) that uses the branch (perigee < 156 km) for modifying the ‘s4’ drag coefficient. Propagation beyond approximately 1460 minutes should result in error trap (modified eccentricity too low).
22312NE/SNear Earth with very low perigee (86.98 km) that uses the second branch (perigee < 98 km) for limiting the ‘s4’ drag coefficient to 20. Propagation beyond approximately 2840 min should result in error trap (modified eccentricity too low).
28872NE/SSub-orbital case (perigee -51 km, lost about 50 minutes from epoch) used to test error handling.
23177, 23599Deep SpaceLyddane bug at less than 70 min and 380 min respectively, with atan2(), but no quadrant fix.
26900Deep SpaceLyddane bug at 37,606 min, negative inclination at 9313 min.
29141Near EarthLast stages of decay. Crashes before 440 min.
11801 / 88888Deep Space, Near EarthOriginal STR#3 report test cases.