v?Powx

Raises each element of a vector to the constant power.

Syntax

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 );

Include Files

Input Parameters

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.

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

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.

Description

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.


Submit feedback on this help topic