Developer Reference for Intel® oneAPI Math Kernel Library for C
v?Atanh
vsAtanh vdAtanh vcAtanh vzAtanh vmsAtanh vmdAtanh vmcAtanh vmzAtanh Computes inverse hyperbolic tangent of vector elements.
Syntax
vhAtanh ( n , a , y ) ;
vhAtanhI(n, a, inca, y, incy);
vmhAtanh ( n , a , y , mode ) ;
vmhAtanhI(n, a, inca, y, incy, mode);
vsAtanh ( n , a , y ) ;
vsAtanhI(n, a, inca, y, incy);
vmsAtanh ( n , a , y , mode ) ;
vmsAtanhI(n, a, inca, y, incy, mode);
vdAtanh ( n , a , y ) ;
vdAtanhI(n, a, inca, y, incy);
vmdAtanh ( n , a , y , mode ) ;
vmdAtanhI(n, a, inca, y, incy, mode);
vcAtanh ( n , a , y ) ;
vcAtanhI(n, a, inca, y, incy);
vmcAtanh ( n , a , y , mode ) ;
vmcAtanhI(n, a, inca, y, incy, mode);
vzAtanh ( n , a , y ) ;
vzAtanhI(n, a, inca, y, incy);
vmzAtanh ( n , a , y , mode ) ;
vmzAtanhI(n, a, inca, y, incy, mode);
Include Files
mkl.h
Input Parameters
Name |
Type |
Description |
|---|---|---|
n |
const MKL_INT |
Specifies the number of elements to be calculated. |
a |
const _Float16* for vhAtanh , vmhAtanh const float* for vsAtanh , vmsAtanh const double* for vdAtanh , vmdAtanh const MKL_Complex8* for vcAtanh , vmcAtanh const MKL_Complex16* for vzAtanh , vmzAtanh |
Pointer to an array that contains the input vector a . |
inca , incy |
const MKL_INT |
Specifies increments for the elements of a and y . |
mode |
const MKL_INT64 |
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 |
_Float16* for vhAtanh , vmhAtanh float* for vsAtanh , vmsAtanh double* for vdAtanh , vmdAtanh MKL_Complex8* for vcAtanh , vmcAtanh MKL_Complex16* for vzAtanh , vmzAtanh |
Pointer to an array that contains the output vector y . |
Description
The v?Atanh function computes inverse hyperbolic tangent of vector elements.
Special Values for Real Function v?Atanh(x)
Argument |
Result |
VM 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.
Special Values for Complex Function v?Atanh(z)
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) .