CKSPANIT (ck-span-it) User's Guide
===========================================================================
Version 2: January 14, 1999.
CKSPANIT is a program for creating a type 3 CK file having specified
interpolation intervals. The program accepts as input a CK file
containing only type 1 or type 3 segments. For each input segment,
CKSPANIT reads all pointing data from the segment, computes
interpolation intervals based on a user-specified tolerance, and
writes exactly the same pointing information accompanied by new
interpolation intervals into the output CK file.
Usage
--------------------------------------------------------
CKSPANIT is used as follows:
> ckspanit -in
-out
-tol
[-frm ]
where inputs provided on the command line are:
INPUT CK FILE name of an existing CK file containing only
type 1 and type 3 segments
OUTPUT CK FILE name of type 3 CK file to be created
TOLERANCE tolerance specified as a number of SCLK ticks.
This tolerance is used to determine
interpolation intervals as follows: if the time
interval between two adjacent pointing
instances in the input data is greater than the
tolerance, the program decides that orientation
cannot be interpolated between these two
instances and ``declares'' the end of a
previous interpolation interval at the earlier
point and the start of a new interval at the
latter point.
FRAMES FILE [OPTIONAL] name of a frame definitions file.
This file is required only if orientation in
the input CK file is given relative not to a
SPICE standard (inertial or body fixed IAU)
frame but rather to a user or project defined
frame (spacecraft frame, instrument frame,
etc.)
The command line keys ``-in'', ``-out'', ``-tol'' and ``-frm'' must be
lowercase. CKSPANIT will display usage information if it's executed
without command line parameters.
Practical example
--------------------------------------------------------
Normally, this program is used either to convert a type 1 CK to type
3, or to ``fill in'' gaps in type 3 CK files in which interpolation
intervals were initially computed with a relatively small tolerance.
An example of the second usage: if an MGS spacecraft CK file contains
a few ``gaps'' smaller than 5 minutes which appeared in the file
because of orientation telemetry dropouts, and if the file had an
initial tolerance of 1 minute, CKSPANIT can be used to create a new
file which will allow interpolating over these gaps:
> ckspanit -in mgs_1min.bc -out mgs_5min.bc -tol 76800
>
Note that 5 minute tolerance is given as 76800 ticks -- 256 ticks/sec
by 60 sec/min by 5 min.
For an MGS solar array CK, in a similar situation, a frame definitions
file will also have to be provided as an input on the command line
because solar array orientation is given relative to the MGS
spacecraft frame.
> ckspanit -in sa_1min.bc -out sa_5min.bc -tol 76800 -frm mgs.tfd
>
A few words of warning
--------------------------------------------------------
The phrase ``garbage in, garbage out'' applies to kernels created
using this program. If the interpolation tolerance supplied is too
large to ensure correct interpolation, the output file may contain
wildly incorrect pointing or angular velocity data.
Before creating a new CK file, either starting with a type 1 CK or by
``filling gaps'' in an existing type 3 CK, make sure that you really
may properly allow interpolation over the new interpolation intervals
you define. Try to confirm that relevant spacecraft or spacecraft
structure was rotating smoothly and slowly throughout the
interpolation intervals, and that the intervals are short enough so
that the total angle of rotation over any interpolation interval is
small. If the total rotation angle over an interpolation interval is
180 degrees or more, aliasing will occur, yielding nonsensical
results.
Also, since it's a low priority for NAIF to make CKSPANIT intelligent
enough to be able to read and understand comments in the original
file, CKSPANIT doesn't copy these comments or any subset of them to
the output file. Therefore, it's the full responsibility of the user
to document new files created by this program.