⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fftsg.cpp.svn-base

📁 ffshow源码
💻 SVN-BASE
📖 第 1 页 / 共 5 页
字号:
                                k1 += m2;                                a[k1 + 1] = -a[k1 + 1];                        }                } else {                        a[1] = -a[1];                        a[m2 + 1] = -a[m2 + 1];                        for (k = 1; k < m; k++) {                                for (j = 0; j < k; j++) {                                        j1 = 2 * j + ip[k];                                        k1 = 2 * k + ip[j];                                        xr = a[j1];                                        xi = -a[j1 + 1];                                        yr = a[k1];                                        yi = -a[k1 + 1];                                        a[j1] = yr;                                        a[j1 + 1] = yi;                                        a[k1] = xr;                                        a[k1 + 1] = xi;                                        j1 += m2;                                        k1 += m2;                                        xr = a[j1];                                        xi = -a[j1 + 1];                                        yr = a[k1];                                        yi = -a[k1 + 1];                                        a[j1] = yr;                                        a[j1 + 1] = yi;                                        a[k1] = xr;                                        a[k1 + 1] = xi;                                }                                k1 = 2 * k + ip[k];                                a[k1 + 1] = -a[k1 + 1];                                a[k1 + m2 + 1] = -a[k1 + m2 + 1];                        }                }        }        static void bitrv216(REAL *a)        {                REAL x1r, x1i, x2r, x2i, x3r, x3i, x4r, x4i,                         x5r, x5i, x7r, x7i, x8r, x8i, x10r, x10i,                         x11r, x11i, x12r, x12i, x13r, x13i, x14r, x14i;                    x1r = a[2];                x1i = a[3];                x2r = a[4];                x2i = a[5];                x3r = a[6];                x3i = a[7];                x4r = a[8];                x4i = a[9];                x5r = a[10];                x5i = a[11];                x7r = a[14];                x7i = a[15];                x8r = a[16];                x8i = a[17];                x10r = a[20];                x10i = a[21];                x11r = a[22];                x11i = a[23];                x12r = a[24];                x12i = a[25];                x13r = a[26];                x13i = a[27];                x14r = a[28];                x14i = a[29];                a[2] = x8r;                a[3] = x8i;                a[4] = x4r;                a[5] = x4i;                a[6] = x12r;                a[7] = x12i;                a[8] = x2r;                a[9] = x2i;                a[10] = x10r;                a[11] = x10i;                a[14] = x14r;                a[15] = x14i;                a[16] = x1r;                a[17] = x1i;                a[20] = x5r;                a[21] = x5i;                a[22] = x13r;                a[23] = x13i;                a[24] = x3r;                a[25] = x3i;                a[26] = x11r;                a[27] = x11i;                a[28] = x7r;                a[29] = x7i;        }        static void bitrv216neg(REAL *a)        {                REAL x1r, x1i, x2r, x2i, x3r, x3i, x4r, x4i,                         x5r, x5i, x6r, x6i, x7r, x7i, x8r, x8i,                         x9r, x9i, x10r, x10i, x11r, x11i, x12r, x12i,                         x13r, x13i, x14r, x14i, x15r, x15i;                    x1r = a[2];                x1i = a[3];                x2r = a[4];                x2i = a[5];                x3r = a[6];                x3i = a[7];                x4r = a[8];                x4i = a[9];                x5r = a[10];                x5i = a[11];                x6r = a[12];                x6i = a[13];                x7r = a[14];                x7i = a[15];                x8r = a[16];                x8i = a[17];                x9r = a[18];                x9i = a[19];                x10r = a[20];                x10i = a[21];                x11r = a[22];                x11i = a[23];                x12r = a[24];                x12i = a[25];                x13r = a[26];                x13i = a[27];                x14r = a[28];                x14i = a[29];                x15r = a[30];                x15i = a[31];                a[2] = x15r;                a[3] = x15i;                a[4] = x7r;                a[5] = x7i;                a[6] = x11r;                a[7] = x11i;                a[8] = x3r;                a[9] = x3i;                a[10] = x13r;                a[11] = x13i;                a[12] = x5r;                a[13] = x5i;                a[14] = x9r;                a[15] = x9i;                a[16] = x1r;                a[17] = x1i;                a[18] = x14r;                a[19] = x14i;                a[20] = x6r;                a[21] = x6i;                a[22] = x10r;                a[23] = x10i;                a[24] = x2r;                a[25] = x2i;                a[26] = x12r;                a[27] = x12i;                a[28] = x4r;                a[29] = x4i;                a[30] = x8r;                a[31] = x8i;        }        static void bitrv208(REAL *a)        {                REAL x1r, x1i, x3r, x3i, x4r, x4i, x6r, x6i;                    x1r = a[2];                x1i = a[3];                x3r = a[6];                x3i = a[7];                x4r = a[8];                x4i = a[9];                x6r = a[12];                x6i = a[13];                a[2] = x4r;                a[3] = x4i;                a[6] = x6r;                a[7] = x6i;                a[8] = x1r;                a[9] = x1i;                a[12] = x3r;                a[13] = x3i;        }        static void bitrv208neg(REAL *a)        {                REAL x1r, x1i, x2r, x2i, x3r, x3i, x4r, x4i,                         x5r, x5i, x6r, x6i, x7r, x7i;                    x1r = a[2];                x1i = a[3];                x2r = a[4];                x2i = a[5];                x3r = a[6];                x3i = a[7];                x4r = a[8];                x4i = a[9];                x5r = a[10];                x5i = a[11];                x6r = a[12];                x6i = a[13];                x7r = a[14];                x7i = a[15];                a[2] = x7r;                a[3] = x7i;                a[4] = x3r;                a[5] = x3i;                a[6] = x5r;                a[7] = x5i;                a[8] = x1r;                a[9] = x1i;                a[10] = x6r;                a[11] = x6i;                a[12] = x2r;                a[13] = x2i;                a[14] = x4r;                a[15] = x4i;        }        static void cftf1st(int n, REAL *a, REAL *w)        {                int j, j0, j1, j2, j3, k, m, mh;                REAL wn4r, csc1, csc3, wk1r, wk1i, wk3r, wk3i,                         wd1r, wd1i, wd3r, wd3i;                REAL x0r, x0i, x1r, x1i, x2r, x2i, x3r, x3i,                         y0r, y0i, y1r, y1i, y2r, y2i, y3r, y3i;                    mh = n >> 3;                m = 2 * mh;                j1 = m;                j2 = j1 + m;                j3 = j2 + m;                x0r = a[0] + a[j2];                x0i = a[1] + a[j2 + 1];                x1r = a[0] - a[j2];                x1i = a[1] - a[j2 + 1];                x2r = a[j1] + a[j3];                x2i = a[j1 + 1] + a[j3 + 1];                x3r = a[j1] - a[j3];                x3i = a[j1 + 1] - a[j3 + 1];                a[0] = x0r + x2r;                a[1] = x0i + x2i;                a[j1] = x0r - x2r;                a[j1 + 1] = x0i - x2i;                a[j2] = x1r - x3i;                a[j2 + 1] = x1i + x3r;                a[j3] = x1r + x3i;                a[j3 + 1] = x1i - x3r;                wn4r = w[1];                csc1 = w[2];                csc3 = w[3];                wd1r = 1;                wd1i = 0;                wd3r = 1;                wd3i = 0;                k = 0;                for (j = 2; j < mh - 2; j += 4) {                        k += 4;                        wk1r = csc1 * (wd1r + w[k]);                        wk1i = csc1 * (wd1i + w[k + 1]);                        wk3r = csc3 * (wd3r + w[k + 2]);                        wk3i = csc3 * (wd3i - w[k + 3]);                        wd1r = w[k];                        wd1i = w[k + 1];                        wd3r = w[k + 2];                        wd3i = -w[k + 3];                        j1 = j + m;                        j2 = j1 + m;                        j3 = j2 + m;                        x0r = a[j] + a[j2];                        x0i = a[j + 1] + a[j2 + 1];                        x1r = a[j] - a[j2];                        x1i = a[j + 1] - a[j2 + 1];                        y0r = a[j + 2] + a[j2 + 2];                        y0i = a[j + 3] + a[j2 + 3];                        y1r = a[j + 2] - a[j2 + 2];                        y1i = a[j + 3] - a[j2 + 3];                        x2r = a[j1] + a[j3];                        x2i = a[j1 + 1] + a[j3 + 1];                        x3r = a[j1] - a[j3];                        x3i = a[j1 + 1] - a[j3 + 1];                        y2r = a[j1 + 2] + a[j3 + 2];                        y2i = a[j1 + 3] + a[j3 + 3];                        y3r = a[j1 + 2] - a[j3 + 2];                        y3i = a[j1 + 3] - a[j3 + 3];                        a[j] = x0r + x2r;                        a[j + 1] = x0i + x2i;                        a[j + 2] = y0r + y2r;                        a[j + 3] = y0i + y2i;                        a[j1] = x0r - x2r;                        a[j1 + 1] = x0i - x2i;                        a[j1 + 2] = y0r - y2r;                        a[j1 + 3] = y0i - y2i;                        x0r = x1r - x3i;                        x0i = x1i + x3r;                        a[j2] = wk1r * x0r - wk1i * x0i;                        a[j2 + 1] = wk1r * x0i + wk1i * x0r;                        x0r = y1r - y3i;                        x0i = y1i + y3r;                        a[j2 + 2] = wd1r * x0r - wd1i * x0i;                        a[j2 + 3] = wd1r * x0i + wd1i * x0r;                        x0r = x1r + x3i;                        x0i = x1i - x3r;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -