The MATLAB Solar System Ephemeris Toolbox is a set of MATLAB functions used to generate state data (position and velocity) for the Sun, nine planets, and the Earth’s moon. It uses the ephemerides provided by the Solar System Dynamics Group at NASA’s Jet Propulsion Laboratory in the form of Chebychev polynomial fits of numerical integration results for solar system motion. These functions provide the MATLAB equivalent of JPL’s FORTRAN routines used to construct binary ephemeris files, verify correct installation, and generate state data. In addition functions for calendar/julian date conversion and coordinate system transformations are included. The toolbox also has a graphical user interface which guides the user through the binary ephemeris file construction and verification process and can be used interactively for state data generation.
Before state data can be generated, the user must download ASCII ephemeris files from JPL, convert them to the binary format used by the toolbox, and verify this process. The toolbox contains functions to perform these tasks and a README file guides the user through this process. Alternatively, the user can use the GUI to perform these tasks.
Once the binary ephemeris files have been generated and verified, the user can use toolbox functions to either get barycentric/heliocentric state data for all bodies or get state data for one body relative to another in ephemeris native (J2000) coordinates. The user specifies the julian date at which these quantities are desired. Other toolbox functions can then be used to transform state data into the desired coordinate systems (e.g. true-of-date, Earth-fixed, etc.). These functions are designed to be used in interactive fashion from the MATLAB command prompt or in other user-written MATLAB scripts or functions. Alternatively, the GUI can be used to specify the range of julian dates of interest, the target and central bodies, and the coordinate system and state data will then be generated and displayed. The user can then examine this data in the GUI and/or export it to the MATLAB workspace for further processing.