Ring-Moon Systems Node Open-Source Software

Open Source Python on GitHub

We provide a variety of useful tools in our GitHub repository. Browse the entire collection at:

All are written in Python 2.7. Download these files and put them in a directory that is part of your PYTHONPATH environment variable.

Name Description Also requires
cspyce* Python interface to the SPICE toolkit NAIF’s ‘C’ implementation of SPICE, SWIG
gravity Tools for calculating orbital elements around an oblate planet  
julian Calendar time and date calculations julian_dateparser.py
pdsparser Read and manipulate PDS3 label files  
pdstable Read and manipulate ASCII tables with PDS3 labels julian, julian_dateparser.py, pdsparser
picmaker Creates views of PDS images in many formats such as JPEG colornames, tiff16, pdsparser, tabulation
solar Tabulates the solar spectrum vs. wavelength tabulation
textkernel Reads SPICE text kernels, creating a Python dictionary julian, julian_dateparser.py
tiff16 Reads and writes 16-bit TIFF files  
vax Converts Vax-format floats to IEEE  
vicar Reads and manipulates VICAR format files and their labels  

[*] Although our cspyce library is well maintained, we recommend spiceypy as a more widely used alternative.

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.

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.

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).

Toolkit Order Form

Click here to download any or all of the toolkits.