void vsclg_c ( SpiceDouble s,
ConstSpiceDouble * v1,
SpiceInt ndim,
SpiceDouble * vout )
Multiply a scalar and a double precision vector of arbitrary
dimension.
None.
VECTOR
VARIABLE I/O DESCRIPTION
-------- --- --------------------------------------------------
s I Scalar to multiply a vector.
v1 I Vector to be multiplied.
ndim I Dimension of v1 (and also vout).
vout O Product vector, s*v1. vout can overwrite v1.
s is a double precision scalar.
v1 is a double precision vector of arbitrary dimension.
ndim is the dimension of v1 (and vout).
vout is a double precision vector of arbitrary dimension
containing the product of the scalar with the vector v1.
vout may overwrite v1.
None.
Error free.
None.
For each value of the index i from 0 to ndim-1, this subroutine
performs the following multiplication
vout[i] = s * v1[i];
No error checking is performed to guard against numeric overflow
or underflow. vout may overwrite v1.
The following table shows the results of vsclg_c from various
inputs.
v1 s ndim vout
-----------------------------------------------------------------
(1, 2, -3, 4) 3 4 ( 3, 6, -9, 12)
(1, 2, -3, 4) 0 4 ( 0, 0, 0, 0)
(1, 2, -3, 4) -1 4 (-3, -6, 9,-12)
No error checking is performed to guard against numeric overflow.
The programmer is thus required to insure that the values in v1
and s are reasonable and will not cause overflow.
None.
W.M. Owen (JPL)
-CSPICE Version 1.1.0, 22-OCT-1998 (NJB)
Made input vector const. Removed #includes of SpiceZfc.h and
SpiceZst.h.
-CSPICE Version 1.0.0, 13-JUL-1998 (NJB) (WMO)
n-dimensional vector scaling
Link to routine vsclg_c source file vsclg_c.c
|