Skip to content

ANISE

ANISE is a modern rewrite of the NAIF SPICE toolkit, with many additional features. ANISE provides a toolkit for Attitude, Navigation, Instrument, Spacecraft, and Ephemeris computations.

Answer questions like what will be the elevation of the Moon from a ground station on 21 Dec 2033, or will visible-light cameras on my spacecraft be able to image a given location in 3 orbital periods.

Github User survey

Installation

pip install anise
cargo add anise

Documentation

This documentation aims to follow the Diataxis method.

Lots more documentation is needed, and don't hesitate to request some by creating an issue on Github.

Validation

Refer to the explanation on validation.

Resources / Assets

For convenience, Nyx Space provides a few important SPICE files on a public bucket:

  • de440s.bsp: JPL's latest ephemeris dataset from 1900 until 20250
  • de440.bsp: JPL's latest long-term ephemeris dataset
  • pck08.pca: planetary constants ANISE (pca) kernel, built from the JPL gravitational data gm_de431.tpc and JPL's plantary constants file pck00008.tpc
  • pck11.pca: planetary constants ANISE (pca) kernel, built from the JPL gravitational data gm_de431.tpc and JPL's plantary constants file pck00011.tpc
  • moon_fk.epa: Euler Parameter ANISE (epa) kernel, built from the JPL Moon Frame Kernel moon_080317.txt

You may load any of these using the load() shortcut that will determine the file type upon loading, e.g. let almanac = Almanac::new("pck08.pca").unwrap(); or in Python almanac = Almanac("pck08.pca"). To automatically download remote assets, from the Nyx Cloud or elsewhere, use the MetaAlmanac: almanac = MetaAlmanac("ci_config.dhall").process() in Python.

Contributing

Contributions to ANISE are welcome! Whether it's in the form of feature requests, bug reports, code contributions, or documentation improvements, every bit of help is greatly appreciated.

License

ANISE is distributed under the Mozilla Public License 2.0 (MPL-2.0), offering a balanced approach to open-source by allowing the use of source code within both open and proprietary software. MPL-2.0 requires that modifications to the covered code be released under the same license, thus ensuring improvements remain open-source. However, it allows the combining of the covered software with proprietary parts, providing flexibility for both academic and commercial integrations.

For more details, please see the full text of the license or read a summary by Github.

Acknowledgements

ANISE is heavily inspired by the NAIF SPICE toolkit and its excellent documentation. Huge thanks to Grégoire Henry from the Royal Observtory of Belgium and Chris De Calverie from GAMA Space for their continued support of this work.