Index Page dvcrss_c

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 Brief_I/O Detailed_Input | Detailed_Output Parameters Exceptions Files Particulars Examples | Restrictions Literature_References Author_and_Institution Version Index_Entries

#### Procedure

       void dvcrss_c ( ConstSpiceDouble s1  [6],
                       ConstSpiceDouble s2  [6],
                       SpiceDouble      sout[6] )

#### Abstract

       Compute the cross product of two 3-dimensional vectors
       and the derivative of this cross product.

#### Required_Reading

       None.

#### Keywords

       VECTOR
       DERIVATIVE
       MATH

#### Brief_I/O

       VARIABLE  I/O  DESCRIPTION
       --------  ---  --------------------------------------------------
       s1        I   Left hand state for cross product and derivative.
       s2        I   Right hand state for cross product and derivative.
       sout      O   State associated with cross product of positions.

#### Detailed_Input

       s1       This may be any state vector.  Typically, this
                might represent the apparent state of a planet or the
                Sun, which defines the orientation of axes of
                some coordinate system.

       s2       A state vector.

#### Detailed_Output

       sout     This variable represents the state associated with the
                cross product of the position components of 's1' and 's2.'
                In otherwords if s1 = (P1,V1) and s2 = (P2,V2) then
                'sout' is ( P1xP2, d/dt{ P1xP2 } )

                'sout' may overwrite 's1' or 's2'.

#### Parameters

       None.

#### Exceptions

       Error free.

       1) If 's1' and 's2'  are large in magnitude (taken together,
          their magnitude surpasses the limit allow by the
          computer) then it may be possible to generate a
          floating point overflow from an intermediate
          computation even though the actual cross product and
          derivative may be well within the range of double
          precision numbers.

          dvcrss_c does NOT check the magnitude of 's1' or 's2'  to
          insure that overflow will not occur.

#### Files

       None.

#### Particulars

       dvcrss_c calculates the three-dimensional cross product of two
       vectors and the derivative of that cross product according to
       the definition.  The components of this state are stored
       in a local buffer vector until the calculation is complete.
       Thus sout may overwrite 's1' or 's2'  without interfering with
       intermediate computations.

#### Examples

              s1                    s2                   sout
       -----------------------------------------------------------------
       (0, 1, 0, 1, 0, 0)  ( 1,  0,  0, 1, 0, 0)  (0, 0, -1, 0,  0, -1 )
       (5, 5, 5, 1, 0, 0)  (-1, -1, -1, 2, 0, 0)  (0, 0,  0, 0, 11,-11 )

#### Restrictions

       None.

#### Literature_References

       None.

#### Author_and_Institution

       W.L. Taber      (JPL)
       E.D. Wright     (JPL)

#### Version

       -CSPICE Version 1.0.0, 23-NOV-2009 (EDW)

#### Index_Entries

       Compute the derivative of a cross product

#### Link to routine dvcrss_c source file dvcrss_c.c

    Wed Apr  5 17:54:32 2017