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

   vperp_c ( Perpendicular component of a 3-vector ) 

   void vperp_c ( ConstSpiceDouble   a[3],
                  ConstSpiceDouble   b[3],
                  SpiceDouble        p[3] )

Abstract

   Find the component of a vector that is perpendicular to a second
   vector. All vectors are 3-dimensional.

Required_Reading

   None.

Keywords

   VECTOR


Brief_I/O

   VARIABLE  I/O  DESCRIPTION
   --------  ---  --------------------------------------------------
   a          I   The vector whose orthogonal component is sought.
   b          I   The vector used as the orthogonal reference.
   p          O   The component of `a' orthogonal to `b'.

Detailed_Input

   a           is a double precision, 3-dimensional vector. It the
               vector whose component orthogonal to `b' is sought. (There
               is a unique decomposition of `a' into a sum v + p, where `v'
               is parallel to `b' and `p' is orthogonal to `b'. We want the
               component `p'.)

   b           is a double precision, 3-dimensional vector. This
               vector is the vector used as a reference for the
               decomposition of `a'.

Detailed_Output

   p           is a double precision, 3-dimensional vector containing
               the component of `a' that is orthogonal to `b'.
               `p' may overwrite either `a' or `b'.

Parameters

   None.

Exceptions

   Error free.

Files

   None.

Particulars

   Given and non-zero vector `b' and a vector `a', there is a unique
   decomposition of `a' as a sum v + p such that `p' is orthogonal
   to `b' and `v' is parallel to `b'. This routine finds the vector `p'.

   If `b' is a zero vector, `p' will be identical to `a'.

Examples

   The following table gives sample inputs and results from calling
   vperp_c.

      a                  b                 p
      ------------------------------------------
      (6, 6, 6)      ( 2, 0, 0)        (0, 6, 6)
      (6, 6, 6)      (-3, 0, 0)        (0, 6, 6)
      (6, 6, 0)      ( 0, 7, 0)        (6, 0, 0)
      (6, 0, 0)      ( 0, 0, 9)        (6, 0, 0)

Restrictions

   None.

Literature_References

   [1]  G. Thomas and R. Finney, "Calculus and Analytic Geometry,"
        7th Edition, Addison Wesley, 1988.

Author_and_Institution

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

Version

   -CSPICE Version 1.2.2, 13-APR-2021 (JDR)

       Updated the header to comply with NAIF standard.

   -CSPICE Version 1.2.1, 24-APR-2010 (EDW)

       Minor edit to code comments eliminating typo.

   -CSPICE Version 1.2.0, 22-OCT-1998 (NJB)

       Made input vectors const.

   -CSPICE Version 1.1.0, 06-MAR-1998 (EDW)

       Removed non printing character.

   -CSPICE Version 1.0.0, 08-FEB-1998 (EDW) (WLT)

Index_Entries

   perpendicular component of a 3-vector
Fri Dec 31 18:41:15 2021