Visible to Intel only — GUID: GUID-B1457C39-EFCA-4136-A8D8-44159F27154A
Visible to Intel only — GUID: GUID-B1457C39-EFCA-4136-A8D8-44159F27154A
Asinh
Computes inverse hyperbolic sine of each vector element.
Syntax
IppStatus ippsAsinh_32f_A11(const Ipp32f* pSrc, Ipp32f* pDst, Ipp32s len);
IppStatus ippsAsinh_32f_A21(const Ipp32f* pSrc, Ipp32f* pDst, Ipp32s len);
IppStatus ippsAsinh_32f_A24(const Ipp32f* pSrc, Ipp32f* pDst, Ipp32s len);
IppStatus ippsAsinh_64f_A26(const Ipp64f* pSrc, Ipp64f* pDst, Ipp32s len);
IppStatus ippsAsinh_64f_A50(const Ipp64f* pSrc, Ipp64f* pDst, Ipp32s len);
IppStatus ippsAsinh_64f_A53(const Ipp64f* pSrc, Ipp64f* pDst, Ipp32s len);
IppStatus ippsAsinh_32fc_A11(const Ipp32fc* pSrc, Ipp32fc* pDst, Ipp32s len);
IppStatus ippsAsinh_32fc_A21(const Ipp32fc* pSrc, Ipp32fc* pDst, Ipp32s len);
IppStatus ippsAsinh_32fc_A24(const Ipp32fc* pSrc, Ipp32fc* pDst, Ipp32s len);
IppStatus ippsAsinh_64fc_A26(const Ipp64fc* pSrc, Ipp64fc* pDst, Ipp32s len);
IppStatus ippsAsinh_64fc_A50(const Ipp64fc* pSrc, Ipp64fc* pDst, Ipp32s len);
IppStatus ippsAsinh_64fc_A53(const Ipp64fc* pSrc, Ipp64fc* pDst, Ipp32s len);
Include Files
ippvm.h
Domain Dependencies
Headers: ippcore.h
Libraries: ippcore.lib
Parameters
pSrc |
Pointer to the source vector. |
pDst |
Pointer to the destination vector. |
len |
Number of elements in the vectors. |
Description
This function computes the inverse hyperbolic sine of each element of pSrc, and stores the result in the corresponding element of pDst.
For single precision data:
function flavors ippsAsinh_32f_A11and ippsAsinh_32cf_A11 guarantee 11 correctly rounded bits of significand, or at least 3 exact decimal digits;
function flavors ippsAsinh_32f_A21 and ippsAsinh_32fc_A21 guarantee 21 correctly rounded bits of significand, or 4 ulps, or about 6 exact decimal digits;
function flavors ippsAsinh_32f_A24 and ippsAsinh_32fc_A24 guarantee 24 correctly rounded bits of significand, including the implied bit, with the maximum guaranteed error within 1 ulp.
For double precision data:
function flavors ippsAsinh_64f_A26 and ippsAsinh_64fc_A26 guarantee 26 correctly rounded bits of significand, or 6.7E+7 ulps, or approximately 8 exact decimal digits;
function flavors ippsAsinh_64f_A50 and ippsAsinh_64fc_A50 guarantee 50 correctly rounded bits of significand, or 4 ulps, or approximately 15 exact decimal digits;
function flavors ippsAsinh_64f_A53 and ippsAsinh_64fc_A53 guarantee 53 correctly rounded bits of significand, including the implied bit, with the maximum guaranteed error within 1 ulp.
The computation is performed as follows:
pDst[n] = asinh(pSrc[n]), 0 ≤ n < len.
Return Values
ippStsNoErr |
Indicates no error. |
ippStsNullPtrErr |
Indicates an error when pSrc or pDst pointer is NULL. |
ippStsSizeErr |
Indicates an error when len is less than or equal to 0. |
Example
The example below shows how to use the function ippsAsinh.
IppStatus ippsAsinh_32f_A21_sample(void) { const Ipp32f x[4] = {-30.122, -589.282, 487.472, -63.082}; Ipp32f y[4]; IppStatus st = ippsAsinh_32f_A21( x, y, 4 ); printf(" ippsAsinh_32f_A21:\n"); printf(" x = %.3f %.3f %.3f %.3f \n", x[0], x[1], x[2], x[3]); printf(" y = %.3f %.3f %.3f %.3f \n", y[0], y[1], y[2], y[3]); return st; }
Output:
ippsAsinh_32f_A21: x = -30.122 -589.282 487.472 -63.082 y = -4.099 -7.072 6.882 -4.838