Intel® Math Kernel Library 2019 Developer Reference - C
Computes vector a to the scalar power b.
vsPowx( n, a, b, y );
vmsPowx( n, a, b, y, mode );
vdPowx( n, a, b, y );
vmdPowx( n, a, b, y, mode );
vcPowx( n, a, b, y );
vmcPowx( n, a, b, y, mode );
vzPowx( n, a, b, y );
vmzPowx( n, a, b, y, mode );
Name |
Type |
Description |
---|---|---|
n |
const MKL_INT |
Number of elements to be calculated. |
a |
const float* for vsPowx, vmsPowx const double* for vdPowx, vmdPowx const MKL_Complex8* for vcPowx, vmcPowx const MKL_Complex16* for vzPowx, vmzPowx |
Pointer to an array that contains the input vector a. |
b | const float for vsPowx, vmsPowx const double for vdPowx, vmdPowx const MKL_Complex8 for vcPowx, vmcPowx const MKL_Complex16 for vzPowx, vmzPowx |
Constant value for power b. |
mode |
const MKL_INT64 |
Overrides global VM mode setting for this function call. See vmlSetMode for possible values and their description. |
Data Type | Threshold Limitations on Input Parameters |
---|---|
single precision | abs(a[i]) < ( FLT_MAX )1/b |
double precision | abs(a[i]) < ( DBL_MAX )1/b |
Precision overflow thresholds for the complex v?Powx function are beyond the scope of this document.
Name |
Type |
Description |
---|---|---|
y |
float* for vsPowx, vmsPowx double* for vdPowx, vmdPowx MKL_Complex8* for vcPowx, vmcPowx MKL_Complex16* for vzPowx, vmzPowx |
Pointer to an array that contains the output vector y. |
The v?Powx function computes a to the power b for a vector a and a scalar b.
The real function v(s/d)Powx has certain limitations on the input range of a and b parameters. Specifically, if a[i] is positive, then b may be arbitrary. For negative a[i], the value of b must be an integer (either positive or negative).
The complex function v(c/z)Powx has no input range limitations.
Special values and VM Error Status treatment are the same as for the v?Pow function.