Computes inverse hyperbolic tangent of vector elements.
FORTRAN:
call vsatanh( n, a, y )
call vmsatanh( n, a, y, mode )
call vdatanh( n, a, y )
call vmdatanh( n, a, y, mode )
call vcatanh( n, a, y )
call vmcatanh( n, a, y, mode )
call vzatanh( n, a, y )
call vmzatanh( n, a, y, mode )
C:
vsAtanh( n, a, y );
vmsAtanh( n, a, y, mode );
vdAtanh( n, a, y );
vmdAtanh( n, a, y, mode );
vcAtanh( n, a, y );
vmcAtanh( n, a, y, mode );
vzAtanh( n, a, y );
vmzAtanh( 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 |
FORTRAN 77: REAL for vsatanh, vmsatanh DOUBLE PRECISION for vdatanh, vmdatanh COMPLEX for vcatanh, vmcatanh DOUBLE COMPLEX for vzatanh, vmzatanh Fortran 90: REAL, INTENT(IN) for vsatanh, vmsatanh DOUBLE PRECISION, INTENT(IN) for vdatanh, vmdatanh COMPLEX, INTENT(IN) for vcatanh, vmcatanh DOUBLE COMPLEX, INTENT(IN) for vzatanh, vmzatanh C: const float* for vsAtanh, vmsAtanh const double* for vdAtanh, vmdAtanh const MKL_Complex8* for vcAtanh, vmcAtanh const MKL_Complex16* for vzAtanh, vmzAtanh |
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 vsatanh, vmsatanh DOUBLE PRECISION for vdatanh, vmdatanh COMPLEX for vcatanh, vmcatanh DOUBLE COMPLEX for vzatanh, vmzatanh Fortran 90: REAL, INTENT(OUT) for vsatanh, vmsatanh DOUBLE PRECISION, INTENT(OUT) for vdatanh, vmdatanh COMPLEX, INTENT(OUT) for vcatanh, vmcatanh DOUBLE COMPLEX, INTENT(OUT) for vzatanh, vmzatanh C: float* for vsAtanh, vmsAtanh double* for vdAtanh, vmdAtanh MKL_Complex8* for vcAtanh, vmcAtanh MKL_Complex16* for vzAtanh, vmzAtanh |
FORTRAN: Array that specifies the output vector y. C: Pointer to an array that contains the output vector y. |
The v?Atanh function computes inverse hyperbolic tangent of vector elements.
Argument | Result | VML Error Status | Exception |
---|---|---|---|
+1 | +∞ | VML_STATUS_SING | ZERODIVIDE |
-1 | -∞ | VML_STATUS_SING | ZERODIVIDE |
|X| > 1 | QNAN | VML_STATUS_ERRDOM | INVALID |
+∞ | QNAN | VML_STATUS_ERRDOM | INVALID |
-∞ | QNAN | VML_STATUS_ERRDOM | INVALID |
QNAN | QNAN | ||
SNAN | QNAN | INVALID |
See Special Value Notations for the conventions used in the table below.
RE(z) i·IM(z) |
-∞
|
-X
|
-0
|
+0
|
+X
|
+∞
|
NAN
|
---|---|---|---|---|---|---|---|
+i·∞ | -0+i·π/2 | -0+i·π/2 | -0+i·π/2 | +0+i·π/2 | +0+i·π/2 | +0+i·π/2 | +0+i·π/2 |
+i·Y | -0+i·π/2 | +0+i·π/2 | QNAN+i·QNAN |
||||
+i·0 | -0+i·π/2 | -0+i·0 | +0+i·0 | +0+i·π/2 | QNAN+i·QNAN |
||
-i·0 | -0-i·π/2 | -0-i·0 | +0-i·0 | +0-i·π/2 | QNAN-i·QNAN |
||
-i·Y | -0-i·π/2 | +0-i·π/2 | QNAN+i·QNAN |
||||
-i·∞ | -0-i·π/2 | -0-i·π/2 | -0-i·π/2 | +0-i·π/2 | +0-i·π/2 | +0-i·π/2 | +0-i·π/2 |
+i·NAN | -0+i·QNAN |
QNAN+i·QNAN |
-0+i·QNAN |
+0+i·QNAN |
QNAN+i·QNAN |
+0+i·QNAN |
QNAN+i·QNAN |
Notes:
Atanh(+-1+-i*0)=+-∞+-i*0, and ZERODIVIDE exception is raised
raises INVALID exception when real or imaginary part of the argument is SNAN
Atanh(CONJ(z))=CONJ(Atanh(z))
Atanh(-z)=-Atanh(z).