Orbital Mechanics Software Tutorials

by Dr. T.S. Kelso
2023 Nov 24
Updated 2026 Jun 15

Background

Twenty-five plus years ago—from 1994 to 1998—I wrote a series of articles for the "Computers & Satellites" column of Satellite Times. They covered a variety of topics from how to transform between various coordinates systems used in orbital mechanics to how to find the rise and set times of a satellite.

But one of the assumptions in many of those articles was that you had a way to calculate the position of a satellite. CelesTrak made the GP data easily available in the TLE format and provided documentation on the SGP4 orbital propagator needed to use that data, but originally the source code was only available in FORTRAN and many users had no way to use it without porting it to another language first. And there was no way at the time to run SGP4 and the associated algorithms needed to use it effectively on a web server.

Today we can run complex algorithms like SGP4 using JavaScript. JavaScript code is actually run on the user's machine not the server, which means CelesTrak can provide the software and the user can download and run it on their local machine. That allows CelesTrak to efficiently provide validated code to support thousands of users at a time. Of course, that means the user will experience the best performance if they have good network bandwidth (to download the software), a fast machine with ample RAM, and use a modern browser that provides an efficient implementation of JavaScript.

These tutorials will provide a framework for how to apply basic orbital mechanics techniques to not only help users better understand the topics, but to be able to use the software as a way to validate their own software development efforts.

The Road Ahead

The plan is to cover these topics: