cspice_dvnorm

 Abstract I/O Examples Particulars Required Reading Version Index_Entries
```
```

#### Abstract

```
CSPICE_DVNORM returns the derivative of the vector norm of a 3-vector.

```

#### I/O

```
Given:

state   6-vector(s), the second three components of the vector(s)
being the derivatives of the first three with respect to
some scalar.

state =  ( x, dx )
--
ds

A common form for 'state' would contain position and
velocity.

[6,n] = size(state); double = class(state)

the call:

dvnorm = cspice_dvnorm(state)

returns:

dvnorm   the value(s) of d||x|| corresponding to 'state'.
------
ds

1/2         2    2    2  1/2
Where ||x|| = < x, x >    =  ( x1 + x2 + x3 )

v = ( dx1, dx2, dx3 )
---  ---  ---
ds   ds   ds

d||x||   < x, v >
------ =   ------    =  < xhat, v >
ds             1/2
< x, x >

'dvnorm' returns with the same vectorization measure (N)
as 'state'.

[1,n] = size(dvnorm); double = class(dvnorm)

```

#### Examples

```
Any numerical results shown for this example may differ between
platforms as the results depend on the SPICE kernels used as input
and the machine specific arithmetic implementation.

%
% Create several 6-vectors (6x1 arrays) with the structure
%
%   y = |  x  |
%       |     |
%       |  dx |
%       |  -- |
%       |  ds |
%
% where 'x' is a 3-vector (3x1 array).
%

%
% Create 'y' with 'x' of varying magnitudes. Use 'x'
% and '-x' to define the derivative as parallel and
% anti-parallel.
%
mag = [ -4, 4, 12 ];

x   = [ 1, sqrt(2), sqrt(3 ) ]';

y   = [ [x * 10^mag(1);  x], ...
[x * 10^mag(2); -x], ...
[  zeros(3,1);  x * 10^mag(3) ] ];

%
% Calculate the derivative of the vector norms with respect
% to 's'.
%
dvnorm = cspice_dvnorm( y );

fprintf( 'Parallel x, dx/ds         : %f\n', dvnorm(1) )
fprintf( 'Anti-parallel x, dx/ds    : %f\n', dvnorm(2) )
fprintf( 'Zero vector x, large dx/ds: %f\n', dvnorm(3) )

Matlab outputs:

Parallel x, dx/ds         : 2.449490
Anti-parallel x, dx/ds    : -2.449490
Zero vector x, large dx/ds: 0.000000

```

```
None.

```

#### Required Reading

```
For important details concerning this module's function, please refer to
the CSPICE routine dvnorm_c.

MICE.REQ

```

#### Version

```
-Mice Version 1.0.1, 09-NOV-2012 (EDW)

Edited I/O section to conform to NAIF standard for Mice documentation.

-Mice Version 1.0.0, 10-MAY-2010 (EDW)

```

#### Index_Entries

```
derivative of 3-vector norm

```
`Wed Apr  5 18:00:31 2017`