# Presentation: 591680

## An Overview of SPICE

**January 2008**

## SPICE deals with these data to support the planning for and analysis of these data

**Space Science Data: Two Kinds**

- Overview of SPICE

## What are “Ancillary Data?”

- Overview of SPICE

## What are “Ancillary Data”?

**“****Ancillary data” are those that help scientists and engineers determine:**
**where the spacecraft was located****	**
**how the spacecraft and its instruments were oriented (pointed)**
**what was the location, size, shape and orientation of the target being observed**
**what events were occurring on the spacecraft or ground that might affect interpretation of science observations**
**In the above we’ve used past tense, but doing the same functions for future times is equally applicable**

- Overview of SPICE

## From Where do Ancillary Data Come?

**Some come from the spacecraft**
**Some come from the mission control center**
**Some come from the spacecraft and instrument builders**
**Some come from scientists**
**SPICE is used to organize and package these data in a collection of useful, stable file types–called "kernels."**
**The kernels are made available, along with SPICE Toolkit software:**
** ****to help scientists in the planning for and analysis of science observations, and**
** ****to help engineers in planning for and analysis of spacecraft and ground system operations.**

- Overview of SPICE

## Why SPICE?

**Knowing observation geometry and events is an important element:**
**in the design of space missions, **
**in the selection of observations, **
**and in analysis of the science data returned from the instruments. **
**Having proven, extensive and reusable**** ****means for producing and using ancillary data reduces cost and risk, and can help scientists and engineers achieve more substantive, accurate and timely results.**

- Overview of SPICE

## The principal SPICE system components are: 
Data files, often called “kernels” or “kernel files”
Software, known as the SPICE Toolkit, consisting of:
a subroutine library
a number of programs (executables)
Some are “meaty” applications
Some are “simple” utilities focused on kernel management
a few “cookbook” programs
Simple examples of using SPICE toolkit subroutines
Documentation
User Guides for programs 
Substantial source code documentation for all subroutines
Provided explicitly for those who will use Toolkit subroutines to make their own application programs
Technical reference documents for major families of subroutines
A permuted index
Tutorials
Programming lessons which focus on using SPICE
Include tips, data, and NAIF’s solution code and numeric results

**Data files****, often called “kernels” or “kernel files”**
**Software****, known as the SPICE Toolkit, consisting of:**
**a subroutine library**
**a number of programs (executables)**
**Some are “meaty” applications**
**Some are “simple” utilities focused on kernel management**
**a few “cookbook” programs**
**Simple examples of using SPICE toolkit subroutines**
**Documentation**
**User Guides for programs **
**Substantial source code documentation for all subroutines**
**Provided explicitly for those who will use Toolkit subroutines to make their own application programs**
**Technical reference documents for major families of subroutines**
**A permuted index**
**Tutorials**
**Programming lessons**** which focus on using SPICE**
**Include tips, data, and NAIF’s solution code and numeric results**

**SPICE System Components**

- Overview of SPICE

## Genesis of the SPICE Acronym*

**S**

**P**

**I**

**C**

**E**

**S**pacecraft

**P**lanet

**I**nstrument

**C**-matrix

**E**vents

*** Coined by Dr. Hugh Kieffer, USGS Astrogeology Branch, Flagstaff AZ**

**Genesis of the SPICE Acronym***

- Overview of SPICE

## Logical versus Physical View

**Logical versus Physical View**

_**Logical View**_

_**Physical View**_

**Spacecraft**

**Planet**

**Instrument**

**Camera-matrix**

**Events**

**S**

**P**

**I**

**C**

**E**

**Software**

**SPICE Toolkit**

**SPK**

**PcK**

**IK**

**CK**

**EK**
**ESP ESQ**

**S**

**FK**
**LSK**
**SCLK**

- Space vehicle or target
- body trajectory (ephemeris)

- Target body size,
- shape and orientation

- Instrument field-of-view size,
- shape and orientation

- Orientation of space vehicle or
- any articulating structure on it

- Events information:
-   - Science Plan  (ESP)
-   - Sequence of events  (ESQ)
-   - Experimenter’s Notebook (ENB)

- Reference frame specifications

- Leapseconds tabulation

- Spacecraft clock coefficients

- API libraries, some application and utility programs, software documentation

**Others**

_**Content**_

- Overview of SPICE

## Instrument information such as:
Field-of-view size, shape, orientation
Internal timing

**SPK**

**PcK**

**IK**

**Space vehicle ephemeris (trajectory)**
**Planet, satellite, comet and asteroid ephemerides**
**More generally, position of something relative to something else**

**Planet, satellite, comet and asteroid orientations, sizes, shapes**
**Possibly other similar “constants” such as parameters for gravitational model, atmospheric model or rings model**

**Instrument information such as:**
**Field-of-view size, shape, orientation**
**Internal timing**

**SPICE System Contents - 1**

- Overview of SPICE

## “Events,” broken into three components:
ESP:  Science observation plans
ESQ:  Spacecraft & instrument commands
ENB:  Experiment “notebooks” and ground data system logs

