Index Page
irftrn
A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X 

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

 
      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           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, the
         error will be diagnosed by routines called by 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)

Version

    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)
Wed Apr  5 17:46:47 2017