Ring-Moon Systems Node Open-Source Software

Open Source Python on GitHub

We provide a variety of useful tools in our GitHub repository. Modules may be installed by running the pip install command.

Name Description How to Install Supported Python Versions
cspyce Python interface to the SPICE toolkit pip install cspyce PyPI - Python Version
interval Dictionary keyed by ranges of floating-point numbers pip install rms-interval PyPI - Python Version
julian Calendar time and date calculations pip install rms-julian PyPI - Python Version
pdslogger Extension to the Python logging module pip install rms-pdslogger PyPI - Python Version
pdsparser Read and manipulate PDS3 label files pip install rms-pdsparser PyPI - Python Version
pdstable Read and manipulate ASCII tables with PDS3 labels pip install rms-pdstable PyPI - Python Version
pdstemplate Generate PDS labels based on templates pip install rms-pdstemplate PyPI - Python Version
polymath Wrapper for NumPy that adds easy masks and vector computation pip install rms-polymath PyPI - Python Version
solar Tabulates the solar spectrum vs. wavelength pip install rms-solar PyPI - Python Version
tabulation A class that performs linear interpolation pip install rms-tabulation PyPI - Python Version
textkernel Reads SPICE text kernels, creating a Python dictionary pip install rms-textkernel PyPI - Python Version
translator Abstract class and subclasses for mapping strings such as file paths to other information pip install rms-translator PyPI - Python Version
vax Converts Vax-format floats to IEEE pip install rms-vax PyPI - Python Version
vicar Reads and manipulates VICAR formated files and their labels pip install rms-vicar PyPI - Python Version

The Astropy-affiliated astroquery package provides a Python interface to the ephemeris tools provided by the RMS Node via the astroquery.solarsystem.pds submodule

Legacy C Libraries

This is a set of downloadable software tools developed at the PDS Ring-Moon Systems Node. They enable users to perform a variety of common tasks related to planning ring observations, analyzing data, or carrying out dynamical calculations. Tools are generally written in standard C, and are callable from programs written in either C or FORTRAN-77.

Software toolkits are provided in zip, tar and gzip formats. They have been tested on workstations running Unix and VMS, but are likely to run on other platforms with only minimal modifications. They come with complete build instructions and scripts.

Note: This software is licensed under the terms of the Academic Free License v. 3.0. See the Open Source Initiative for further information.

Kepler Library

A set of routines for performing calculations related to orbital motion around an oblate planet. Routines can be used to predict satellite locations and to calculate arbitrary resonance locations in planetary rings.

  • Read the AAREADME file for more information.
  • Browse the delivery package including source code.
  • Download the Kepler Library 1.0.2: .zip, .tar, or .tgz

Julian Library

A set of routines for manipulating dates and times. It includes routines for conversions between Universal Time (UTC), Atomic Time (TAI), and Ephemeris Time (ET). It also performs conversions between calendar dates and Julian dates, and interprets or formats dates and times in a variety of styles.

  • Read the AAREADME file for more information.
  • Browse the delivery package including source code.
  • Download the Julian Library 1.3.3: .zip, .tar, or .tgz

Profile Library

A set of object-oriented routines for manipulating ring occultation data sets. Tools are provided for reading PDS-labeled data files, applying geometry and calibration models, filtering and resampling. The toolkit supports all occultation data archived by the Ring-Moon Systems Node.

This toolkit is built upon the PDS’s Object Access Library (OAL).

  • Read the AAREADME file for more information.
  • Browse the delivery package version 1.3.1, as optimized by the Ring-Moon Systems Node for this toolkit.
  • Download the Profile Library 1.3: .zip, .tar, or .tgz

Object Access LIbrary (OAL) (strongly recommended if you also download the Profile Library).