Raises each element of a vector to the constant power.
FORTRAN:
call vspowx( n, a, b, y )
call vmspowx( n, a, b, y, mode )
call vdpowx( n, a, b, y )
call vmdpowx( n, a, b, y, mode )
call vcpowx( n, a, b, y )
call vmcpowx( n, a, b, y, mode )
call vzpowx( n, a, b, y )
call vmzpowx( n, a, b, y, mode )
C:
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 |
FORTRAN 77: INTEGER Fortran 90: INTEGER, INTENT(IN) C: const int |
Number of elements to be calculated. |
a |
FORTRAN 77: REAL for vspowx, vmspowx DOUBLE PRECISION for vdpowx, vmdpowx COMPLEX for vcpowx, vmcpowx DOUBLE COMPLEX for vzpowx, vmzpowx Fortran 90: REAL, INTENT(IN) for vspowx, vmspowx DOUBLE PRECISION, INTENT(IN) for vdpowx, vmdpowx COMPLEX, INTENT(IN) for vcpowx, vmcpowx DOUBLE COMPLEX, INTENT(IN) for vzpowx, vmzpowx C: const float* for vsPowx, vmsPowx const double* for vdPowx, vmdPowx const MKL_Complex8* for vcPowx, vmcPowx const MKL_Complex16* for vzPowx, vmzPowx |
FORTRAN: Array a that specifies the input vector C: Pointer to an array that contains the input vector a. |
b | FORTRAN 77: REAL for vspowx, vmspowx DOUBLE PRECISION for vdpowx, vmdpowx COMPLEX for vcpowx, vmcpowx DOUBLE COMPLEX for vzpowx, vmzpowx Fortran 90: REAL, INTENT(IN) for vspowx, vmspowx DOUBLE PRECISION, INTENT(IN) for vdpowx, vmdpowx COMPLEX, INTENT(IN) for vcpowx, vmcpowx DOUBLE COMPLEX, INTENT(IN) for vzpowx, vmzpowx C: const float* for vsPowx, vmsPowx const double* for vdPowx, vmdPowx const MKL_Complex8* for vcPowx, vmcPowx const MKL_Complex16* for vzPowx, vmzPowx |
FORTRAN: Scalar value b that is the constant power. C: Constant value for power b. |
mode |
FORTRAN 77: INTEGER*8 Fortran 90: INTEGER(KIND=8), INTENT(IN) C: const MKL_INT64 |
Overrides global VML 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 |
FORTRAN 77: REAL for vspowx, vmspowx DOUBLE PRECISION for vdpowx, vmdpowx COMPLEX for vcpowx, vmcpowx DOUBLE COMPLEX for vzpowx, vmzpowx Fortran 90: REAL, INTENT(OUT) for vspowx, vmspowx DOUBLE PRECISION, INTENT(OUT) for vdpowx, vmdpowx COMPLEX, INTENT(OUT) for vcpowx, vmcpowx DOUBLE COMPLEX, INTENT(OUT) for vzpowx, vmzpowx C: float* for vsPowx, vmsPowx double* for vdPowx, vmdPowx MKL_Complex8* for vcPowx, vmcPowx MKL_Complex16* for vzPowx, vmzPowx |
FORTRAN: Array that specifies the output vector y. C: Pointer to an array that contains the output vector y. |
The v?Powx function raises each element of a vector to the constant power.
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 are the same as for the v?Pow function.