Raises e to the power of each vector element.
IppStatus ippsExp_32f_A11 (const Ipp32f* pSrc, Ipp32f* pDst, Ipp32s len);
IppStatus ippsExp_32f_A21 (const Ipp32f* pSrc, Ipp32f* pDst, Ipp32s len);
IppStatus ippsExp_32f_A24 (const Ipp32f* pSrc, Ipp32f* pDst, Ipp32s len);
IppStatus ippsExp_64f_A26 (const Ipp64f* pSrc, Ipp64f* pDst, Ipp32s len);
IppStatus ippsExp_64f_A50 (const Ipp64f* pSrc, Ipp64f* pDst, Ipp32s len);
IppStatus ippsExp_64f_A53 (const Ipp64f* pSrc, Ipp64f* pDst, Ipp32s len);
IppStatus ippsExp_32fc_A11 (const Ipp32fc* pSrc, Ipp32fc* pDst, Ipp32s len);
IppStatus ippsExp_32fc_A21 (const Ipp32fc* pSrc, Ipp32fc* pDst, Ipp32s len);
IppStatus ippsExp_32fc_A24 (const Ipp32fc* pSrc, Ipp32fc* pDst, Ipp32s len);
IppStatus ippsExp_64fc_A26 (const Ipp64fc* pSrc, Ipp64fc* pDst, Ipp32s len);
IppStatus ippsExp_64fc_A50 (const Ipp64fc* pSrc, Ipp64fc* pDst, Ipp32s len);
IppStatus ippsExp_64fc_A53 (const Ipp64fc* pSrc, Ipp64fc* pDst, Ipp32s len);
pSrc |
Pointer to the source vector. |
pDst |
Pointer to the destination vector. |
len |
Number of elements in the vectors. |
The function ippsExp is declared in the ippvm.h file. This function raises e to the power of each element of pSrc and stores the result in the corresponding element of pDst.
For single precision data:
function flavors ippsExp_32f_A11and ippsExp_32cf_A11 guarantee 11 correctly rounded bits of significand, or at least 3 exact decimal digits;
function flavors ippsExp_32f_A21 and ippsExp_32fc_A21 guarantee 21 correctly rounded bits of significand, or 4 ulps, or about 6 exact decimal digits;
function flavors ippsExp_32f_A24 and ippsExp_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 ippsExp_64f_A26 and ippsExp_64fc_A26 guarantee 26 correctly rounded bits of significand, or 6.7E+7 ulps, or approximately 8 exact decimal digits;
function flavors ippsExp_64f_A50 and ippsExp_64fc_A50 guarantee 50 correctly rounded bits of significand, or 4 ulps, or approximately 15 exact decimal digits;
function flavors ippsExp_64f_A53 and ippsExp_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] = epSrc[n], 0 ≤ n < len.
The example below shows how to use the function ippsExp.
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. |
IppStsOverflow |
In real functions, indicates a warning that the function overflows, that is, at least one of elements of pSrc is greater than Ln(FPMAX), where FPMAX is the maximum representable floating-point number. |
IppStsUnderflow |
In real functions, indicates a warning that the function underflows, that is, at least one of elements of pSrc is less than Ln(FPMIN), where FPMIN is the minimum positive floating-point value. |
IppStatus ippsExp_32f_A21_sample(void)
{
const Ipp32f x[4] = {4.885, -0.543, -3.809, -4.953};
Ipp32f y[4];
IppStatus st = ippsExp_32f_A21( x, y, 4 );
printf(" ippsExp_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:
ippsExp_32f_A21:
x = 4.885 -0.543 -3.809 -4.953
y = 132.324 0.581 0.022 0.007
Copyright © 2000 - 2011, Intel Corporation. All rights reserved.