Index of Functions: A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X 
Index Page
cspice_spkopn

Table of contents
Abstract
I/O
Parameters
Examples
Particulars
Exceptions
Files
Restrictions
Required_Reading
Literature_References
Author_and_Institution
Version
Index_Entries


Abstract


   CSPICE_SPKOPN creates a new SPK file, returning the handle of the opened
   file.

I/O


   Given:

      fname    the name of the new SPK file to be created.

               help, fname
                  STRING = Scalar

      ifname   the internal filename for the SPK file that is being created.

               help, ifname
                  STRING = Scalar

               The internal filename may be up to 60 characters long. If you
               do not have any conventions for tagging your files, an internal
               filename of 'SPK_file' is perfectly acceptable. You may also
               leave it blank if you like.

      ncomch   the space, measured in characters, to be initially set aside for
               the comment area when a new SPK file is opened.

               help, ncomch
                  LONG = Scalar

               The amount of space actually set aside may be greater than the
               amount requested, due to the manner in which comment records are
               allocated in an SPK file. However, the amount of space set aside
               for comments will always be at least the amount that was
               requested.

               The value of ncomch should be greater than or equal to
               zero, i.e., 0 <= ncomch. A negative value, should one
               occur, will be assumed to be zero.

   the call:

      cspice_spkopn, fname, ifname, ncomch, handle

   returns:

      handle   the handle of the opened SPK file.

               help, handle
                  LONG = Scalar

               If an error occurs when opening the file, the value of this
               variable should not be used, as it will not represent a valid
               handle.

Parameters


   None.

Examples


   Any numerical results shown for this example may differ between
   platforms as the results depend on the SPICE kernels used as input
   and the machine specific arithmetic implementation.

   1) This example demonstrates how to create an SPK type 8 kernel
      containing only one segment, given a time-ordered set of
      discrete states and epochs.


      Example code begins here.


      PRO spkopn_ex1

         ;;
         ;; Define the segment identifier parameters.
         ;;
         BODY       = 3
         CENTER     = 10
         REF        = 'J2000'
         POLY_DEG   = 3
         SPK8       = 'spkopn_ex1.bsp'
         N_DISCRETE = 9

         ;;
         ;; A set of epochs.
         ;;
         DISCRETEEPOCHS = [ 100.d, 200.d, 300.d, 400.d, 500.d, $
                          600.d, 700.d, 800.d, 900.d           $
                          ]

         ;;
         ;; An array of discrete states to write to the SPK segment.
         ;;
         DISCRETESTATES = [                                             $
                          [ 101.d, 201.d, 301.d, 401.d, 501.d, 601.d ], $
                          [ 102.d, 202.d, 302.d, 402.d, 502.d, 602.d ], $
                          [ 103.d, 203.d, 303.d, 403.d, 503.d, 603.d ], $
                          [ 104.d, 204.d, 304.d, 404.d, 504.d, 604.d ], $
                          [ 105.d, 205.d, 305.d, 405.d, 505.d, 605.d ], $
                          [ 106.d, 206.d, 306.d, 406.d, 506.d, 606.d ], $
                          [ 107.d, 207.d, 307.d, 407.d, 507.d, 607.d ], $
                          [ 108.d, 208.d, 308.d, 408.d, 508.d, 608.d ], $
                          [ 109.d, 209.d, 309.d, 409.d, 509.d, 609.d ]  $
                          ]

         ;;
         ;; Create a segment identifier.
         ;;
         segid = 'SPK type 8 test segment'

         ;;
         ;; Open a new SPK file.
         ;;
         cspice_spkopn, SPK8, 'Type 8 SPK internal file name.', 4, handle

         step = DISCRETEEPOCHS[1] - DISCRETEEPOCHS[0]

         ;;
         ;; Create a type 8 segment.
         ;;
         cspice_spkw08, handle,                       $
                        BODY,                         $
                        CENTER,                       $
                        REF,                          $
                        DISCRETEEPOCHS[0],            $
                        DISCRETEEPOCHS[N_DISCRETE-1], $
                        segid,                        $
                        POLY_DEG,                     $
                        N_DISCRETE,                   $
                        DISCRETESTATES,               $
                        DISCRETEEPOCHS[0],            $
                        step

         ;;
         ;; Close the SPK file.
         ;;
         cspice_spkcls, handle

      END


      When this program is executed, no output is presented on
      screen. After run completion, a new SPK type 8 exists in
      the output directory.

Particulars


   Open a new SPK file, reserving room for comments if requested.

Exceptions


   1)  If the value of `ncomch' is negative, a value of zero (0) will
       be used for the number of comment characters to be set aside
       for comments.

   2)  If an error occurs while attempting to open the SPK file, the
       value of `handle' will not represent a valid file handle.

   3)  If any of the input arguments, `fname', `ifname' or `ncomch',
       is undefined, an error is signaled by the IDL error handling
       system.

   4)  If any of the input arguments, `fname', `ifname' or `ncomch',
       is not of the expected type, or it does not have the expected
       dimensions and size, an error is signaled by the Icy
       interface.

   5)  If the output argument `handle' is not a named variable, an
       error is signaled by the Icy interface.

Files


   See `fname' and `handle'.

Restrictions


   None.

Required_Reading


   ICY.REQ
   SPK.REQ

Literature_References


   None.

Author_and_Institution


   J. Diaz del Rio     (ODC Space)
   E.D. Wright         (JPL)

Version


   -Icy Version 1.1.0, 05-AUG-2021 (JDR)

       Edited the header to comply with NAIF standard. Added
       complete code example, based on the cspice_spkw08 example.

       Changed the input argument name "name" to "fname" for consistency
       with other routines.

       Added -Parameters, -Exceptions, -Files, -Restrictions,
       -Literature_References and -Author_and_Institution sections, and
       completed -Particulars section.

       Removed reference to the routine's corresponding CSPICE header from
       -Abstract section.

       Added arguments' type and size information in the -I/O section.

   -Icy Version 1.0.2, 19-JAN-2009 (EDW)

       Edits to header text and spelling correction.

   -Icy Version 1.0.0, 16-JUN-2003 (EDW)

Index_Entries


   open a new SPK file



Fri Dec 31 18:43:07 2021