8 const double PI = 3.141592654;
14 for (j = 1, k = 0; j <= numPoints >> 2; j = j << 2) {
15 for (i = 0; i<numPoints>> 2; i += j) {
17 pW[k] = (
FFTLIB_F32) cos (2 * PI * i / numPoints);
18 pW[k + 1] = (
FFTLIB_F32) -sin (2 * PI * i / numPoints);
19 pW[k + 2 * t] = (
FFTLIB_F32) cos (4 * PI * i / numPoints);
20 pW[k + 2 * t + 1] = (
FFTLIB_F32) -sin (4 * PI * i / numPoints);
21 pW[k + 4 * t] = (
FFTLIB_F32) cos (6 * PI * i / numPoints);
22 pW[k + 4 * t + 1] = (
FFTLIB_F32) -sin (6 * PI * i / numPoints);
35 const double PI = 3.141592654;
37 for (i = 0; i<numPoints>> 1; i++) {
38 pSf[2 * i] = (
FFTLIB_F32) (0.5 * (1 - sin (2 * PI * i / numPoints)));
39 pSf[2 * i + 1] = (
FFTLIB_F32) (0.5 * (cos (2 * PI * i / numPoints)));
41 pSf[2 * i + numPoints] =
42 (
FFTLIB_F32) (0.5 * (1 + sin (2 * PI * i / numPoints)));
43 pSf[2 * i + numPoints + 1] =
44 (
FFTLIB_F32) (0.5 * (-cos (2 * PI * i / numPoints)));
void ifft_c2r_split_factor_gen(FFTLIB_F32 *pSf, int32_t numPoints)
void ifft_c2r_tw_gen(FFTLIB_F32 *pW, int32_t numPoints)
float FFTLIB_F32
Single precision floating point.