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
irftrn

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

     IRFTRN ( Inertial reference frame transformation )

     SUBROUTINE IRFTRN ( REFA, REFB, ROTAB )

Abstract

     Return the matrix that transforms vectors from one specified
     inertial reference frame to another.

Required_Reading

     SPK

Keywords

     CONVERSION
     COORDINATES
     FRAMES
     MATRIX
     ROTATION
     TRANSFORMATION

Declarations

     IMPLICIT NONE

     CHARACTER*(*)         REFA
     CHARACTER*(*)         REFB
     DOUBLE PRECISION      ROTAB ( 3, 3 )

Brief_I/O

     VARIABLE  I/O  DESCRIPTION
     --------  ---  --------------------------------------------------
     REFA       I   Name of reference frame to transform vectors FROM.
     REFB       I   Name of reference frame to transform vectors TO.
     ROTAB      O   REFA-to-REFB transformation matrix.

Detailed_Input

     REFA,
     REFB     are the names of two inertial reference frames. Any names
              accepted by the routine IRFNUM may be used. See
              $Particulars for a list of some of the more commonly used
              inertial reference frame names.

Detailed_Output

     ROTAB    is a rotation matrix that transforms the
              coordinates of a vector V relative to the
              reference frame specified by REFA to the
              coordinates of V relative to the reference frame
              specified by REFB. The transformation is carried
              out by the matrix multiplication

                 V = ROTAB * V.

Parameters

     None.

Exceptions

     1)  If either of the input reference frame names is invalid, an
         error is signaled by a routine in the call tree of this
         routine.

Files

     None.

Particulars

     Normally applications should call the more general, higher level
     routine PXFORM instead of this routine.

     This routine is a macro that replaces the code fragment

        CALL IRFNUM ( REFA,  CODEA        )
        CALL IRFNUM ( REFB,  CODEB        )
        CALL IRFROT ( CODEA, CODEB, ROTAB )


     Among the reference frame names accepted by IRFNUM are:

        'J2000'
        'B1950'
        'FK4'
        'DE-96'
        'DE-102'
        'DE-108'
        'DE-111'
        'DE-114'
        'DE-118'
        'DE-122'
        'DE-125'
        'DE-130'
        'DE-200'
        'DE-202'
        'GALACTIC'

     See the SPICELIB routine GHGIRF for details.

Examples

     1)  Transform a vector V1950 from the B1950 to the J2000
         reference frame.

            C
            C     Ask IRFTRN for the matrix that transforms vectors
            C     from the B1950 to the J2000 reference frame.
            C
                  CALL IRFTRN ( 'B1950', 'J2000', TRANS )

            C
            C     Now transform V1950 to the J2000 reference frame.
            C
                  CALL MXV ( TRANS, V1950, V2000 )

Restrictions

     None.

Literature_References

     None.

Author_and_Institution

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

Version

    SPICELIB Version 1.1.0, 20-AUG-2021 (JDR)

        Added IMPLICIT NONE statement.

        Edited the header to comply with NAIF standard.

    SPICELIB Version 1.0.2, 28-SEP-2004 (NJB)

        Corrected comment in code example in header. Made other minor
        updates to header.

    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, 30-AUG-1991 (NJB)
Fri Dec 31 18:36:28 2021