Asinh
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_A11
and 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 whenpSrcorpDstpointer isNULL.
- ippStsSizeErr
- Indicates an error whenlenis 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 results:
ippsAsinh_32f_A21:
x = -30.122 -589.282 487.472 -63.082
y = -4.099 -7.072 6.882 -4.838