SGP4 Orbit Determination

angles-only SGP4 orbit determination for Earth-orbiting satellites
10 Downloads
Updated 28 Mar 2026

View License

This MATLAB project implements an angles-only SGP4 orbit determination system for Earth-orbiting satellites. It ingests multi-pass topocentric observations — right ascension (RA) and declination (Dec) in J2000 — from a ground station defined by its geodetic longitude, latitude, and altitude. An initial orbit estimate is bootstrapped using the classical Gauss method (anglesgauss.m), which solves for position and velocity at a middle epoch from three optical sightings. That Keplerian state is then converted into SGP4-compatible mean elements and refined through a multi-pass Levenberg–Marquardt least-squares optimizer, which minimizes RA/Dec residuals across all observed passes by propagating the SGP4 model forward (or backward) to each observation epoch. The pipeline correctly handles Earth orientation parameters (EOP) via IERS data and applies the full TEME→J2000 frame transformation chain — including precession, nutation, and sidereal rotation — to compute accurate topocentric range vectors. The final product is a TLE (Two-Line Element set) for the observed object, formatted with proper checksum encoding, which can be used directly in any SGP4-compatible propagator.

Cite As

Meysam Mahooti (2026). SGP4 Orbit Determination (https://www.mathworks.com/matlabcentral/fileexchange/183517-sgp4-orbit-determination), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2025b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Version Published Release Notes
1.1.0

The code was revised and optimized.

1.0.0