Satellite Times

Orbital Propagation: Part II

By Dr. T.S. Kelso

March/April 1995

In our last column, we covered the basics of modeling as they apply to predicting the position of a satellite in earth orbit. As with any model, the complexity of the orbital model we choose depends upon several factors, chief among these being the accuracy of the desired predictions. At the same time, since we will be calculating predictions from this orbital model on a computer, we would also like to reduce the computational complexity of the model. Unfortunately, these two goals conflict, so we will seek a model which strikes an appropriate balance between the model's fidelity (accuracy) and the computational burden of producing a prediction.

In order to obtain the appropriate level of model fidelity, it will be necessary to determine the types and relative magnitudes of the forces acting upon the satellite. For our orbital model, these include the gravity of the earth along with perturbations due to the nonuniform mass distribution of the earth, gravitational attraction of the sun, moon, and planets, and atmospheric drag. Which of these forces are most important will depend not only on their relative magnitude but upon whether their effects are periodic or secular.

A periodic effect, such as your car's antenna whipping back and forth as you drive down the road, has little effect on the position of the tip of the antenna over time, even though the forces involved may be rather large. If you only need to know the position of the antenna tip to within one meter, you will likely ignore this effect. However, a secular effect, one which consistently increases or decreases over time, may have a considerable effect even though the force involved may be small. An example of a secular effect would be that of a light wind blowing a sailboat across the water.

As far as computational complexity is concerned, we noted at the close of the last column that there were two primary computational methods of implementing an orbital model. One was to start with a satellite's position and velocity and to sum, or integrate, all of the forces acting on the satellite. This total force is assumed to act on the satellite over some small time span, at the end of which a new position and velocity is calculated and the process is repeated. When implemented on a computer, this approach is known as numerical integration. The advantage of this approach is that if sufficient detail is given to the forces acting upon the satellite and small enough time steps are used, highly- accurate predictions can be obtained. The down side to numerical integration is that we must calculate the satellite's position and velocity for each time step between our known initial conditions and our desired prediction time.

Depending upon the size of the time step and the length of the time interval, the computational burden for even a single satellite can be large. Now, multiply this problem by the approximately 7,500 objects currently tracked by NORAD (the North American Aerospace Defense Command) and you'll begin to appreciate the need for another solution. We would prefer to have a model which provides an analytical solution, that is, a solution wherein if we know the time of interest we can directly calculate the state of the satellite's orbit at that time without the need to 'step' along in time. This is our second computational method of implementing an orbital model.

During the 1970s, NORAD came up with just such a solution: a fully-analytical orbital model. With this model, known as SGP (for Simplified General Perturbation), a user can calculate a satellite's position and velocity at a particular time directly, without the need for numerical integration. The result is a considerable reduction in computational burden to support tracking the growing population of earth-orbiting satellites.

Obviously, some tradeoffs had to be made in the process of developing SGP. As with any model, certain simplifications had to be made and these simplifications place restrictions upon how the model can be used. In particular, the mass of the satellite relative to the mass of the earth is assumed to be negligible. In addition, the satellite is assumed to be in a low-eccentricity, near-earth orbit and not in a rapidly-decaying orbit. These conditions were true for a large percentage of the satellite population at the time SGP was developed and allowed a model to be formulated accounting only for the primary perturbations on these satellites due to the earth's nonuniform mass distribution and atmospheric drag.

Subsequent refinements to SGP extended this theory to include a semi-analytic treatment of orbits with periods greater than 225 minutes. While this theory does depend to some extent upon numerical integration, the computational burden is still considerably reduced. The break at 225 minutes (about 6,000 km altitude) is the result of a somewhat natural gap which has resulted from historical choices of orbits for various satellite missions and a crossover in significant perturbing effects; above the gap the primary perturbing forces are no longer atmospheric drag and the earth's nonuniform density, but orbital resonances with the earth's nonuniform gravitational field, solar and lunar gravitational forces, and solar radiation pressure. This new model is referred to as SGP4 and is the model currently in use by NORAD and the United Stated Space Command.

You may be wondering, at this point, why I am focusing on the history of SGP4. Certainly, there are many other models, many of which are more accurate than SGP4. But SGP4 has one thing going for it that none of the others do: data. Not unlike the advent of automobiles running on unleaded gasoline, it didn't make any difference how slick a new car you had if you couldn't find any unleaded gas. Most other orbital models only provide data for a limited number of satellites (such as the space shuttle). NORAD, on the other hand, is responsible for tracking all satellites on a daily basis and it uses SGP4 to do that. This means that orbital data for this model is available for all earth-orbiting objects capable of being tracked by the US Space Surveillance Network.

But we're not talking about unleaded versus regular gasoline here. Aren't all orbital element sets alike? After all, they all measure things like inclination and semi-major axis (terms we'll define further in a future column) or I can convert to these terms. Why can't I take the NORAD elements and use them in my favorite tracking program (which doesn't use the SGP4 model)? Allow me to use a computer analogy here to explain.

Most of you are familiar with various algorithms for compressing data. Whether you know them by their formal names, such as run-length encoding, Huffman or LZW compression, or by the terms used by some of the popular archiving packages, such as squeezing, imploding, crushing, or the like, you wouldn't be too happy with the result if someone sent you data compressed by one method and you used another to uncompress it. Of course, your software would probably report an error, but that's not true of orbital software. But the result will be the same: errors.

The two-line orbital element sets made available by NORAD (and redistributed by NASA) are mean Keplerian orbital element sets. The mean values for each element are generated using the SGP4 orbital model. The effects of the major perturbing forces are incorporated into these mean values in a very specific way using SGP4 and SGP4 must be used to generate accurate predictions. Failure to do so will result in errors, the magnitude of which will depend heavily on the type of orbit being modeled. These errors are typically manifested as large time errors in satellite signal or visual acquisition or being unable to locate the satellite at all.

The implications of the last couple of paragraphs should be clear. Just as you wouldn't expect to find a program compressed with LHARC to be distributed with a .ZIP extension, the only data distributed in the two-line format should be NORAD-generated SGP4-compatible data. Data from other sources should never be reformatted into the two-line format just so it can be fed into a particular software package unless you don't care about the accuracy of the results (just as you wouldn't rename a file with an .LHA extension to .ZIP just so you could use PKUNZIP).

Many popular commercial, shareware, and public domain satellite tracking packages implement SGP4 and you should check for this feature if you are concerned about accurate predictions. We will review some of these packages in a future column. And, if you are concerned about the source of your data, allow me to suggest two reliable sources. Daily updates of NORAD-generated two-line orbital element sets are available via Internet (anonymous ftp, gopher, or mosaic) on in the directory pub/space or on the Celestial BBS at 205/409-9280 [Neither of these services is currently available. Data can now be found only on the CelesTrak WWW site.]. Both services are available free of charge to all users.

In our next column, we will explore how the NORAD two-line element sets are generated and give some numerical examples to illustrate the magnitude of the errors which can result from improper combinations of models and data. I look forward to seeing you here next time!

The author is an Assistant Professor of Space Operations at the Air Force Institute of Technology and holds the rank of lieutenant colonel in the United States Air Force. He can be reached on Internet at

TLE Data Space Data
Current GPS
Archives EOP
Documentation Space Weather
SATCAT Columns
Boxscore Software
We do not use cookies on CelesTrak and we do not collect any personal information, other than IP addresses, which are used to detect and block malicious activity and to assess system performance. We do not use IP addresses for tracking or any other purposes. No personal data is shared with third parties. For further details, see AGI's privacy policy.

Dr. T.S. Kelso []
Follow CelesTrak on Twitter @TSKelso
Last updated: 2018 Jun 19 18:57:30 UTC
Accessed 86,504 times since 2000 December 16
Current system time: 2019 Dec 05 16:43:33 UTC