| SPKMERGE User's Guide |
Table of ContentsSPKMERGE User's Guide Abstract Introduction Running SPKMERGE Command file syntax Command file keywords LEAPSECONDS_KERNEL SPK_KERNEL SOURCE_SPK_KERNEL BODIES BEGIN_TIME, END_TIME LOG_FILE INCLUDE_COMMENTS SPKMERGE User's Guide
Abstract
Introduction
SPKMERGE reads all its instructions from a command file. A command file is an ASCII formatted file containing `KEYWORD = value' assignments. Running SPKMERGE
Command file syntax
Command file keywords
LEAPSECONDS_KERNEL SPK_KERNEL SOURCE_SPK_KERNELThe `LEAPSECONDS_KERNEL' keyword must appear in the file before the first `SPK_KERNEL' keyword. An `SPK_KERNEL' keyword must appear before the first `SOURCE_SPK_KERNEL' keyword. The optional keywords are:
LOG_FILE BODIES BEGIN_TIME END_TIME INCLUDE_COMMENTSNormally keywords must appear in the following order:
LEAPSECONDS_KERNEL = <LSK file name> (required)
SPK_KERNEL = <output SPK name> (required)
LOG_FILE = <log file name> (optional)
BODIES = <body ID list> (optional)
BEGIN_TIME = <begin time> (optional)
END_TIME = <end time> (optional)
... more BEGIN_/END_TIME pairs can follow ... (optional)
SOURCE_SPK_KERNEL = <source SPK name> (required)
INCLUDE_COMMENTS = <yes or no> (optional)
BODIES = <body ID list> (optional)
BEGIN_TIME = <begin time> (optional)
END_TIME = <end time> (optional)
... more BEGIN_/END_TIME pairs can follow ... (optional)
SOURCE_SPK_KERNEL = <source SPK name> (optional)
INCLUDE_COMMENTS = <yes or no> (optional)
BODIES = <body ID list> (optional)
BEGIN_TIME = <begin time> (optional)
END_TIME = <end time> (optional)
... more SOURCE_SPK_KERNEL blocks can follow ... (optional)
SPK_KERNEL = <output SPK name> (optional)
LOG_FILE = <log file name> (optional)
BODIES = <body ID list> (optional)
BEGIN_TIME = <begin time> (optional)
END_TIME = <end time> (optional)
... more BEGIN_/END_TIME pairs can follow ... (optional)
SOURCE_SPK_KERNEL = <source SPK name> (optional)
INCLUDE_COMMENTS = <yes or no> (optional)
BODIES = <body ID list> (optional)
BEGIN_TIME = <begin time> (optional)
END_TIME = <end time> (optional)
... more BEGIN_/END_TIME pairs can follow ... (optional)
... more SOURCE_SPK_KERNEL blocks can follow ... (optional)
... more SPK_KERNEL blocks can follow ... (optional)
All the keywords are described in detail below.
LEAPSECONDS_KERNEL
LEAPSECONDS_KERNEL = /kernels/gen/lsk/naif0010.tls SPK_KERNEL
Multiple SPK files (up to 1000) can be created by SPKMERGE by repeating the `SPK_KERNEL' assignment. SOURCE_SPK_KERNEL
The sample command file below instructs SPKMERGE to create one SPK file by merging three existing SPK files in their entirety.
LEAPSECONDS_KERNEL = /kernels/gen/lsk/naif0010.tls
SPK_KERNEL = complete.bsp
SOURCE_SPK_KERNEL = planets.bsp
SOURCE_SPK_KERNEL = gll_1.bsp
SOURCE_SPK_KERNEL = gll_2.bsp
SPKMERGE will not create an SPK file that has overlapping data. The
files you list first have precedence. (Caution: this is the opposite of
the precedence rules used elsewhere in SPICE!) In the example above,
source data from planets.bsp will have precedence over data from
gll_1.bsp, and both will have precedence over gll_2.bsp.
BODIES
The bodies must be given as NAIF integer body IDs; the IDs may be delimited by spaces or commas. In the example below, only data for bodies 10, 399 and 301 will be merged from `planets.bsp'. The other two files will be merged in their entirety---assuming no overlapping data.
LEAPSECONDS_KERNEL = /kernels/gen/lsk/naif0010.tls
SPK_KERNEL = complete.bsp
SOURCE_SPK_KERNEL = planets.bsp
BODIES = 10, 399, 301
SOURCE_SPK_KERNEL = gll_1.bsp
SOURCE_SPK_KERNEL = gll_2.bsp
If you want to merge only data for bodies 10, 399, 301 and -77, from
each of the three source files the command file could be structured as
shown below:
LEAPSECONDS_KERNEL = /kernels/gen/lsk/naif0010.tls
SPK_KERNEL = complete.bsp
BODIES = 10, 399, 301, -77
SOURCE_SPK_KERNEL = planets.bsp
SOURCE_SPK_KERNEL = gll_1.bsp
SOURCE_SPK_KERNEL = gll_2.bsp
BEGIN_TIME, END_TIME
SPKMERGE accepts many different time input formats from a variety of time systems. The default input system is UTC, but one may specify ephemeris time (TDB) instead. For complete details on the accepted time strings see the STR2ET section of ``Time Required Reading'' (time.req). Below are a few examples. The following illustrates utilization of the default time system, UTC.
LEAPSECONDS_KERNEL = /kernels/gen/lsk/naif0010.tls
SPK_KERNEL = complete.bsp
SOURCE_SPK_KERNEL = planets.bsp
BEGIN_TIME = 1 JAN 1994 00:00:00.000
END_TIME = 1 JUL 1994 00:00:00.000
SOURCE_SPK_KERNEL = gll_1.bsp
BEGIN_TIME = 1 JAN 1994 00:00:00.000
END_TIME = 1 JUL 1994 00:00:00.000
SOURCE_SPK_KERNEL = gll_2.bsp
BEGIN_TIME = 1 JAN 1994 00:00:00.000
END_TIME = 1 JUL 1994 00:00:00.000
To select ephemeris time (ET, also called Barycentric Dynamical Time or
TDB) as the desired input time system, append TDB to the end of the time
string. The following example demonstrates the merging of the contents
of two SPK files for the period between the ephemeris times `15 Feb
1998' and `21 Jul 1998'.
LEAPSECONDS_KERNEL = /kernels/gen/lsk/naif0010.tls
SPK_KERNEL = complete.bsp
SOURCE_SPK_KERNEL = planets.bsp
BEGIN_TIME = 15 FEB 1998 00:00:00.000 TDB
END_TIME = 21 JUL 1998 00:00:00.000 TDB
SOURCE_SPK_KERNEL = mgs_ab2.bsp
BEGIN_TIME = 15 FEB 1998 00:00:00.000 TDB
END_TIME = 21 JUL 1998 00:00:00.000 TDB
In the following example SPKMERGE is instructed to merge only the UTC
times `1 Jan 1994' through `2 Jan 1994'. Since no `BODIES' keyword is
given, all bodies will be merged. In this example a command log file is
also produced (see explanation below).
LEAPSECONDS_KERNEL = /kernels/gen/lsk/naif0010.tls
SPK_KERNEL = complete.bsp
LOG_FILE = gll_early_cruise.log
BEGIN_TIME = 1 JAN 1994 00:00:00.000
END_TIME = 1 JUL 1994 00:00:00.000
SOURCE_SPK_KERNEL = planets.bsp
SOURCE_SPK_KERNEL = gll_1.bsp
SOURCE_SPK_KERNEL = gll_2.bsp
LOG_FILE
INCLUDE_COMMENTS
|