synthc |
Table of contents
ProcedureSYNTHC ( Return Nth value associated with the symbol ) SUBROUTINE SYNTHC ( NAME, . NTH, . TABSYM, TABPTR, TABVAL, . VALUE, . FOUND ) AbstractReturn the Nth value associated with a particular symbol in a character symbol table. Required_ReadingSYMBOLS KeywordsSYMBOLS DeclarationsIMPLICIT NONE INTEGER LBCELL PARAMETER ( LBCELL = -5 ) CHARACTER*(*) NAME INTEGER NTH CHARACTER*(*) TABSYM ( LBCELL:* ) INTEGER TABPTR ( LBCELL:* ) CHARACTER*(*) TABVAL ( LBCELL:* ) CHARACTER*(*) VALUE LOGICAL FOUND Brief_I/OVARIABLE I/O DESCRIPTION -------- --- -------------------------------------------------- NAME I Name of the symbol whose Nth associated value is to be returned. NTH I Index of the value to be returned. TABSYM, TABPTR, TABVAL I Components of the symbol table. VALUE O Nth value associated with the symbol. FOUND O .TRUE. if the Nth value of the symbol exists. Detailed_InputNAME is the name of the symbol whose Nth associated value is to be returned. If NAME is not in the symbol table, FOUND is .FALSE. NTH is the index of the value to be returned. If the value of NTH is out of range ( NTH < 1 or NTH is greater than the dimension of the symbol ) FOUND is .FALSE. TABSYM, TABPTR, TABVAL are the components of a character symbol table. The symbol table is not modified by this subroutine. Detailed_OutputVALUES is the NTH value associated with the symbol NAME. FOUND is .TRUE. if NAME is in the symbol table and the NTH value associated with NAME exists. Otherwise FOUND is .FALSE. ParametersNone. Exceptions1) If there is an issue while reading the components of a character symbol table, an error is signaled by a routine in the call tree of this routine. This normally indicates that the character symbol table is corrupted. FilesNone. ParticularsTwo conditions will cause the value of FOUND to be .FALSE.: 1) The symbol NAME is not in the symbol table. 2) NTH is out of range ( NTH < 1 or NTH is greater than the dimension of the symbol ). ExamplesThe contents of the symbol table are: BOHR --> HYDROGEN ATOM EINSTEIN --> SPECIAL RELATIVITY PHOTOELECTRIC EFFECT BROWNIAN MOTION FERMI --> NUCLEAR FISSION The calls, CALL SYNTHC ( 'EINSTEIN', 2, TABSYM, TABPTR, TABVAL, VALUE, . FOUND ) CALL SYNTHC ( 'BORN', 2, TABSYM, TABPTR, TABVAL, VALUE, . FOUND ) CALL SYNTHC ( 'MAXWELL', 5, TABSYM, TABPTR, TABVAL, VALUE, . FOUND ) return the values of VALUE and FOUND corresponding to NAME and NTH: NAME NTH VALUE FOUND ---------- ----- ---------------------- ------- EINSTEIN 2 PHOTOELECTRIC EFFECT .TRUE. BORN 2 .FALSE. MAXWELL 5 .FALSE. 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, 16-AUG-2021 (JDR) Added IMPLICIT NONE statement. Edited the header to comply with NAIF standard. Added entry #1 in $Exceptions section. 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