- Python: 3.9.1
- Numpy 1.20.1
> 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).
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
).