SPICE Domestic Training Class for 2024
on the East Coast of the U.S.
October 23 - 25, 2024
Maryland Fire and Rescue Institute, University of Maryland

First Announcement: July 7, 2024

NASA's Navigation and Ancillary Information Facility (NAIF), located at the Caltech/Jet Propulsion Laboratory (JPL), announces a "SPICE" Training class on the East Coast of the U.S. hosted by the Small Bodies Node (SBN) of the Planetary Data System (PDS).

The class will be held at the Maryland Fire and Rescue Institute, University of Maryland on October 23 - 25, 2024. The class is free and open to all, but read the remainder of this announcement for important details.

SPICE is an ancillary information system providing scientists and engineers access to spacecraft orbit, attitude and similar information needed to determine observation geometry used in planning and analyzing space science observations. SPICE is frequently used for mission engineering functions as well. Check https://naif.jpl.nasa.gov/ for further information about SPICE. The SPICE system was conceived for and remains primarily focused on solar system exploration (planetary) missions, but has also proven useful for heliophysics and earth science missions, and for a variety of other purposes.

Class Overview

This class will be very similar to previous SPICE classes. It should be considered a "beginner's" class. If you have taken a previous class, or are already a frequent SPICE user, this class may not be very interesting unless you need a refresher on some of the basics of SPICE.

The class will begin at 8:30 a.m. and will conclude around 5:00 p.m. each day. On the third day we anticipate the most important items will have been covered by lunch time. See the preliminary agenda (PDF) for details about the class syllabus and schedule. (Subject to some change.)

The class will be conducted in English.

The class is intended for those who will write software that will make use of SPICE data. People not intending to do programming using SPICE software may not find this class useful, although the lessons will also be offered using NAIF's WebGeocalc tool. (See a note about WebGeocalc below.)

The class is not well suited for those whose principal job is producing SPICE kernels -- the class focus is primarily on using kernels to determine various kinds of mission geometry for scientific or engineering purposes.

There is no fee for this class, but attendees will be responsible for their own travel, lodging, per diem and related expenses. Sorry, but NAIF is not able to offer any kind of travel support.

The class is open to all domestic and foreign persons who are now participating -- or may participate in the future -- in any space exploration endeavor where SPICE capabilities could be useful. This includes education, public outreach and commercial ventures. There are no U.S. export or other attendance restrictions. Important rules regarding use of SPICE are published on the Rules page at the NAIF website. Potential class attendees should read and understand these rules before registering for the class.

While this class is open to all, the NAIF group is generally not able to provide follow-up support or consultation except to those projects, groups and individual scientists and engineers covered by NASA funding for NAIF. A table listing those currently eligible for various levels of support from NAIF may be accessed from the Support page at the NAIF website.

If you are trying to decide whether or not to attend the class, it might be useful to consult with a colleague who has already taken it. Another possibility would be for you to look at the SPICE Tutorials and Lessons available on the NAIF server as similar versions of these materials are used in the live class.

If you think that any of your colleagues might be interested in this class, please send a pointer to this announcement to them.

Class Format

The class will interleave presentations of SPICE tutorials, done by NAIF staff, and "open-book" programming lessons undertaken by the students using their own laptop computers. The programming lessons are broken into chunks of increasing complexity. They are accompanied with needed data, tips, references, correct answers, and NAIF's own code solutions. The NAIF staff will answer student questions and offer assistance as students work through these programming exercises. There are no quizzes or tests.

Students should have some familiarity with writing programs in one of the NAIF-supported languages -- Fortran 77, C, IDL, MATLAB -- or in the third party supported Python interface to CSPICE, SpiceyPy. Familiarity with writing code and building and running executables on the laptop brought by the student is needed. It would also be helpful if the student has some prior experience in dealing with "space mission geometry."

An alternative to writing SPICE-aware code during the class exists. Most (but not all) of the lessons can also be done using NAIF's WebGeocalc tool deployed on the WGC and WGC2 servers. If you plan to use WebGeocalc in place of writing code, please check the appropriate box on the registration form.

It is sometimes helpful if two or three colleagues work each programming lesson together -- it's your choice.

Class Technical Prerequisites and Preparation

Each student or student group must bring a laptop computer having an operating system supported by NAIF. Check the NAIF server Toolkit page for the NAIF-supported environments and to download the SPICE Toolkit for any of them. Check SpiceyPy documentation installation page for SpiceyPy installation instructions. Students must use the specified version of the SPICE Toolkit, which is N0067, released in January 2022.

Before coming to the class, students will be responsible for having installed the Toolkit or SpiceyPy, an appropriate compiler, Python, IDL or MATLAB package (and license), and a program development environment or text editor suitable for writing code in the student's selected programming language.

Also before coming to the class each student or student group must download the programming lesson package for the chosen language. Students should have also tested their computer and compiler, Python, IDL or MATLAB installation, with the SPICE Toolkit or SpiceyPy to ensure these work together properly. Convince yourself that you can write, build and execute a small SPICE-based program.

