1.3 (Latest)


Samuel Y. W. Low

docs license linkedin orcid


LEOGPS is an open-source Python software which performs relative satellite navigation between two formation flying satellites, with the objective of high accuracy relative positioning. It uses a TKinter GUI to assist in processing your GPS measurements, and also provides a number of well documented functions, with minimal external package dependencies, useful for your processing (see advanced references below).


LEOGPS is not packaged on PyPI. A direct git clone is all you need to get started with the software.

LEOGPS solves for the double-differenced baseline (using float ambiguity resolution) between satellites flying in formation in Low Earth Orbit (LEO). As such, the relative positioning accuracy diminishes with increasing formation baseline lengths. For formations with baselines kept below 200km, the relative positioning accuracy using the double-differenced kinematic technique can be kept under 1 meter for a typical automotive or space grade GPS receiver.

LEOGPS currently supports only observations from the GPS constellation (L1/L2 frequency), with observation files in RINEX v2.XX format. LEOGPS also uses the precise ephemeris (.EPH) and clock bias and drift files (.CLK) provided by the University of Bern, Center for Orbit Determination in Europe (​CODE). As such, the coordinate frame used in the relative positioning is the International Terrestrial Reference Frame (ITRS) which is an Earth-Centered Earth-Fixed (ECEF) frame. Since the ephemeris files and RINEX v2 observations default to GPS Time, it is very important to also note that the time scale used in LEOGPS output files is GPS Time (as opposed to UTC).

This project also gives sincere appreciation and credit to the University of Bern, for their provision of the CODE FTP.

Documentation tree for LEOGPS is listed below.

Advanced References

For bugs, raise the issues in the GitHub repository. For collaborations, reach out to me (sammmlow@gmail.com). The project is licensed under the MIT license.

Written By: Samuel Y. W. Low

linkedin orcid