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
sypopd

Table of contents
Procedure
Abstract
Required_Reading
Keywords
Declarations
Brief_I/O
Detailed_Input
Detailed_Output
Parameters
Exceptions
Files
Particulars
Examples
Restrictions
Literature_References
Author_and_Institution
Version

Procedure

     SYPOPD ( Pop a value from a particular symbol )

     SUBROUTINE SYPOPD ( NAME, TABSYM, TABPTR, TABVAL, VALUE, FOUND )

Abstract

     Pop a value associated with a particular symbol in a double
     precision symbol table. The first value associated with the
     symbol is removed, and subsequent values are moved forward.

Required_Reading

     SYMBOLS

Keywords

     SYMBOLS

Declarations

     IMPLICIT NONE

     INTEGER               LBCELL
     PARAMETER           ( LBCELL = -5 )

     CHARACTER*(*)         NAME
     CHARACTER*(*)         TABSYM     ( LBCELL:* )
     INTEGER               TABPTR     ( LBCELL:* )
     DOUBLE PRECISION      TABVAL     ( LBCELL:* )
     DOUBLE PRECISION      VALUE
     LOGICAL               FOUND

Brief_I/O

     VARIABLE  I/O  DESCRIPTION
     --------  ---  --------------------------------------------------
     NAME       I   Name of the symbol whose associated value is to be
                    popped.
     TABSYM,
     TABPTR,
     TABVAL    I-O  Components of the symbol table.
     VALUE      O   Value that was popped.
     FOUND      O   .TRUE. if the symbol exists, .FALSE. otherwise.

Detailed_Input

     NAME     is the name of the symbol whose associated value is to
              be popped.

     TABSYM,
     TABPTR,
     TABVAL   are the components of a double precision symbol table.

Detailed_Output

     TABSYM,
     TABPTR,
     TABVAL   are the components of a double precision symbol table.

              The value is removed from the symbol table, and the
              remaining values associated with the symbol are moved
              forward in the value table. If no other values are
              associated with the symbol, the symbol is removed from
              the symbol table.

     VALUE    is the value that was popped. This value was the first
              value in the symbol table that was associated with the
              symbol NAME.

     FOUND    is .TRUE. if NAME is in the symbol table, otherwise
              it is .FALSE.

Parameters

     None.

Exceptions

     None.

Files

     None.

Particulars

     If there are no remaining values associated with the symbol
     after VALUE has been popped, the symbol is removed from the
     symbol table.

Examples

     The contents of the symbol table are:

        BODY4_POLE_RA -->    3.17681D2
                             1.08D-1
                             0.0D0
        DELTA_T_A     -->    3.2184D1
        K             -->    1.657D-3
        MEAN_ANOM     -->    6.239996D0
                             1.99096871D-7
        ORBIT_ECC     -->    1.671D-2

     The call,

        CALL SYPOPD ( 'MEAN_ANOM', TABSYM, TABPTR, TABVAL,
       .                                   VALUE,  FOUND   )

     modifies the contents of the symbol table to be:

        BODY4_POLE_RA -->    3.17681D2
                             1.08D-1
                             0.0D0C
        DELTA_T_A     -->    3.2184D1
        K             -->    1.657D-3
        MEAN_ANOM     -->    1.99096871D-7
        ORBIT_ECC     -->    1.671D-2

     FOUND is .TRUE., and VALUE is 6.239996D0.


     The next call,

        CALL SYPOPD ( 'K', TABSYM, TABPTR, TABVAL, VALUE, FOUND )

     modifies the contents of the symbol table to be:

        BODY4_POLE_RA -->    3.17681D2
                             1.08D-1
                             0.0D0C
        DELTA_T_A     -->    3.2184D1
        MEAN_ANOM     -->    1.99096871D-7
        ORBIT_ECC     -->    1.671D-2

      FOUND is .TRUE., and VALUE is  1.657D-3. Note that because
      "K" had only one value associated with it, it was removed
      from the symbol table.

Restrictions

     None.

Literature_References

     None.

Author_and_Institution

     J. Diaz del Rio    (ODC Space)
     H.A. Neilan        (JPL)
     W.L. Taber         (JPL)
     I.M. Underwood     (JPL)

Version

    SPICELIB Version 1.1.0, 08-APR-2021 (JDR)

        Added IMPLICIT NONE statement.

        Edited the header to comply with NAIF standard.

    SPICELIB Version 1.0.1, 10-MAR-1992 (WLT)

        Comment section for permuted index source lines was added
        following the header.

    SPICELIB Version 1.0.0, 31-JAN-1990 (IMU) (HAN)
Fri Dec 31 18:37:00 2021