For IDL and MATLAB users: a WiFi Internet connection will be available in the classroom. We anticipate it will work with your institutional IDL or MATLAB license server -- presumably through a VPN connection -- but we cannot guarantee this. It might be best for you to arrange for a temporary loaner license for your laptop to avoid this potential problem.

Students wishing to have the tutorials available on their own laptop should download class tutorials before coming to the class. The size of the tutorial set is quite large, in excess of 700 pages; we suggest you not print these.

Closer to the date of the class NAIF will announce to those who have registered for this class when the programming lessons and tutorials are available for downloading. Don't download those currently available on the NAIF website as some updates are being made.

It is imperative that ALL of the preparatory work mentioned above be successfully completed well before you depart for this class as there will be little opportunity to fix problems once the class has begun!


While there is no charge for taking the class, registration is required in order to ensure availability of a seat. Registrations will be accepted according to the order in which they are received.

Please indicate your interest in this class by filling out and returning the form at the end of this announcement. Cut and paste the filled out form into an email sent to Boris Semenov (boris.v.semenov@jpl.nasa.gov). Further announcements about class-specific tutorials and lessons and additional class logistics will be sent only to those who have registered or indicated an interest in the class using this form. Please use a separate form for each applicant.

NASA, JPL and NAIF reserve the right to cancel the class at any time, for any reason, including lack of a sufficient number of registrations. Also reserved is the right to cut off registrations if needed to keep the class to a manageable size--about 60 students.

Questions about the class or about registration should be directed to Boris Semenov (boris.v.semenov@jpl.nasa.gov).

Venue Information

The class will be held at the Maryland Fire and Rescue Institute, University of Maryland located at 4500 Campus Dr, College Park, MD 20740.

Out of town students must make their own hotel reservations. Of course you are free to stay at a lodging of your choosing; a few hotels in this area that are within 15-25 minute walking distance of the venue.

The institute is also just a 15 minute walk from the College Park Metro Station.

For those traveling by car it has ample free on-site parking.

Airport Information

Three airports serve the Washington D.C. area: Ronald Reagan Washington National Airport (DCA), Washington Dulles International Airport (IAD), and Baltimore/Washington International Thurgood Marshall Airport (BWI).

Logistics Details/Advice

The classroom may be cold at times: be sure to bring a sweater or jacket.

Each session will start promptly at the time shown on the agenda: don't be late.

NAIF reserves the right to adjust the agenda somewhat to meet time constraints.

Attendees are free to come and go as you like, but since most programming lessons build on the previous lesson, you may easily fall behind if unable to be present for each class session.

To accommodate those who must depart early on the last day, we will attempt to complete the most important material by lunch on Friday..

Light snacks and beverages will be provided each morning and afternoon.

Students are responsible for their own lunches and will have an option to pre-order lunch from UMD catering services. They may also chose a food delivery service of of their liking. There are no restaurants within a short walking distance of the venue.

We might try to arrange an optional group dinner on Thursday evening should there be sufficient interest.

Registration Form

Please cut and paste into an email just the portion below beginning with "SPICE 2024 Training Class Registration or Notice of Interest". Mail it back after having filled in the appropriate fields and placing "X"s in the boxes [___] that apply.

Further detailed announcements will be sent only to those who have registered or indicated an interest in the class by returning this form.

Should you have questions about this registration form, please contact Boris Semenov: boris.v.semenov@jpl.nasa.gov.

SPICE 2024 Training Class Registration or Notice of Interest
October 23 - 25, 2024
Return this form to
(Please use a separate form for each person)

Name: ____________________

E-mail: ____________________

Institution (if any): ____________________

Flight project affiliation(s) (if any): ____________________

Instrument affiliation(s) (if any): ____________________

[___] I will definitely attend the SPICE Class on October 23 - 25, 2024. I understand acceptance is limited to space available. I understand the class could be canceled if there are not sufficient registrations.
[___] I may attend the SPICE Class on October 23 - 25, 2024. I will let you know no later than October 1. I understand acceptance is limited to space available, and is offered on a first come, first served basis to definite registrants.

Please fill in as much of the following as you can now. If you don't yet know answers to some questions, we'll ask you for them later.

The name and version of the computer operating system I'll use is: ____________________

The programming language I plan to use is: [___] Matlab -- [___] IDL -- [___] C -- [___] Fortran 77 -- [___] Python

The name and version of the C or Fortran compiler I'll use (if applicable) is: ____________________

The version of Matlab I'll be using (if applicable) is: ____________________
and I will have tested it to ensure it works with the "Mice" Toolkit.

The version of IDL I'll be using (if applicable) is: ____________________
and I will have tested it to ensure it works with the "Icy" Toolkit.

If I plan to use the IDL or MATLAB interface to SPICE I realize my laptop must have its own licensed copy of IDL or MATLAB installed and that I'm responsible for ensuring I can connect to my home institution's license server through the hotel's WiFi connection.

[___] I plan to exclusively use the WebGeocalc GUI versions of the programming lessons.

Optional comments: