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
sxform_c

 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 )

```

#### Abstract

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

```   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;
polar    =  abc;
f        = (equatr - polar) / equatr;

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

estate = 0.0;
estate = 0.0;
estate = 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)

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

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)

-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`