Developer Reference for Intel® oneAPI Math Kernel Library for C
v?Powx
vsPowx vdPowx vcPowx vzPowx vmsPowx vmdPowx vmcPowx vmzPowx Computes vector a to the scalar power b .
Syntax
vhPowx ( n , a , b , y ) ;
vhPowxI(n, a, inca, b, y, incy);
vmhPowx ( n , a , b , y , mode ) ;
vmhPowxI(n, a, inca, b, y, incy, mode);
vsPowx ( n , a , b , y ) ;
vsPowxI(n, a, inca, b, y, incy);
vmsPowx ( n , a , b , y , mode ) ;
vmsPowxI(n, a, inca, b, y, incy, mode);
vdPowx ( n , a , b , y ) ;
vdPowxI(n, a, inca, b, y, incy);
vmdPowx ( n , a , b , y , mode ) ;
vmdPowxI(n, a, inca, b, y, incy, mode);
vcPowx ( n , a , b , y ) ;
vcPowxI(n, a, inca, b, y, incy);
vmcPowx ( n , a , b , y , mode ) ;
vmcPowxI(n, a, inca, b, y, incy, mode);
vzPowx ( n , a , b , y ) ;
vzPowxI(n, a, inca, b, y, incy);
vmzPowx ( n , a , b , y , mode ) ;
vmzPowxI(n, a, inca, b, y, incy, mode);
Include Files
mkl.h
Input Parameters
Name |
Type |
Description |
|---|---|---|
n |
const MKL_INT |
Number of elements to be calculated. |
a |
const _Float16* for vhPowx , vmhPowx 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 _Float16 for vhPowx , vmhPowx 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 . |
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 (Sets a new mode for VM functions according to the mode parameter and stores the previous VM mode to oldmode.) for possible values and their description. |
Precision Overflow Thresholds for Real v?Powx Function
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.
Output Parameters
Name |
Type |
Description |
|---|---|---|
y |
_Float16* for vhPowx , vmhPowx 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 . |
Description
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.