Skip to content

tlaguz/orbit-determination

Repository files navigation

Simple orbit determination program

Tested on:

  • Python: 3.9.1
  • Numpy 1.20.1

Usage:

> python3 main.py
Simple orbit determination program.
Usage:
    python3 main.py [obs_file] i j k

where [obs_file] is an Observer Table ephemeris generated by 
NASA JPL HORIZONS system containing minimum three observer records 
with: UT date, RA(ICRF), DEC(ICRF) each,
and i j and k are three observation numbers from [obs_file]
which will be used for orbit determination.

The program has built in Earth ephemeris for dates 01.01.2018 - 01.01.2021.
Only dates after 31.12.2016 are properly calculated (see: timestamp.py line 42). 

Example:

Use: python3 main.py pallas.csv 0 1 2 to calculate orbital elements of Pallas. Output:

❯ python3 main.py pallas.csv 0 1 2
Solution: 1:
i     |                 Inclination: 34.83569381273209 deg
Omega | Longitude of ascending node: 172.8963928017055 deg
omega |       Argument of periapsis: 311.3876670682875 deg
a     |             Semi-major axis: 2.7870487471161463 au
e     |                Eccentricity: 0.23143775796980312
tp    |           Time of periapsis: 2458324.58313327 JDTT

Solution: 2:
i     |                 Inclination: 12.939241024033372 deg
Omega | Longitude of ascending node: 255.8684226804715 deg
omega |       Argument of periapsis: 299.77590183310224 deg
a     |             Semi-major axis: 1.3129339225720948 au
e     |                Eccentricity: 0.5121664517777182
tp    |           Time of periapsis: 2458573.792252189 JDTT

You can confirm these solutions with Orbital Elements ephemeris (file: pallas_orbit.csv).

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages