Developer Reference for Intel® oneAPI Math Kernel Library for Fortran
v?Arg
vcArg vmcArg vzArg vmzArg Computes argument of vector elements.
Syntax
call vcarg(n, a, y)
call vcargi(n, a, inca, y, incy)
call vmcarg(n, a, y, mode)
call vmcargi(n, a, inca, y, incy, mode)
call vzarg(n, a, y)
call vzargi(n, a, inca, y, incy)
call vmzarg(n, a, y, mode)
call vmzargi(n, a, inca, y, incy, mode)
Include Files
mkl_vml.f90
Input Parameters
Name |
Type |
Description |
|---|---|---|
n |
INTEGER , INTENT(IN) |
Specifies the number of elements to be calculated. |
a |
Fortran 77: COMPLEX for vcarg , vmcargFortran 77: DOUBLE COMPLEX for vzarg , vmzargFortran 90: COMPLEX , INTENT(IN) for vcarg , vmcargFortran 90: DOUBLE COMPLEX , INTENT(IN) for vzarg , vmzarg |
Array that specifies the input vector a . |
inca , incy |
INTEGER, INTENT(IN) |
Specifies increments for the elements of a and y . |
mode |
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. |
Output Parameters
Name |
Type |
Description |
|---|---|---|
y |
Fortran 77: DOUBLE PRECISION for vzarg , vmzargFortran 90: REAL , INTENT(OUT) for vcarg , vmcargFortran 90: DOUBLE PRECISION , INTENT(OUT) for vzarg , vmzarg |
Array that specifies the output vector y . |
Description
The v?Arg function computes argument of vector elements.
See Special Value Notations for the conventions used in the table below.
Special Values for Complex Function v?Arg(z)
RE(z) i · IM(z) |
|
-X |
-0 |
+0 |
+X |
|
NAN |
|---|---|---|---|---|---|---|---|
+i · ∞ |
+3 · π /4 |
|
|
|
|
|
NAN |
+i · Y |
|
|
|
+0 |
NAN |
||
+i · 0 |
|
|
|
+0 |
+0 |
+0 |
NAN |
-i · 0 |
|
|
|
-0 |
-0 |
-0 |
NAN |
-i · Y |
|
|
|
-0 |
NAN |
||
-i · ∞ |
-3 · π /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))\) .