Index Page dskstl_c

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

Procedure Abstract Required_Reading Keywords Brief_I/O Detailed_Input | Detailed_Output Parameters Exceptions Files Particulars Examples | Restrictions Literature_References Author_and_Institution Version Index_Entries

#### Procedure

       void dskstl_c ( SpiceInt        keywrd,
                       SpiceDouble     dpval  )

#### Abstract

       Set the value of a specified DSK tolerance or margin parameter.

#### Required_Reading

       DSK

#### Keywords

       DSK
       MARGIN
       NUMERIC
       TOLERANCE

#### Brief_I/O

       Variable  I/O  Description
       --------  ---  --------------------------------------------------
       keywrd     I   Code specifying parameter to set.
       dpval      I   Value of parameter.

#### Detailed_Input

       keywrd     is an integer code specifying the parameter to set. See
                  the include file dsktol.inc for a description of the
                  possible keywords.

       dpval      is the new value of the parameter specified by `keywrd'.

                  <<< Use extreme caution. This routine performs no
                  checks on DPVAL. >>>

#### Detailed_Output

       None. This routine operates by side effects.

#### Parameters

       See the header file

          SpiceDtl.h

       for descriptions and values of the tolerance or margin parameters
       accessed by this routine, and of the keyword parameters used to
       refer to them.

#### Exceptions

       1)  If the input keyword is not recognized, the error
           SPICE(INDEXOUTOFRANGE) is signaled.

       2)  If an attempt is made to modify a fixed parameter,
           the error SPICE(IMMUTABLEVALUE) is signaled.

#### Files

       None.

#### Particulars

       The DSK tolerance routines centralize numeric tolerance and margin
       values used by the DSK subsystem. The DSK subsystem retrieves values
       from the DSK tolerance subsystem to use at run time.

       The DSK tolerance access functions are

          dskgtl_c {DSK, get tolerance value}
          dskstl_c {DSK, set tolerance value}

       To minimize run time overhead, the "keywords" used by these routines
       to identify parameters are actually integer codes.

       SPICE users may override certain values maintained by this subsystem;
       others values are fixed. It is recommended that any change to the
       tolerance values made at run time be performed only by expert SPICE
       users.

#### Examples

       1) Obtain, display, and update the DSK type 2 plate expansion fraction:

             #include <stdio.h>
             #include "SpiceUsr.h"

             int main()
             {
                SpiceDouble             dpval;

                dskgtl_c ( SPICE_DSK_KEYXFR, &dpval );

                printf ( "Default plate expansion fraction = %e\n", dpval );

                /.
                Update the parameter.
                ./
                dskstl_c ( SPICE_DSK_KEYXFR, 1.e-8  );

                /.
                Verify the update.
                ./
                dskgtl_c ( SPICE_DSK_KEYXFR, &dpval );

                printf ( "New plate expansion fraction     = %e\n", dpval );

                return ( 0 );
             }

#### Restrictions

       1)  The default settings used by the DSK subsystem should be
           overridden only by expert SPICE users.

       2)  The entry points of this routine do not check the validity of
           new parameter values supplied by the calling application.

#### Literature_References

       None.

#### Author_and_Institution

       N.J. Bachman    (JPL)

#### Version

       -CSPICE Version 1.0.0, 27-FEB-2016 (NJB)

#### Index_Entries

       set dsk tolerance or margin parameters

#### Link to routine dskstl_c source file dskstl_c.c

    Wed Apr  5 17:54:32 2017