sypopd |
Table of contents
ProcedureSYPOPD ( Pop a value from a particular symbol ) SUBROUTINE SYPOPD ( NAME, TABSYM, TABPTR, TABVAL, VALUE, FOUND ) AbstractPop 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_ReadingSYMBOLS KeywordsSYMBOLS DeclarationsIMPLICIT 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/OVARIABLE 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_InputNAME 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_OutputTABSYM, 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. ParametersNone. ExceptionsNone. FilesNone. ParticularsIf there are no remaining values associated with the symbol after VALUE has been popped, the symbol is removed from the symbol table. ExamplesThe 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. RestrictionsNone. Literature_ReferencesNone. Author_and_InstitutionJ. Diaz del Rio (ODC Space) H.A. Neilan (JPL) W.L. Taber (JPL) I.M. Underwood (JPL) VersionSPICELIB 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