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
sxform_c

Table of contents
Procedure
Abstract
Required_Reading
Keywords
Brief_I/O
Detailed_Input
Detailed_Output
Parameters
Exceptions
Files
Particulars
Examples
Restrictions
Literature_References
Author_and_Institution
Version
Index_Entries

Procedure

   sxform_c ( State Transformation Matrix ) 

   void sxform_c ( ConstSpiceChar  * from,
                   ConstSpiceChar  * to,
                   SpiceDouble       et,
                   SpiceDouble       xform[6][6] )

Abstract

   Return the state transformation matrix from one frame to
   another at a specified epoch.

Required_Reading

   FRAMES

Keywords

   FRAMES


Brief_I/O

   VARIABLE  I/O  DESCRIPTION
   --------  ---  --------------------------------------------------
   from       I   Name of the frame to transform from.
   to         I   Name of the frame to transform to.
   et         I   Epoch of the state transformation matrix.
   xform      O   A state transformation matrix.

Detailed_Input

   from        is the name of a reference frame in which a state is
               known.

   to          is the name of a reference frame in which it is desired
               to represent the state.

   et          is the epoch in ephemeris seconds past the epoch of
               J2000 (TDB) at which the state transformation matrix
               should be evaluated.

Detailed_Output

   xform       is the matrix that transforms states from the reference
               frame `from' to the frame `to' at epoch `et'. If (x, y,
               z, dx, dy, dz) is a state relative to the frame `from'
               then the vector ( x', y', z', dx', dy', dz' ) is the
               same state relative to the frame `to' at epoch `et'.
               Here the vector ( x', y', z', dx', dy', dz' ) is defined
               by the equation:

                  -   -       -          -     -  -
                 | x'  |     |            |   | x  |
                 | y'  |     |            |   | y  |
                 | z'  |  =  |   xform    |   | z  |
                 | dx' |     |            |   | dx |
                 | dy' |     |            |   | dy |
                 | dz' |     |            |   | dz |
                  -   -       -          -     -  -

Parameters

   None.

Exceptions

   1)  If sufficient information has not been supplied via loaded
       SPICE kernels to compute the transformation between the two
       frames, an error is signaled by a routine in the call tree of
       this routine.

   2)  If either frame `from' or `to' is not recognized, the error
       SPICE(UNKNOWNFRAME) is signaled by a routine in the call tree
       of this routine.

   3)  If any of the `from' or `to' input string pointers is null,
       the error SPICE(NULLPOINTER) is signaled.

   4)  If any of the `from' or `to' input strings has zero length,
       the error SPICE(EMPTYSTRING) is signaled.

Files

   None.

Particulars

   This routine provides the user level interface for computing
   state transformations from one reference frame to another.

   Note that the reference frames may be inertial or non-inertial.
   However, the user must take care that sufficient SPICE kernel
   information is loaded to provide a complete state transformation
   path from the `from' frame to the `to' frame.

Examples

   Suppose that you have geodetic coordinates of a station on
   the surface of the earth and that you need the inertial
   (J2000) state of this station. The following code fragment
   illustrates how to transform the position of the station to
   a J2000 state.

      #include "SpiceUsr.h"
          .
          .
          .
      bodvcd_c ( 399, radii, 3, &n, abc  );

      equatr   =  abc[0];
      polar    =  abc[2];
      f        = (equatr - polar) / equatr;

      georec_c ( long, lat, 0.0,  equatr, f,  estate );

      estate[3] = 0.0;
      estate[4] = 0.0;
      estate[5] = 0.0;

      sxform_c ( "IAU_EARTH", "J2000",   et,    xform  );
      mxvg_c   (  xform,       estate,   6,  6, jstate );

   The state `jstate' is the desired J2000 state of the station.

Restrictions

   None.

Literature_References

   None.

Author_and_Institution

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

Version

   -CSPICE Version 1.1.4, 10-AUG-2021 (JDR)

       Edited the header to comply with NAIF standard.

       Added entries #3 and #4 in -Exceptions section.

   -CSPICE Version 1.1.3, 27-FEB-2008 (BVS)

       Added FRAMES to the -Required_Reading section of the header.

   -CSPICE Version 1.1.2, 24-OCT-2005 (NJB)

       Header updates: example had invalid flattening factor
       computation; this was corrected. Reference to bodvar_c was
       replaced with reference to bodvcd_c.

   -CSPICE Version 1.1.1, 03-JUL-2003 (NJB) (CHA)

       Various header corrections were made.

   -CSPICE Version 1.1.0, 08-FEB-1998 (NJB)

       References to C2F_CreateStr_Sig were removed; code was
       cleaned up accordingly. String checks are now done using
       the macro CHKFSTR.

   -CSPICE Version 1.0.0, 25-OCT-1997 (NJB) (WLT)

      Based on SPICELIB Version 1.0.0, 19-SEP-1995 (WLT)

Index_Entries

   Find a state transformation matrix
Fri Dec 31 18:41:13 2021