Visible to Intel only — GUID: GUID-A0D79AB6-573E-440B-B7E3-024BF004B231
Visible to Intel only — GUID: GUID-A0D79AB6-573E-440B-B7E3-024BF004B231
Abs
Computes the absolute value of vector elements.
Syntax
IppStatus ippsAbs_32f_A24 (const Ipp32f* pSrc, Ipp32f* pDst, Ipp32s len);
IppStatus ippsAbs_64f_A53 (const Ipp64f* pSrc, Ipp64f* pDst, Ipp32s len);
IppStatus ippsAbs_32fc_A11 (const Ipp32fc* pSrc, Ipp32f* pDst, Ipp32s len);
IppStatus ippsAbs_32fc_A21 (const Ipp32fc* pSrc, Ipp32f* pDst, Ipp32s len);
IppStatus ippsAbs_32fc_A24 (const Ipp32fc* pSrc, Ipp32f* pDst, Ipp32s len);
IppStatus ippsAbs_64fc_A26 (const Ipp64fc* pSrc, Ipp64f* pDst, Ipp32s len);
IppStatus ippsAbs_64fc_A50 (const Ipp64fc* pSrc, Ipp64f* pDst, Ipp32s len);
IppStatus ippsAbs_64fc_A53 (const Ipp64fc* pSrc, Ipp64f* 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 absolute value of the vector pSrc elements and stores the result in the corresponding element of the vector pDst.
For single precision data:
function flavor ippsAbs_32fc_A11 guarantees 11 correctly rounded bits of significand, or at least 3 exact decimal digits;
function flavor ippsAbs_32fc_A21 guarantees 21 correctly rounded bits of significand, or 4 ulps, or about 6 exact decimal digits;
function flavors ippsAbs_32f_A24 and ippsAbs_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 flavor ippsAbs_64fc_A26 guarantees 26 correctly rounded bits of significand, or 6.7E+7 ulps, or approximately 8 exact decimal digits;
function flavor ippsAbs_64fc_A50 guarantees 50 correctly rounded bits of significand, or 4 ulps, or approximately 15 exact decimal digits;
function flavors ippsAbs_64f_A53 and ippsAbs_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] = |pSrc1[n]|, 0 ≤ n < len.
Return Values
ippStsNoErr |
Indicates no error. |
ippStsNullPtrErr |
Indicates an error when pSrc1, pSrc2 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 ippsAbs.
IppStatus ippsAbs_32fc_A24_sample(void) { const Ipp32fc x[2] = {{+2.885,-1.809}, {-0.543,-2.809}}; Ipp32fc y[2]; IppStatus st = ippsAbs_32fc_A24( x, y, 2 ); printf(" ippsAbs_32fc_A24:\n"); printf(" x = %+.3f%+.3f*i %+.3f%+.3f*i \n", x[0].re, x[0].im, x[1].re, x[1].im); printf(" y = %+.3f %+.3f% \n", y[0], y[1]); return st; }
Output:
ippsAbs_32fc_A24: x = +2.885-1.809*i -0.543-2.809*i y = +3.405 +2.861