Introduction =========================================================================== This document describes the structure and contents of the latest of the SPICE toolkit for the DEC Alpha (D-floating). FORTRAN -------------------------------------------------------- Most FORTRAN compilers come with a large set of compilation options that can be used when compiling source code. The compiler options we (NAIF) used when creating the various object libraries are discussed in the section "LIB" that appears later in this document. Version Information -------------------------------------------------------- Creation Date: Tue Feb 8 15:24:48 PST 2005 Version : GENERIC_TOOLKIT.............V.N0058 Directory Structure and Contents =========================================================================== toolkit -------------------------------------------------------- The toolkit directory contains the file MAKEALL.COM. This is a command procedure that builds all of the object libraries and executables in the toolkit. (installation directory) | toolkit | makeall.com toolkit also contains several subdirectories that will be described in more detail in the following sections. (installation directory) | toolkit | data doc etc exe lib src 1. DATA This directory contains example data for use with various programs. These files are provided only as examples and are not intended for use for any serious analysis or planning work. 2. DOC This directory contains all of the documentation for this package. This includes User's Guides for the programs, Required Reading files for SPICELIB, documents describing the contents of SPICELIB such as the Permuted Index , and documents describing the contents and installation of the Toolkit. 3. EXE This directory contains all of the package executables, and where applicable, scripts to run the executables. 4. ETC The subdirectories of this directory contain product-specific files that are neither source, documentation, nor data. This includes configuration files, set up files, and help files. 5. LIB This directory contains all of the object libraries. 6. SRC The subdirectories of this directory contain all of the source for the products in this toolkit package. DATA -------------------------------------------------------- The DATA directory contains all of the NAIF Toolkit data that is pertinent for this toolkit package. This data is intended only to be used with the TOOLKIT programs, and is included only to help you get started using the Toolkit. (installation directory) | toolkit | data | cook_01.tc cook_01.tls cook_01.tpc cook_01.tsc cook_01.tsp cook_02.tc cook_02.tsp DOC -------------------------------------------------------- The DOC directory contains all of the toolkit toolkit documentation that is available on-line. This includes the User's guides for the programs, Required Reading files for the library subsystems, and documents describing the installation and contents of this package. (installation directory) | toolkit | doc | dscriptn.txt version.txt mostused.pdf spicelib.idx *.ug *.req *.txt This package also includes HTML version of the documentation. It is provided in the HTML subdirectory of the DOC directory. The ``index.html'' file contains links to the individual HTML documents spread across numerous branches of this subdirectory tree. (installation directory) | toolkit | doc | html | index.html ... ETC -------------------------------------------------------- The ETC directory contains all files for the Toolkit products that are not source, documentation, or data such as set up files, configuration files or help files. (installation directory) | toolkit | etc EXE -------------------------------------------------------- The EXE directory contains the NAIF Toolkit executables and, where applicable, scripts to run executables. (installation directory) | toolkit | exe | brief.exe chronos.exe ckbrief.exe commnt.exe simple.exe states.exe subpt.exe tictoc.exe inspekt.exe mkspk.exe spacit.exe spkmerge.exe tobin.exe toxfr.exe version.exe tspice.exe LIB -------------------------------------------------------- The LIB directory contains the object libraries for this toolkit package. All libraries are compiled with the following options in effect. /nolist /warning=declarations /float=D_FLOAT check=(bounds,overflow) The libraries contained in this directory are listed below. Each library is discussed in more detail later in the section devoted to the SRC directory. (installation directory) | toolkit | lib | spicelib.olb support.olb testutil.olb SRC -------------------------------------------------------- The SRC directory contains one subdirectory for each product in the NAIF Toolkit. Each of these product directories contains the source code files and procedures to create the executable or object library. (installation directory) | toolkit | src | brief chronos ckbrief commnt cookbook inspekt mkspk spacit spicelib spkmerge support tobin toxfr version testutil tspice BRIEF BRIEF is a utility program that allows you to summarize the ephemeris coverage for one or more SPK files. This directory contains the BRIEF main program, supporting routines, and a command procedure to create the executable program BRIEF.EXE. (installation directory) | toolkit | src | brief | brief.pgm *.for mkprodct.com CHRONOS CHRONOS is a utility program that allows you to easily convert from one representation of time to another. This directory contains the CHRONOS main program, supporting routines, and a script to create the executable program @chronos. (installation directory) | toolkit | src | chronos | chronos.pgm *.for mkprodct.com CKBRIEF CKBRIEF is a utility program that allows you to summarize the ephemeris coverage for one or more CK files. This directory contains the CKBRIEF main program, supporting routines, and a script to create the executable program @ckbrief. (installation directory) | toolkit | src | ckbrief | ckbrief.pgm *.for mkprodct.com COMMNT COMMNT is a utility program that is used to add comments, extract comments, read comments, or delete comments in SPICE SPK, CK and EK files. This directory contains the COMMNT main program and a command procedure to create the executable file COMMNT.EXE. (installation directory) | toolkit | src | commnt | commnt.pgm mkprodct.com COOKBOOK The cookbook programs are sample programs that demonstrate how to use SPICELIB routines to obtain state vectors, convert between different time representations, and solve simple geometry problems. This directory contains the COOKBOOK source files and a command procedure to create the executable files. (installation directory) | toolkit | src | cookbook | fstspk.pgm simple.pgm states.pgm subpt.pgm tictoc.pgm mkprodct.com INSPEKT INSPEKT is a program that allows you to examine the contents of an events component of an E-kernel. This directory contains the INSPEKT main program, supporting routines, and a command procedure to create the executable program INSPEKT.EXE. (installation directory) | toolkit | src | inspekt | inspekt.pgm *.for *.inc mkprodct.com MKSPK MKSPK is a program that creates SPK files from a reasonably general text file. This directory contains the MKSPK main program, supporting routines, and a command procedure to create the executable program mkspk. (installation directory) | toolkit | src | mkspk | mkspk.pgm *.for mkprodct.com SPACIT SPACIT is a utility program that performs three functions: it converts transfer format SPK, CK and EK files to binary format, it converts binary SPK, CK and EK files to transfer format, and it summarizes the contents of binary SPK, CK and EK files. This directory contains the SPACIT main program, supporting routines, and a command procedure to create the executable program SPACIT.EXE. (installation directory) | toolkit | src | spacit | spacit.pgm *.for mkprodct.com SPICELIB This directory contains the SPICELIB FORTRAN source files needed for creating the SPICELIB object library. The library contains approximately 1000 functions, subroutines, and entry points. This directory also contains a command procedure for creating SPICELIB. (installation directory) | toolkit | src | spicelib | *.for mkprodct.com SPKMERGE SPKMERGE is a utility program that is used to subset and merge a collection of SPK files into a single SPK file. This directory contains the SPKMERGE main program, supporting subroutines, and a script to create the executable file spkmerge. (installation directory) | toolkit | src | spkmerge | *.for spkmerge.pgm mkprodct.com SUPPORT SUPPORT is a Fortran source code library that contains routines that support the Toolkit programs. These routines are not intended to be used by anyone except NAIF. These routines are not officially supported and may undergo radical changes such as calling sequence changes. They may even be deleted. Do not use them! This directory contains the SUPPORT library source files and a command procedure to create the object library SUPPORT.OLB. (installation directory) | toolkit | src | support | *.for mkprodct.com TOBIN TOBIN (to-bin) is a command line utility program that converts transfer format SPK, CK and EK files to binary format. This directory contains the TOBIN main program, supporting routines, and a command procedure to create the executable program TOBIN.EXE. (installation directory) | toolkit | src | tobin | tobin.pgm *.for mkprodct.com TOXFR TOXFR (to-transfer) is a command line utility program that converts binary format SPK, CK and EK files to transfer format. This directory contains the TOXFR main program, supporting routines, and a command procedure to create the executable program TOXFR.EXE. (installation directory) | toolkit | src | toxfr | toxfr.pgm *.for mkprodct.com VERSION VERSION is a command line utility program that prints the current version number of the SPICE Toolkit. This directory contains the VERSION main program. and a command procedure to create the executable program version. (installation directory) | toolkit | src | version | version.pgm mkprodct.com TESTUTIL TESTUTIL is a Fortran source code library that contains routines that help test the Toolkit programs. These routines are not intended to be used by anyone except NAIF. These routines are not officially supported and may undergo radical changes such as calling sequence changes. They may even be deleted. Do not use them! This directory contains the TESTUTIL library source files and a command procedure to create the object library TESTUTIL.OLB. (installation directory) | toolkit | src | testutil | *.for mkprodct.com TSPICE TSPICE is a utility program that performs a collection of standard tests on spicelib functions and subroutines and creates a report indicating the success of those tests. This directory contains the TSPICE main program, supporting routines, and a command procedure to create the executable program tspice. (installation directory) | toolkit | src | tspice | tspice.pgm *.for mkprodct.com Using the NAIF Toolkit Package =========================================================================== After the installation has been completed successfully, there are a few things that you need to do to get started using SPICELIB. We recommend that you print out the source code for the cookbook programs and examine it. Try running some of the cookbook programs yourself. The cookbook programs demonstrate how to use SPICELIB routines to obtain state vectors, convert between different time representations, and solve simple geometry problems. Once you're ready to get your hands dirty, you should read the required reading files for SPICELIB. The required reading files are located in the directory ``doc'' (see above) with the extension ``.req''. They are text files that describe families of subroutines and how they interact with the rest of SPICELIB. The most important required reading files are: TIME, KERNEL, SPK, CK, SCLK, SPC, and NAIF_IDS. You should read at least these. After you've done these things, you're ready to start programming with SPICELIB! Appendix -- NAIF's File Naming Conventions =========================================================================== NAIF follows a set of conventions for naming files based on the contents of the files. This allows you to find certain types of files in a directory tree quickly. Source code modules: *.pgm Fortran or C source files for program modules. *.for Fortran source code files. *.f *.inc Fortran include files. *.c C source code files. *.h C header files. *.pro IDL source code files. Executables, libraries, object files: (no ext) Executable files. *.exe *.o Object files. *.obj *.a Object library files. *.lib *.olb *.so *.dlm IDL library definition modules. *.def Documents: *.req Text format Required Reading files. *.ug Text format User's Guides. *.idx Permuted index files. *.txt Text format documentation files. *.tex TeX files. *.dvi Device independent files produced by TeX. *.ps Postscript files. *.pdf PDF files. *.htm HTML files. *.html SPICE Kernel files: *.bsp Binary SPK (ephemeris) files. *.tsp Transfer format SPK files. *.xsp *.bc Binary CK (pointing) files. *.tc Transfer format CK files. *.xc *.tpc Text PCK (planetary constants) files. *.bpc Binary PCK files. *.xpc Transfer format PCK files. *.ti Text IK (instrument parameters) files. *.tls Text LSK (leapseconds) files. *.tsc Text SCLK (spacecraft clock) files. *.tf Text FK (frame definitions) files. *.bes Binary EK (events) Sequence files. *.tes Transfer format EK Sequence files. *.xes *.ten Text EK Experimenter's Notebook files. *.tep Text EK Science Plan files. *.bdb Binary SPICE Database files. *.xdb Transfer format SPICE Database files. Build scripts: mkprodct.csh Unix build scripts. mkprodct.sh mkprodct.com VAX/Dec Alpha build scripts. mkprodct.bat PC/DOS, PS/WIN build scripts. mkprodct.mpw MAC MPW build scripts. mkprodct.mas MAC Apple Script build scripts.