Intel® oneAPI Math Kernel Library Developer Reference - C
Computes an inverse square root of vector elements.
vsInvSqrt( n, a, y );
vsInvSqrtI(n, a, inca, y, incy);
vmsInvSqrt( n, a, y, mode );
vmsInvSqrtI(n, a, inca, y, incy, mode);
vdInvSqrt( n, a, y );
vdInvSqrtI(n, a, inca, y, incy);
vmdInvSqrt( n, a, y, mode );
vmdInvSqrtI(n, a, inca, y, incy, mode);
Name |
Type |
Description |
|---|---|---|
n |
const MKL_INT |
Specifies the number of elements to be calculated. |
a |
const float* for vsInvSqrt, vmsInvSqrt const double* for vdInvSqrt, vmdInvSqrt |
Pointer to an array that contains the input vector a. |
inca, incy |
const MKL_INT |
Specifies increments for the elements of a and y. |
mode |
const MKL_INT64 |
Overrides global VM mode setting for this function call. See vmlSetMode for possible values and their description. |
Name |
Type |
Description |
|---|---|---|
y |
float* for vsInvSqrt, vmsInvSqrt double* for vdInvSqrt, vmdInvSqrt |
Pointer to an array that contains the output vector y. |
The v?InvSqrt function computes an inverse square root of vector elements.
| Argument | Result | VM Error Status | Exception |
|---|---|---|---|
| X < +0 | QNAN | VML_STATUS_ERRDOM | INVALID |
| +0 | +∞ | VML_STATUS_SING | ZERODIVIDE |
| -0 | -∞ | VML_STATUS_SING | ZERODIVIDE |
| -∞ | QNAN | VML_STATUS_ERRDOM | INVALID |
| +∞ | +0 | ||
| QNAN | QNAN | ||
| SNAN | QNAN | INVALID |