JuliaAstro / EphemerisSources.jl

Access HORIZONS and SPICE ephemeris sources with idiomatic Julia.
https://juliaastro.org/EphemerisSources.jl/docs
MIT License
6 stars 1 forks source link
astrodynamics astronomy ephemerides ephemeris

Tests Documentation JOSS DOI

πŸͺ EphemerisSources.jl

[!IMPORTANT]

The packages described in this documentation are not affiliated with or endorsed by NASA, JPL, Caltech, or any other organization! They are independently written packages by an astrodynamics hobbyist.

Installation

Choose one of the following, or manually install one or more of the sub-packages below.

pkg> add EphemerisSources
import Pkg
Pkg.add("EphemerisSources")

Overview

This project contains several packages which ease the processes of ephemeris sourcing and parsing, and one top-level package: EphemerisSources.jl. For usage examples, and instructions, please see the project's stable documentation. Any potential new features for this package will be released very quickly after they are developed; the stable documentation will always track the in-development documentation closely.

Contributions

Currently, this project only supports the fetching and parsing of Cartesian state vectors from two ephemeris sources: NASA JPL's Generic Kernels, and NASA JPL's Horizons platform. In addition, EphemerisSources.jl is very new, and test coverage is another major opportunity for improvement. This project welcomes all contributions and comments. If you would like to help add tests or parsing for the two other common ephemeris formats β€” observer tables and osculating orbital elements β€” please add a comment in an issue! If you find bugs, want to request features, or if you have any other comments about the project's capabilities and code, please file an issue. Please treat all contributors with respect, as described in the project's Code of Conduct.

Packages

This repository includes the top-level documentation for several solar system ephemeris tools, all written with the Julia Programming Language. To learn more about how to use these tools, consult the documentation website.

Package Description
EphemerisSources.jl A top-level package which provides, and re-exports, names from HorizonsAPI, HorizonsEphemeris, SPICEKernels, and SPICEBodies.
HorizonsAPI.jl A precise JPL Horizons REST API client implementation, with keyword arguments for each acceptable parameter.
HorizonsEphemeris.jl Convenience wrappers around the JPL Horizons REST API.
SPICEKernels.jl All generic kernels exported as variable constants.
SPICEBodies.jl Idiomatic wrappers around SPICE and SPICE.jl methods.

Paper

This repository holds a JOSS submission under paper/. The paper is published to as a pre-print to HTML, PDF, and Markdown on the gh-pages branch.

External Resources

Other Julia packages for interfacing with solar system ephemeris data are available, including the three external packages below. These are not affiliated with this repository, or this documentation's author.

Package Description
HORIZONS.jl Functions for spawning the telnet interface, and querying files.
SPICE.jl A Julia interface to the CSPICE library provided by NASA JPL.
Ephemerides.jl Ephemeris kernel reading and interpolation in pure Julia.