Computes argument of vector elements.
FORTRAN:
call vcarg( n, a, y )
call vmcarg( n, a, y, mode )
call vzarg( n, a, y )
call vmzarg( n, a, y, mode )
C:
vcArg( n, a, y );
vmcArg( n, a, y, mode );
vzArg( n, a, y );
vmzArg( n, a, y, mode );
Name |
Type |
Description |
---|---|---|
n |
FORTRAN 77: INTEGER Fortran 90: INTEGER, INTENT(IN) C: const int |
Specifies the number of elements to be calculated. |
a |
FORTRAN77: COMPLEX for vcarg, vmcarg DOUBLE COMPLEX for vzarg, vmzarg Fortran 90: COMPLEX, INTENT(IN) for vcarg, vmcarg DOUBLE COMPLEX, INTENT(IN) for vzarg, vmzarg C: const MKL_Complex8* for vcArg, vmcArg const MKL_Complex16* for vzArg, vmcArg |
FORTRAN: Array that specifies the input vector a. C: Pointer to an array that contains the input vector a. |
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. |
Name |
Type |
Description |
---|---|---|
y |
FORTRAN 77: REAL for vcarg, vmcarg DOUBLE PRECISION for vzarg, vmzarg Fortran 90: REAL, INTENT(OUT) for vcarg, vmcarg DOUBLE PRECISION, INTENT(OUT) for vzarg, vmzarg C: float* for vcArg, vmcArg double* for vzArg, vmcArg |
FORTRAN: Array that specifies the output vector y. C: Pointer to an array that contains the output vector y. |
The v?Arg function computes argument of vector elements.
SeeSpecial Value Notations for the conventions used in the table below.
RE(z) i·IM(z) |
-∞
|
-X
|
-0
|
+0
|
+X
|
+∞
|
NAN
|
---|---|---|---|---|---|---|---|
+i·∞ | +3·π/4 | +π/2 | +π/2 | +π/2 | +π/2 | +π/4 | NAN |
+i·Y | +π | +π/2 | +π/2 | +0 | NAN | ||
+i·0 | +π | +π | +π | +0 | +0 | +0 | NAN |
-i·0 | -π | -π | -π | -0 | -0 | -0 | NAN |
-i·Y | -π | -π/2 | -π/2 | -0 | NAN | ||
-i·∞ | -3·π/4 | -π/2 | -π/2 | -π/2 | -π/2 | -π/4 | NAN |
+i·NAN | NAN | NAN | NAN | NAN | NAN | NAN | NAN |
Notes:
raises INVALID exception when real or imaginary part of the argument is SNAN
Arg(z)=Atan2(IM(z),RE(z)).