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
frmnam

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

     FRMNAM ( FRaMe id to frame NAMe )

     ENTRY FRMNAM ( FRCODE, FRNAME )

Abstract

     Retrieve the name of a reference frame associated with a SPICE ID
     code.

Required_Reading

     FRAMES

Keywords

     FRAMES

Declarations

    INTEGER               FRCODE
    CHARACTER*(*)         FRNAME

Brief_I/O

     VARIABLE  I/O  DESCRIPTION
     --------  ---  --------------------------------------------------
     FRCODE     I   an integer code for a reference frame
     FRNAME     O   the name associated with the reference frame.

Detailed_Input

     FRCODE   is an integer code for a reference frame.

Detailed_Output

     FRNAME   is the name associated with the reference frame. It will
              be returned left justified.

              If FRCODE is not recognized as the name of a known
              reference frame, FRNAME will be returned as a blank.

              If FRNAME is not sufficiently long to hold the name, it
              will be truncated on the right.

              All reference frame names are 26 or fewer characters in
              length. Thus declaring FRNAME to be CHARACTER*(26) will
              ensure that the returned name will not be truncated.

Parameters

     None.

Exceptions

     1)  If FRCODE is not recognized as the name of a known reference
         frame, FRNAME will be returned as a blank.

     2)  If FRNAME is not sufficiently long to hold the name, it will
         be truncated on the right.

Files

     None.

Particulars

     This routine retrieves the name of a reference frame associated
     with a SPICE frame ID code.

     The ID codes stored locally are scanned for a match with FRCODE.
     If a match is found, the name stored locally will be returned
     as the name for the frame.

     If FRCODE is not a member of the list of internally stored
     ID codes, the kernel pool will be examined to see if the
     variable

        FRAME_idcode_NAME

     is present (where idcode is the decimal character equivalent
     of FRCODE). If the variable is located and it has both
     character type and dimension 1, the string value of the
     kernel pool variable is returned as the name of the reference
     frame.

     Note that because the local information is always examined
     first and searches of the kernel pool are performed only
     after exhausting local information, it is not possible to
     override the local name for any reference frame that is
     known by this routine.

Examples

     Suppose you needed to create a message concerning a reference
     frame and wish to use the name of the frame in the message.
     Suppose further that you have only the frame ID code at your
     disposal. You can capture the frame name using this routine
     as shown here.

        CHARACTER*(32)        FRNAME

        CALL FRMNAM ( FRCODE, FRNAME )

        IF ( FRNAME .EQ. ' ' ) THEN
           CALL INTSTR ( FRCODE, FRNAME )
        END IF

        WRITE (*,*) 'Concerning reference frame:', FRNAME

        print the rest of your message.

Restrictions

     None.

Literature_References

     None.

Author_and_Institution

     J. Diaz del Rio    (ODC Space)
     B.V. Semenov       (JPL)
     W.L. Taber         (JPL)

Version

    SPICELIB Version 3.1.1, 02-AUG-2021 (JDR)

        Edited the header to comply with NAIF standard. Updated maximum
        frame name length in detailed description of FRNAME argument
        and changed frame name length from 26 to 32 in example code.

    SPICELIB Version 3.1.0, 08-AUG-2012 (BVS)

        The routine was updated to be more efficient by using hashes
        instead kernel POOL look-ups for kernel POOL frames and by
        using hashes instead of ordered array searches for built-in
        frames.

    SPICELIB Version 3.0.1, 25-JUN-1999 (WLT)

        Extended documentation of entry point CNMFRM and
        corrected example for that entry point.

    SPICELIB Version 3.0.0, 03-JUN-1997 (WLT)

        The entry points CIDFRM and CNMFRM were added so that
        user's may determine the frame-id and name to associated
        with a planetary object.

    SPICELIB Version 2.0.0, 04-APR-1997 (WLT)

        The routine was upgraded to reflect that a block of
        frame ID codes have been reserved for use by the DSN.
        ID codes 13001 to 13999 have been set aside for DSN
        models for the orientation of the earth. These frames
        are all PCK frames. Moreover, the PCK ID code to
        use with these frames is simply the Frame-Code minus 10000.
        All of these frames are centered at the earth (body 399).

    SPICELIB Version 1.1.0, 14-OCT-1996 (WLT)

        The values NINERT and NNINRT are included instead of
        being declared locally.

    SPICELIB Version 1.0.0, 18-SEP-1995 (WLT)
Fri Dec 31 18:36:23 2021