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
rotget

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

     ROTGET ( Frame get rotation )

     SUBROUTINE ROTGET ( INFRM, ET, ROTATE, OUTFRM, FOUND )

Abstract

     Find the rotation from a user specified frame to another frame at
     a user specified epoch.

Required_Reading

     FRAMES

Keywords

     FRAMES

Declarations

     IMPLICIT NONE

     INCLUDE              'frmtyp.inc'

     INTEGER               INFRM
     DOUBLE PRECISION      ET
     DOUBLE PRECISION      ROTATE ( 3, 3 )
     INTEGER               OUTFRM
     LOGICAL               FOUND

Brief_I/O

     VARIABLE  I/O  DESCRIPTION
     --------  ---  --------------------------------------------------
     INFRM      I   The integer code for a SPICE reference frame.
     ET         I   An epoch in seconds past J2000.
     ROTATE     O   A rotation matrix.
     OUTFRM     O   The frame that ROTATE transforms INFRM to.
     FOUND      O   .TRUE. if a rotation can be found.

Detailed_Input

     INFRM    is the SPICE ID-code for some reference frame.

     ET       is an epoch in ephemeris seconds past J2000 at which
              the user wishes to retrieve a rotation matrix.

Detailed_Output

     ROTATE   is a 3x3 matrix that rotates positions relative to
              INFRM to positions relative to OUTFRM. (Assuming such
              a rotation can be found.)

     OUTFRM   is the SPICE ID-code of a reference frame. The 3x3
              matrix ROTATE rotates positions relative to INFRM to
              positions relative to OUTFRM. The positions
              transformation is achieved by multiplying ROTATE on
              the right by a position relative to INFRM. This is
              easily accomplished via the subroutine call shown
              below.

                 CALL MXV  ( ROTATE, INPOS,  OUTPOS )

     FOUND    is a logical flag indicating whether or not a
              rotation matrix could be found from INFRM to some
              other frame. If a rotation matrix cannot be found
              OUTFRM will be set to zero, FOUND will be set to
              .FALSE. and ROTATE will be returned as the zero matrix.

Parameters

     None.

Exceptions

     1)  If a rotation matrix cannot be located, then FOUND will be set
         to .FALSE., OUTFRM will be set to zero and ROTATE will be set
         to the zero 3x3 matrix.

     2)  If the class of the requested frame is not recognized the
         exception, the error SPICE(UNKNOWNFRAMETYPE) is signaled.

Files

     LSK, SCLK, PCK, FK, SPK, and/or CK kernels may need to be loaded
     to provide the needed frame definition and transformation data.

Particulars

     This is a low level routine used for determining a chain of
     position transformation matrices from one frame to another.

Examples

     See REFCHG.

Restrictions

     None.

Literature_References

     None.

Author_and_Institution

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

Version

    SPICELIB Version 5.0.0, 15-MAR-2021 (NJB) (JDR)

        **Updated shadow routines ZZROTGT0 and ZZROTGT1, as must be
          done each time this routine is updated.**

        Support for switch frames was added. VERSN is now
        initialized via a DATA statement. Corrected long error
        message to use the term "class" rather than "class id-code."

        Edited the header to comply with NAIF standard.

    SPICELIB Version 4.0.0, 21-MAR-2014 (BVS)

        To prevent operations with un-initialized DP numbers, wrapped
        IF ( .NOT. FAILED() ) ... END IF around output matrix
        transposition operation in the PCK frame branch where the
        routine returning the matrix might fail.

        Incremented major version token by 2 to sync up versions with
        FRMGET.

    SPICELIB Version 2.1.0, 02-MAR-2010 (NJB)

        Bug fix: frame ID rather than frame class ID
        is now passed to dynamic frame evaluation
        routine ZZDYNROT. Order of header sections was
        corrected.

    SPICELIB Version 2.0.0, 18-DEC-2004 (NJB)

        Added the new frame type 'DYN' to the list of frame
        types recognized by ROTGET.

    SPICELIB Version 1.0.0, 03-MAR-1999 (WLT)
Fri Dec 31 18:36:44 2021