Index Page
vnormg_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

   SpiceDouble vnormg_c ( ConstSpiceDouble   * v1,
                          SpiceInt             ndim ) 

Abstract

 
   Compute the magnitude of a double precision vector of arbitrary 
   dimension. 
 

Required_Reading

 
   None. 
 

Keywords

 
   VECTOR 
 

Brief_I/O

 
   VARIABLE  I/O  DESCRIPTION 
   --------  ---  -------------------------------------------------- 
    v1        I     Vector whose magnitude is to be found. 
    ndim      I     Dimension of v1. 
 

Detailed_Input

 
   v1      This may be any double precision vector or arbitrary 
           size. 
 

Detailed_Output

 
   vnormg_c is the magnitude of v1 calculated in a numerically stable 
   way. 
 

Parameters

 
   None. 
 

Exceptions

 
   1)  If ndim is not physically realistic, greater than zero, a
       BADDIMENSION error is signaled.  The value 0. is returned.
 

Files

 
   None. 
 

Particulars

 
   vnormg_c finds the component of v1 whose magnitude is the largest. 
   If the absolute magnitude of that component indicates that a 
   numeric overflow would occur when it is squared, or if it 
   indicates that an underflow would occur when squared (falsely 
   giving a magnitude of zero) then the following expression is 
   used: 
 
   vnormg_c = v1max * MAGNITUDE OF [ (1/v1max)*v1 ] 
 
   therwise a simpler expression is used: 
 
   vnormg_c = MAGNITUDE OF [ v1 ] 
 
   Beyond the logic described above, no further checking of the 
   validity of the input is performed. 
 

Examples

 
   The following table show the correlation between various input 
   vectors v1 and vnormg_c: 
 
   ndim   v1                       ndim        vnormg_c 
   ----------------------------------------------------------------- 
   1      (-7.0D20)                 1            7.D20 
   3      (1., 2., 2.)              3            3. 
   4      (3., 3., 3., 3.)          4            6. 
   5      (5., 12., 0., 0., 0.)     5            13. 
   3      (-5.D-17, 0.0, 12.D-17)   3            13.D-17 
 

Restrictions

 
   None. 
 

Literature_References

 
   None. 
 

Author_and_Institution

 
   W.M. Owen       (JPL) 
 

Version

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

      Made input vector const.

   -CSPICE Version 1.0.0, 1-APR-1998   (EDW)

Index_Entries

 
   norm of n-dimensional vector 
 

Link to routine vnormg_c source file vnormg_c.c

Wed Apr  5 17:54:47 2017