**CK**

**EK**

**Instrument platform (e.g. spacecraft) attitude**
**More generally, orientation of something relative to a specified reference frame**

**“****Events,” broken into three components:**
**ESP:  Science observation plans**
**ESQ:  Spacecraft & instrument commands**
**ENB:  Experiment “notebooks” and ground data system logs**

**3 **components

**SPICE System Contents - 2**

- Overview of SPICE

## Frames
Definitions of and specification of relationships between reference frames (coordinate systems)
Both “fixed” and “dynamic” frames are available

**Frames**
**Definitions of and specification of relationships between reference frames (coordinate systems)**
**Both “fixed” and “dynamic” frames are available**

**Other**
**Kernels**

**FK**

**LSK**

**SCLK**

**    ****Leapseconds Tabulation**
**          ****- Used for UTC <--> ET  time conversions**

**Spacecraft Clock Coefficients**
**- Used for SCLK <--> ET  time conversions**

**Shape models (DEM and tessellated plates) (DSK) ****1**
**Star (sky) catalog ****2**

**UTC =  Coordinated Universal Time      ET = Ephemeris Time     SCLK = Spacecraft Clock Time**

**SPICE System Contents - 3**

**1**** under development**
**2**** development is stalled**

- Overview of SPICE

## Library of modules used to:
write binary SPICE kernel files
read all (binary and text) SPICE kernel files
compute quantities derived from SPICE kernel data
Example (“cookbook”) programs
Utility programs
Kernel summarization or characterization
Kernel porting
Application programs  (a few)
e.g. “chronos” time conversion application
Kernel production programs  (a few)
e.g. “mkspk” SPK production program

**SPICE**
**Toolkit**

**Library of modules used to:**
**write binary SPICE kernel files**
**read all (binary and text) SPICE kernel files**
**compute quantities derived from SPICE kernel data**
**Example (“cookbook”) programs**
**Utility programs**
**Kernel summarization or characterization**
**Kernel porting**
**Application programs  (a few)**
**e.g. “chronos” time conversion application**
**Kernel production programs  (a few)**
**e.g. “mkspk” SPK production program**

**SPICE System Contents - 4**

**FORTRAN**

**C**

**IDL**

**MATLAB**

- Overview of SPICE

## Using SPICE in Science Planning

**Using SPICE in Science Planning**

**SPK**

**PcK**

**IK**

**CK**

**FK**

**SCLK**

**LSK**

**EK**

**User’s Own Modules**

**User’s Planning Program**

**Evaluation of a planned orbit**
**                 ****or**
**Instrument pointing plan**
**        ****or**
**Observation geometry visualization**
**        ****or**
**Analysis of expected communications link performance**

**Selected**
**SPICE Toolkit**
**Library**
**Modules**

- Overview of SPICE

## Using SPICE in Science Data Analysis

**SPK**

**PcK**

**IK**

**CK**

**FK**

**SCLK**

**LSK**

**EK**

**User’s Own Modules**

**Derived**
**Observation**
**Geometry**

**Instrument**
**Calibration**
**Data**

**Instrument**
**Data**

**User’s**
**Science**
**Data**
**Analysis**
**Program**

**Spectacular**
**Science**
**Results**

**User’s Geometry Program**

**Selected**
**SPICE Toolkit**
**Library**
**Modules**

- Overview of SPICE

## Portable SPICE kernel files
Portable NAIF Toolkit software
Code is well tested before being released to users
New Toolkits are always backwards compatible
Extensive user-oriented documentation is provided
An set of SPICE tutorials is available
“Open book” programming lessons are offered as a part of each NAIF-provided training class

**Portable NAIF Toolkit software**
**Code is well tested before being released to users**
**New Toolkits are always backwards compatible**
**Extensive user-oriented documentation is provided**
**An set of SPICE tutorials is available**
**“****Open book” programming lessons are offered as a part of each NAIF-provided training class**

**SPICE System Characteristics - 1**

- Overview of SPICE

## All numeric computations use double precision
System includes built-in exception handling
Catches most invalid inputs 
Offers a traceback and configurable action upon detection of a problem
Gives you access to most of JPL’s integrated ephemerides for spacecraft and natural bodies (planets, satellites, comets, asteroids)
Kernel files are separable
Use only those you need for a particular application
Kernel files are extensible
New data “types” can be added within a family
New kinds of kernels can be developed as needed
Broad applicability, means good value
Multimission and multidiscipline
Use it over and over again, no matter which mission you’re working on

**System includes built-in exception handling**
**Catches most invalid inputs **
**Offers a traceback and configurable action upon detection of a problem**
**Gives you access to most of JPL’s integrated ephemerides for spacecraft and natural bodies (planets, satellites, comets, asteroids)**
**Kernel files are separable**
**Use only those you need for a particular application**
**Kernel files are extensible**
**New data “types” can be added within a family**
**New kinds of kernels can be developed as needed**
**Broad applicability, means good value**
**Multimission and multidiscipline**
**Use it over and over again, no matter which mission you’re working on**

