sytrni |
Table of contents
ProcedureSYTRNI (Transpose two values associated with a symbol) SUBROUTINE SYTRNI ( NAME, IDX1, IDX2, TABSYM, TABPTR, TABVAL ) AbstractTranspose two values associated with a particular symbol in an integer symbol table. Required_ReadingSYMBOLS KeywordsSYMBOLS DeclarationsIMPLICIT NONE INTEGER LBCELL PARAMETER ( LBCELL = -5 ) CHARACTER*(*) NAME INTEGER IDX1 INTEGER IDX2 CHARACTER*(*) TABSYM ( LBCELL:* ) INTEGER TABPTR ( LBCELL:* ) INTEGER TABVAL ( LBCELL:* ) Brief_I/OVARIABLE I/O DESCRIPTION -------- --- -------------------------------------------------- NAME I Name of the symbol whose associated values are to be transposed. IDX1 I Index of first associated value to be transposed. IDX2 I Index of second associated value to be transposed. TABSYM, TABPTR, TABVAL I-O Components of the symbol table. Detailed_InputNAME is the name of the symbol whose associated values are to be transposed. If NAME is not in the symbol table, the symbol tables are not modified. IDX1 is the index of the first associated value to be transposed. IDX2 is the index of the second associated value to be transposed. TABSYM, TABPTR, TABVAL are components of the integer symbol table. Detailed_OutputTABSYM, TABPTR, TABVAL are components of the integer symbol table. If the symbol NAME is not in the symbol table the symbol tables are not modified. Otherwise, the values that IDX1 and IDX2 refer to are transposed in the value table. ParametersNone. Exceptions1) If IDX1 < 1, IDX2 < 1, IDX1 > the dimension of NAME, or IDX2 > the dimension of NAME, the error SPICE(INVALIDINDEX) is signaled. 2) If NAME is not in the symbol table, the symbol tables are not modified. FilesNone. ParticularsNone. ExamplesThe contents of the symbol table are: books --> 5 erasers --> 6 pencils --> 12 18 24 pens --> 10 20 30 40 The call, CALL SYTRNI ( 'pens', 2, 3, TABSYM, TABPTR, TABVAL ) modifies the contents of the symbol table to be: books --> 5 erasers --> 6 pencils --> 12 18 24 pens --> 10 30 20 40 The next call, CALL SYTRNI ( 'pencils', 2, 4, TABSYM, TABPTR, TABVAL ) causes the error SPICE(INVALIDINDEX) to be signaled. RestrictionsNone. Literature_ReferencesNone. Author_and_InstitutionN.J. Bachman (JPL) J. Diaz del Rio (ODC Space) H.A. Neilan (JPL) W.L. Taber (JPL) I.M. Underwood (JPL) VersionSPICELIB Version 1.2.0, 08-APR-2021 (JDR) Added IMPLICIT NONE statement. Changed the name of input arguments "I" and "J" to "IDX1" and "IDX2" for consistency with other routines. Edited the header to comply with NAIF standard. SPICELIB Version 1.1.0, 09-SEP-2005 (NJB) Updated so no "exchange" occurs if IDX1 equals IDX2. 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:01 2021