Revision 49:d6705fec7a94 test/TestFFT.cpp
| test/TestFFT.cpp | ||
|---|---|---|
| 38 | 38 |
|
| 39 | 39 |
#define COMPARE_CONST(a, n) \ |
| 40 | 40 |
for (int cmp_i = 0; cmp_i < (int)(sizeof(a)/sizeof(a[0])); ++cmp_i) { \
|
| 41 |
BOOST_CHECK_EQUAL(a[cmp_i] + 1.1, n + 1.1); \
|
|
| 41 |
BOOST_CHECK_SMALL(a[cmp_i] - n, 1e-14); \
|
|
| 42 | 42 |
} |
| 43 | 43 |
|
| 44 | 44 |
#define COMPARE_ARRAY(a, b) \ |
| 45 | 45 |
for (int cmp_i = 0; cmp_i < (int)(sizeof(a)/sizeof(a[0])); ++cmp_i) { \
|
| 46 |
BOOST_CHECK_EQUAL(a[cmp_i] + 1.1, b[cmp_i] + 1.1); \
|
|
| 46 |
BOOST_CHECK_SMALL(a[cmp_i] - b[cmp_i], 1e-14); \
|
|
| 47 | 47 |
} |
| 48 | 48 |
|
| 49 | 49 |
BOOST_AUTO_TEST_CASE(dc) |
| ... | ... | |
| 101 | 101 |
double re[4], im[4]; |
| 102 | 102 |
Vamp::FFT::forward(4, in, 0, re, im); |
| 103 | 103 |
BOOST_CHECK_EQUAL(re[0], 0.0); |
| 104 |
BOOST_CHECK_EQUAL(re[1], 1.0);
|
|
| 104 |
BOOST_CHECK_CLOSE(re[1], 1.0, 1e-12);
|
|
| 105 | 105 |
BOOST_CHECK_EQUAL(re[2], 0.0); |
| 106 | 106 |
BOOST_CHECK_EQUAL(im[0], 0.0); |
| 107 |
BOOST_CHECK_EQUAL(im[1], -2.0);
|
|
| 107 |
BOOST_CHECK_CLOSE(im[1], -2.0, 1e-12);
|
|
| 108 | 108 |
BOOST_CHECK_EQUAL(im[2], 0.0); |
| 109 | 109 |
double back[4]; |
| 110 | 110 |
double backim[4]; |
| ... | ... | |
| 119 | 119 |
double re[4], im[4]; |
| 120 | 120 |
Vamp::FFT::forward(4, in, 0, re, im); |
| 121 | 121 |
BOOST_CHECK_EQUAL(re[0], 0.0); |
| 122 |
BOOST_CHECK_EQUAL(re[1], 1.0);
|
|
| 122 |
BOOST_CHECK_CLOSE(re[1], 1.0, 1e-12);
|
|
| 123 | 123 |
BOOST_CHECK_EQUAL(re[2], 0.0); |
| 124 | 124 |
BOOST_CHECK_EQUAL(im[0], 0.0); |
| 125 |
BOOST_CHECK_EQUAL(im[1], -2.0);
|
|
| 125 |
BOOST_CHECK_CLOSE(im[1], -2.0, 1e-12);
|
|
| 126 | 126 |
BOOST_CHECK_EQUAL(im[2], 0.0); |
| 127 | 127 |
double back[4]; |
| 128 | 128 |
double backim[4]; |
Also available in: Unified diff