**SPICE System Characteristics - 2**

- Overview of SPICE

## SPICE System Characteristics - 3

**Funding**
**NASA flight projects fund NAIF and/or others to deploy and operate SPICE in support of NASA’s planetary missions**
**Foreign institutions fund their own people for deployment and operation of SPICE in support of their own projects**
**SPICE system development is funded by NASA's Solar System Exploration Office**
**SPICE Toolkit software is free to individual users**
**Access to SPICE kernels produced by NAIF is free and open to all**
**Includes mission ops kernels as well as those archived in the PDS**
**Access to SPICE kernels produced by others so far appears free**
**But access restrictions often exist prior to data archival**
**Distribution of SPICE software is not restricted under U.S. Government regulations**
**SPICE is classified TSPA (“Technology and Software Publicly Available”)**
**No ITAR restrictions on data, training or consulting**
**Commercial use of SPICE software is encouraged**
**No license fees or other restrictions**

- Overview of SPICE

## The SPICE Toolkit has been ported to a wide variety of popular “environments”
Each environment is characterized by 
Hardware type (platform)
Operating System
Compiler
Sometimes even selected compilation options

NAIF provides separate, ready-built SPICE Toolkit packages for each supported environment
If you need to port the Toolkit to a new environment yourself, consult with NAIF staff

**Each environment is characterized by **
**Hardware type (platform)**
**Operating System**
**Compiler**
**Sometimes even selected compilation options**
**NAIF provides separate, ready-built SPICE Toolkit packages for each supported environment**
**If you need to port the Toolkit to a new environment yourself, consult with NAIF staff**

**Supported Platforms**

- Overview of SPICE

## Mission planning, modeling and visualization
Pre-flight mission evaluation from a science perspective
Detailed science observation planning
Mission operations engineering functions
Science data analysis, including correlation of results between instruments, and with data obtained from other missions
Data archiving, for future use by others
Education and Public outreach

**Mission planning, modeling and visualization**
**Pre-flight mission evaluation from a science perspective**
**Detailed science observation planning**
**Mission operations engineering functions**
**Science data analysis, including correlation of results between instruments, and with data obtained from other missions**
**Data archiving, for future use by others**
**Education and Public outreach**

**Increasing**
**mission**
**maturity**
**(time)**

**For What Jobs is SPICE Used ?**

**The original focus**
**of SPICE**

- Overview of SPICE

## Examples - 1 What Can You Do With SPICE ?

**Mission Design**
**Compute interesting orbit properties; compare these with those of another design, or with another mission**
**Evaluate possibilities for relay link times and duration**
**Mission Operations**
**Predict or evaluate telecommunications link performance**
**Analyze spacecraft orientation history**
**Determine elevation and rise/set times of sun and tracking stations**
**Compute location and lighting conditions for a rover**

- Overview of SPICE

## Examples - 2 What Can You Do With SPICE ?

**Science**
**Design specific observations to be acquired**
**Compute **_**observation geometry**_** needed for science data product labels, to later be used in searching a catalog for science data of interest **
**Compute **_**observation geometry**_** needed to analyze science data, or to correlate multiple science data sets**
**Examples of “observation geometry”:**
**Lighting angles (phase, incidence, emission) **
**Location (LAT/LON) of instrument footprint**
**Range and local time**
**Local season**
**Visualization, Education and Public Outreach**
**Provide geometry used to drive web pages giving interesting parameters such as ranges, velocities, time of day on Mars**
**Provide geometry for animations showing spacecraft location and orientation, instrument footprint projected on the surface, and locations of surface assets or natural features of interest**

- Overview of SPICE

## What “Vehicle” Types Can Be Supported ?

**Cruise/Flyby**
**Remote sensing**
**In-situ measurement**
**Instrument calibration**
**Orbiters**
**Remote sensing**
**In-situ measurement**
**Communications relay**
**Balloons***
**Remote sensing**
**In-situ measurements**

**Landers**
**Remote sensing**
**In-situ measurements**
**Rover or balloon relay**
**Rovers**
**Remote sensing**
**In-situ sensing**
**Local terrain characterization**
**Terrestrial applications**
**Ephemerides for observers**

- * Not yet demonstrated

- Overview of SPICE

## Global SPICE Geometry

- Overview of SPICE

## Orbiter Geometry

- Overview of SPICE

## Lander Geometry

- Overview of SPICE

## Rover Geometry

- Overview of SPICE

## Major SPICE Users

**Major SPICE Users**

- Overview of SPICE

## Building Blocks for Your Applications

**NAIF offers the “SPICE” ancillary information system as a set of blocks for building tools that can help execute a multimission, international space exploration program**

**SPICE****: the ancillary information system that NAIF builds and often operates.**
**NAIF****:  the JPL entity responsible for development and deployment of SPICE.**
**NAIF Node of the PDS****:  one responsibility of the NAIF Group--archiving and providing long-term access to SPICE data for the worldwide science community.**

- Overview of SPICE