SPICE Domestic Training Class for 2022
October 25 - 27, 2022
TBD hotel in Pasadena-Arcadia-Monrovia area

First Announcement: August 5, 2022

NASA's Navigation and Ancillary Information Facility (NAIF), located at the Caltech/Jet Propulsion Laboratory (JPL), announces a "SPICE" Training class will be held at a TBD hotel (will be announced by early September) near Pasadena, CA on October 25 - 27, 2022. 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 9:00 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.

NAIF especially encourages those involved with science-related CubeSat and SmallSat missions to attend.

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 start trying the Self training version of the class since this uses the same materials used in the live class; see if this material feels right for you.

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. In this case you must have practiced using WebGeocalc prior to coming to the class. 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 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 or COVID restrictions imposed by local or NASA authorities. Also reserved is the right to cut off registrations if needed to keep the class to a manageable size--about 60 students.

Should the LA Country or CDC face mask mandate be in effect at the time of the class due to high COVID levels in the area, all class attendees will be required to wear N95/KN95 or surgical masks while inside the hotel and classroom.

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

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 noon on Thursday.

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

You can get your lunch in any of the nearby restaurants.

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

Airport Information

Three airports serve the Los Angeles area: Los Angeles International, Bob Hope (in Burbank), and Ontario (in Ontario). Most hotels in Padadena area do not offer airport shuttles. Several shared ride shuttle services are available at these airports (Google "LAX shared ride shuttle"), as are (expensive) taxis, Uber and Lyft.

Hotel Information

The class will be held at a TBD hotel in the Pasadena-Arcadia-Monrovia area.

Out of town students must make their own hotel reservations. Of course you are free to stay at a lodging of your choosing; there are many hotels in this area. Many of these hotels have ample free self parking.

Registration Form

Please cut and paste into an email just the portion below beginning with "SPICE 2022 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 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 2022 Training Class Registration or Notice of Interest
October 25 - 27, 2022
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 25 - 27, 2022. 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 25 - 27, 2022. 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: