Developer Reference for Intel® oneAPI Math Kernel Library for Fortran
v?Cosh
vsCosh vdCosh vcCosh vzCosh vmsCosh vmdCosh vmcCosh vmzCosh Computes hyperbolic cosine of vector elements.
Syntax
call vscosh ( n , a , y )
call vscoshi(n, a, inca, y, incy)
call vmscosh ( n , a , y , mode )
call vmscoshi(n, a, inca, y, incy, mode)
call vdcosh ( n , a , y )
call vdcoshi(n, a, inca, y, incy)
call vmdcosh ( n , a , y , mode )
call vmdcoshi(n, a, inca, y, incy, mode)
call vccosh ( n , a , y )
call vccoshi(n, a, inca, y, incy)
call vmccosh ( n , a , y , mode )
call vmccoshi(n, a, inca, y, incy, mode)
call vzcosh ( n , a , y )
call vzcoshi(n, a, inca, y, incy)
call vmzcosh ( n , a , y , mode )
call vmzcoshi(n, a, inca, y, incy, mode)
Include Files
mkl_vml.f90
Input Parameters
Name |
Type |
Description |
|---|---|---|
n |
Specifies the number of elements to be calculated. |
|
a |
Fortran 77: DOUBLE PRECISION for vdcosh , vmdcoshFortran 77: COMPLEX for vccosh , vmccoshFortran 77: DOUBLE COMPLEX for vzcosh , vmzcoshFortran 90: REAL , INTENT(IN) for vscosh , vmscoshFortran 90: DOUBLE PRECISION , INTENT(IN) for vdcosh , vmdcoshFortran 90: COMPLEX , INTENT(IN) for vccosh , vmccoshFortran 90: DOUBLE COMPLEX , INTENT(IN) for vzcosh , vmzcosh |
Array that specifies the input vector a . |
inca , incy |
INTEGER, INTENT(IN) |
Specifies increments for the elements of a and y . |
mode |
INTEGER(KIND=8) , INTENT(IN) |
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. |
Precision Overflow Thresholds for Real v?Cosh Function
Data Type |
Threshold Limitations on Input Parameters |
|---|---|
single precision |
-Ln(FLT_MAX)-Ln2 <a[i] < Ln(FLT_MAX)+Ln2 |
double precision |
-Ln(DBL_MAX)-Ln2 <a[i] < Ln(DBL_MAX)+Ln2 |
Precision overflow thresholds for the complex v?Cosh function are beyond the scope of this document.
Output Parameters
Name |
Type |
Description |
|---|---|---|
y |
Fortran 77: DOUBLE PRECISION for vdcosh , vmdcoshFortran 77: COMPLEX for vccosh , vmccoshFortran 77: DOUBLE COMPLEX for vzcosh , vmzcoshFortran 90: REAL , INTENT(OUT) for vscosh , vmscoshFortran 90: DOUBLE PRECISION , INTENT(OUT) for vdcosh , vmdcoshFortran 90: COMPLEX , INTENT(OUT) for vccosh , vmccoshFortran 90: DOUBLE COMPLEX , INTENT(OUT) for vzcosh , vmzcosh |
Array that specifies the output vector y . |
Description
The v?Cosh function computes hyperbolic cosine of vector elements.
Special Values for Real Function v?Cosh(x)
Argument |
Result |
VM Error Status |
Exception |
|---|---|---|---|
+0 |
+1 |
||
-0 |
+1 |
||
X > overflow |
|
VML_STATUS_OVERFLOW |
OVERFLOW |
X < -overflow |
|
VML_STATUS_OVERFLOW |
OVERFLOW |
|
|
||
|
|
||
QNAN |
QNAN |
||
SNAN |
QNAN |
INVALID |
See Special Value Notations for the conventions used in the table below.
Special Values for Complex Function v?Cosh(z)
RE(z) i · IM(z) |
|
-X |
-0 |
+0 |
+X |
|
NAN |
|---|---|---|---|---|---|---|---|
+i · ∞ |
INVALID |
QNAN+i · QNAN INVALID |
QNAN-i · 0 INVALID |
QNAN+i · 0 INVALID |
QNAN+i · QNAN INVALID |
INVALID |
QNAN+i · QNAN |
+i · Y |
|
|
QNAN+i · QNAN |
||||
+i · 0 |
|
+1-i · 0 |
+1+i · 0 |
|
QNAN+i · 0 |
||
-i · 0 |
|
+1+i · 0 |
+1-i · 0 |
|
QNAN-i · 0 |
||
-i · Y |
|
|
QNAN+i · QNAN |
||||
-i · ∞ |
INVALID |
QNAN+i · QNAN INVALID |
QNAN+i · 0 INVALID |
QNAN-i · 0 INVALID |
QNAN+i · QNAN INVALID |
INVALID |
QNAN+i · QNAN |
+i · NAN |
|
QNAN+i · QNAN |
QNAN+i · QNAN |
QNAN-i · QNAN |
QNAN+i · QNAN |
|
QNAN+i · QNAN |
Notes:
raises the INVALID exception when the real or imaginary part of the argument is SNAN
raises the OVERFLOW exception and sets the VM Error Status to VML_STATUS_OVERFLOW in the case of overflow, that is, when \(RE(z)\) , \(IM(z)\) are finite non-zero numbers, but the real or imaginary part of the exact result is so large that it does not meet the target precision.
\(Cosh(CONJ(z))=CONJ(Cosh(z))\)
\(Cosh(-z)=Cosh(z)\) .