Isis 3 Application Documentation
spiceinit | Standard View | TOC | Home |
Determine SPICE kernels for a camera cube
Description
Categories
Groups
Examples
History
Cubes which have supported camera models in the ISIS system require spacecraft position, pointing, body shape and orientation, sun position, and other information in order to compute ground positions (latitude/longitude) and photometric viewing angles. This information is stored in SPICE kernels. This program attempts to search the ISIS data areas in order to discern the SPICE kernels required for the camera cube.
The program examines the "SpacecraftName", "InstrumentId", "TargetName", "StartTime", and "StopTime" keywords in the cube label to determine the kernels to use. It attempts to find kernels files for the following keywords and writes them to the Kernels group:
The program modifies the kernels group and writes the name of the SPICE files that need to be loaded by the camera models. It has the option of pre-reading the data from the SPICE kernels and loading it as a binary table attached to the cube. This can faciliate faster load times and allows the instrument pointing to be easily updated.
As kernels are loaded they override the data in previously loaded kernels. The order in which kernels are loaded is:
Please note: Kernel Files specified that reside in the current working directory will not have their paths expanded. This is to allow variables like $msg/ to work correctly.
Troubleshooting: If spiceinit is failing with the error "No Camera Kernel found for the image ..." then try enabling the "CKPREDICTED" or "CKNADIR" option. A similar error exists for SPK kernels, and you can enable "SPKPREDICED" to get past that error. "PREDICTED" and "NADIR" options typically have less accuracy than reconstructed/smithed kernels which is why they are disabled by default.
Name | Description |
---|---|
FROM | The filename of the input cube to have "kernel" labels added to it |
Name | Description |
---|---|
WEB | Use the ISIS Spice Web Service |
ATTACH | Attach SPICE data to cube |
Name | Description |
---|---|
CKSMITHED | Use smithed pointing kernels if available |
CKRECON | Use reconstructed pointing kernels if available |
CKPREDICTED | Use predicted pointing kernels if available |
CKNADIR | Compute nadir pointing if no other kernels exist |
Name | Description |
---|---|
SPKSMITHED | Use smithed position kernels if available |
SPKRECON | Use reconstructed position kernels if available |
SPKPREDICTED | Use predicted pointing kernels if available |
Name | Description |
---|---|
LS | User defined leap second kernel file. |
PCK | User defined target attitude and shape kernel file. |
TSPK | User defined target position kernel file. |
IK | User defined instrument kernel file. |
SCLK | User defined spacecraft clock kernel file. |
CK | User defined spacecraft pointing kernel file. |
FK | User defined frames kernel file. |
SPK | User defined spacecraft position kernel file. |
IAK | User defined instrument addendum kernel file. |
EXTRA | User defined extra kernel file. |
Name | Description |
---|---|
SHAPE | Select the definition of the shape model |
MODEL | User defined ISIS cube shape model. |
Name | Description |
---|---|
STARTPAD | Time padding (in seconds) to load from the kernels before the start time of the image |
ENDPAD | Time padding (in seconds) to load from the kernels after the end time of the image |
Name | Description |
---|---|
URL | The Spice Service URL |
PORT | The Spice Service Port |
The input file which will have a new "kernel" group added to its labels.
Type | cube |
---|---|
File Mode | input |
Filter | *.cub |
This option enables using the ISIS Spice Website to get the most up to date kernels available. ATTACH must be enabled for this, and manually specifying files with this option on is not allowed. This service may be temporarily unavailable when new Isis releases are being distributed. Any mismatch in Isis version between the latest version and the version you are running will cause this option to fail; only the most recent version of Isis is supported. An active internet connection is required to use this service and downloading SPICE data will be slower than if you had run this with local files (downloaded all of $ISIS3DATA). The size of the download will depend heavily on the mission and instrument of your input file.
Type | boolean |
---|---|
Default | false |
Exclusions |
|
Inclusions |
|
This option attaches binary tables to the cube which contain the instrument position (SPK) and orientation (CK), as well as the sun position and body/target orientation. This is the prefered initialization option as it allows the pointing to be updated by further programs.
Type | boolean |
---|---|
Default | TRUE |
Allow the use of pointing kernels marked as c-smithed. If this parameters is turned on, c-smithed kernels may be used to cover the time requirements of the image. At least one of the parameters "CKPREDICTED", "CKNADIR", "CKRECON", "CKSMITHED" must be entered.
Type | boolean |
---|---|
Default | FALSE |
Allow the use of pointing kernels marked as reconstructed. If this parameters is turned on, reconstructed kernels may be used to cover the time requirements of the image. At least one of the parameters "CKPREDICTED", "CKNADIR", "CKRECON", "CKSMITHED" must be entered.
Type | boolean |
---|---|
Default | TRUE |
Allow the use of pointing kernels marked as predicted. If this parameters is turned on, predicted kernels may be used to cover the time requirements of the image. At least one of the parameters "CKPREDICTED", "CKNADIR", "CKRECON", "CKSMITHED" must be entered.
Type | boolean |
---|---|
Default | FALSE |
This option will create nadir pointing data if the other ck kernel types do not exist or do not cover the time range of the input cube. At least one of the parameters "CKPREDICTED", "CKNADIR", "CKRECON", "CKSMITHED" must be entered.
Type | boolean |
---|---|
Default | FALSE |
Allow the use of position kernels marked as smithed. If this parameters is turned on, smithed kernels may be used to( cover the time requirements of the image. At least one of the parameters "SPKPREDICTED", "SPKRECON", "SPKSMITHED" must be entered.
Type | boolean |
---|---|
Default | FALSE |
Allow the use of position kernels marked as reconstructed. If this parameters is turned on, reconstructed kernels may be used to cover the time requirements of the image. At least one of the parameters "SPKPREDICTED", "SPKRECON", "SPKSMITHED" must be entered.
Type | boolean |
---|---|
Default | TRUE |
Allow the use of position kernels marked as predicted. If this parameters is turned on, predicted kernels may be used to cover the time requirements of the image. At least one of the parameters "SPKPREDICTED", "SPKRECON", "SPKSMITHED" must be entered.
Type | boolean |
---|---|
Default | FALSE |
Naif kernel file to be used for the leap second in place of the automated leap second kernel. The LS kernel will be referenced in the keyword LeapSecond by the resulting Kernel group. If none is specified, spiceinit will use the latest kernel config file or kernel database file to find the appropriate kernel(s) for the given input file.
Type | filename |
---|---|
File Mode | input |
Default Path | $base/kernels/lsk/ |
Internal Default | none |
Filter | *.tls |
Naif kernel file to be used for the target attitude and shape in place of the automated attitude and shape kernel. The PCK kernel will be referenced in the keyword TargetAttitudeShape by the resulting Kernel group. If none is specified, spiceinit will use the latest kernel config file or kernel database file to find the appropriate kernel(s) for the given input file.
Type | filename |
---|---|
File Mode | input |
Default Path | $base/kernels/pck/ |
Internal Default | none |
Filter | *.tpc |
Naif kernel file to be used for the target position in place of the automated position kernel. The TSPK kernel will be referenced in the keyword TargetPosition by the resulting Kernel group. If none is specified, spiceinit will use the latest kernel config file or kernel database file to find the appropriate kernel(s) for the given input file.
Type | filename |
---|---|
File Mode | input |
Default Path | $base/kernels/spk/ |
Internal Default | none |
Filter | *.bsp |
Naif kernel file to be used for the instrument in place of the automated instrument kernel. The IK kernel will be referenced in the keyword Instrument by the resulting Kernel group. If none is specified, spiceinit will use the latest kernel config file or kernel database file to find the appropriate kernel(s) for the given input file.
Type | filename |
---|---|
File Mode | input |
Default Path | $ISIS3DATA |
Internal Default | none |
Filter | *.ti |
Naif kernel file to be used for the spacecraft clock in place of the automated spacecraft clock kernel. The SCLK kernel will be referenced in the keyword Instrument by the resulting Kernel group. If none is specified, spiceinit will use the latest kernel config file or kernel database file to find the appropriate kernel(s) for the given input file.
Type | filename |
---|---|
File Mode | input |
Default Path | $ISIS3DATA |
Internal Default | none |
Filter | *.tsc |
Naif kernel file to be used for the spacecraft pointing in place of the automated spacecraft pointing kernel. The CK kernel will be referenced in the keyword InstrumentPointing by the resulting Kernel group. If none is specified, spiceinit will use the latest kernel config file or kernel database file to find the appropriate kernel(s) for the given input file.
Type | filename |
---|---|
File Mode | input |
Default Path | $ISIS3DATA |
Internal Default | none |
Filter | *.bc |
Naif kernel file to be used for the instrument frame in place of the automated frames kernel. The FK kernel will be referenced in the keyword InstrumentPointing by the resulting Kernel group. Note: If you enter a filename for CK some instruments may require a frame kernel as well. If none is specified, spiceinit will use the latest kernel config file or kernel database file to find the appropriate kernel(s) for the given input file.
Type | filename |
---|---|
File Mode | input |
Default Path | $ISIS3DATA |
Internal Default | none |
Filter | *.tf |
Naif kernel file to be used for the spacecraft position in place of the automated spacecraft position kernel. The SPK kernel will be referenced in the keyword InstrumentPosition by the resulting Kernel group. If none is specified, spiceinit will use the latest kernel config file or kernel database file to find the appropriate kernel(s) for the given input file.
Type | filename |
---|---|
File Mode | input |
Default Path | $ISIS3DATA |
Internal Default | none |
Filter | *.bsp |
Naif formatted kernel file to be used for the ISIS specific instrument addendum kernel, in place of the automated. The IAK kernel will be referenced in the keyword InstrumentAddendum by the resulting Kernel group. If none is specified, spiceinit will use the latest kernel config file or kernel database file to find the appropriate kernel(s) for the given input file.
Type | filename |
---|---|
File Mode | input |
Default Path | $ISIS3DATA |
Internal Default | none |
Filter | *.ti |
Optional extra naif formatted kernel file. The EXTRA kernel will be referenced in the keyword Extra by the resulting Kernel group.
Type | filename |
---|---|
File Mode | input |
Default Path | $ISIS3DATA |
Internal Default | none |
ISIS camera models can use a shape model (a projected ISIS cube that defines the radii for a global or regional area). You can choose to select a shape model or to use the definition of the ellipsoid found in the planetary constants (PCK) file.
Type | string | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Default | SYSTEM | ||||||||||||
Option List: |
|
A map projected ISIS cube which contains the radii of the target. The file can cover more than the input cube (FROM) but must minimally cover the data in the input cube.
Type | cube |
---|---|
File Mode | input |
Default Path | $base//dems/ |
Filter | *.cub |
When the kernels for an image are loaded, by default only what the image requires is loaded. By setting this option, the loaded kernels start at the specified amount of time before the image start time. Using this option for framing cameras could significantly decrease the accuracy of the Naif information because this will cause the information to be interpolated between the STARTPAD and ENDPAD.
Type | double |
---|---|
Default | 0.0 |
Minimum | 0.0 (inclusive) |
When the kernels for an image are loaded, by default only what the image requires is loaded. By setting this option, the loaded kernels end at the specified amount of time after the image end time. Using this option for framing cameras could significantly decrease the accuracy of the Naif information because this will cause the information to be interpolated between the STARTPAD and ENDPAD.
Type | double |
---|---|
Default | 0.0 |
Minimum | 0.0 (inclusive) |
This is where a request for spice data is sent. The default is the USGS SPICE server.
Type | string |
---|---|
Default | http://services.isis.astrogeology.usgs.gov/cgi-bin/spiceinit.cgi |
This is the port on which a request for spice data is sent. The USGS server works on port 80.
Type | integer |
---|---|
Default | 80 |
Minimum | 0 (inclusive) |
Example of spiceinit using default parameters.
Example of GUI command
|
Example GUI An example of how to run this program using the GUI. Note that Kernel data that has been found can be seen in the log window. |
Cube labels before spiceinit. | This is the cube labels of the input cube before spiceinit is run. |
---|---|
Cube labels after spiceinit. | This is the cube labels of the input cube after spiceinit has been run. |
Debbie A. Cook | 2000-06-08 | Original Version |
Stuart Sides | 2003-11-05 | Complete rewrite under Isis 3.0 conversion. |
Stuart Sides | 2004-01-14 | Modified to use an existing "Kernels" group instead of creating a new one. This was because the mission specific import program (e.g., moc2isis) was modified to create the "kernels" group and put the "NaifFrameCode" into it. |
Stuart Sides | 2004-01-23 | Added new parameter "TEST". This parameter controls the testing of the final kernel list. If false the kernels will not be tested for completness by createing a camera model. |
Stuart Sides | 2004-02-23 | Added elevation model DEM capabilities. |
Stuart Sides | 2004-02-24 | Completed capabilities to search for kernels of different qualities such as PREDICTED, NADIR, RECONSTRUCTED, and C-SMITHED. |
Stuart Sides | 2005-11-08 | Added fix for framing cameras, so they would not need a stop time in the instrument group of the labels. |
Elizabeth Miller | 2005-11-14 | Added appTest |
Jacob Danton | 2005-12-22 | Added support for multiple files within the kernels |
Jacob Danton | 2005-12-27 | Added a progress bar |
Jacob Danton | 2006-01-03 | Fixed the xml description |
Jacob Danton | 2006-01-25 | Changed the mission translation file name |
Jacob Danton | 2006-01-25 | Changed the appTest to comply with changes in the String class. |
Jeff Anderson | 2006-03-27 | Modified to write InstrumentPointing, InstrumentPosition, SunPosition, and BodyRotation information to SPICE tables in the cube. |
Brendan George | 2006-09-19 | Added call to modify the history of the cube |
Brendan George | 2006-10-19 | Modifed to remove label entries for spice tables, if ATTACH is unchecked, and the input cube already has them. |
Steven Lambright | 2007-07-10 | Combined Frame and InstrumentPointing. Changed to support new version of KernelDb. Cleaned up the code. |
Steven Lambright and Steve Koechle | 2007-07-10 | Fixed problem where the allowed kernels were being set improperly. |
Steven Lambright | 2007-08-10 | Fixed so that when no spacecraft pointing is found, but frame kernels are, and Nadir is allowed it still adds the Nadir keyword. |
Steven Koechle | 2007-10-05 | Added a check to see if the cube had an existing polygon, if so delete it. |
Steven Koechle | 2007-10-25 | Fixed Smithed enum, changed from C-Smithed. |
Steven Koechle | 2007-12-14 | Added error handling logic. If the user chose to use Nadir CK and another type, and the system found a file where the image falls in a gap (no pointing is available) Nadir would never be calculated. Fixed. |
Steven Lambright | 2008-02-13 | Added time padding options |
Steven Lambright | 2008-02-21 | Added additional explanation of time padding options |
Steven Lambright | 2008-02-22 | Split the CK parameter into FK and CK, they are still combined in the label as InstrumentPointing. |
Steven Lambright | 2008-04-14 | All found CK kernels will now be tested before giving an error |
Christopher Austin | 2008-05-02 | Fixed the propagation of the EXTRA Kernel. |
Steven Lambright | 2008-05-12 | Removed references to CubeInfo |
Steven Lambright | 2008-05-19 | Fixed documentation |
Christopher Austin | 2008-06-03 | Furthered documentation. |
Steven Koechle | 2008-06-17 | Added CK check and throw more appropriate error |
Christopher Austin | 2008-09-12 | Added the removal of StartPadding and EndPadding keywords from previous spiceinit runs, and added some double inited tests. NOTE: Whenever adding new keywords, run spiceinit twice on the same cube in your test, dumping out both labels to verify that the keyword is not being duplicated. |
Tracie Sucharski | 2009-03-12 | If spice is put into a Table, append the kernel name to the Kernel group keyword to keep track of original spice kernels. |
Steven Koechle | 2009-05-12 | Added CameraVersion into the Kernel labels |
Steven Lambright | 2009-07-09 | Error messages from the camera are now reported |
Steven Lambright | 2009-07-21 | Fixed handling of user-entered CK kernels |
Janet Barrett and Steven Lambright | 2011-05-25 | Added support for storing text spice kernel values in the cube labels |
Steven Lambright and Jai Rideout | 2011-08-30 | Added support for using a spiceinit web service |
Steven Lambright | 2011-10-05 | As a result of our test and review team, I have updated the documentation to match the recommendations of Laz Kestay and Ken Edmundson. Fixes #423. |
Jai Rideout | 2011-11-18 | Fixed bug in writing tables to the cube that were retrieved from the web service. |
Debbie A. Cook | 2012-07-06 | Updated Spice members to be more compliant with Isis coding standards. References #972. |
Jeannie Backer | 2013-02-26 | Added ability to load multiple ck database files from the system using a conf file. Changed methods to lower camel case to comply with Isis3 standards. Added web example. References #924. |