cadencii.fft.cftf161 C# (CSharp) Method

cftf161() static private method

static private cftf161 ( double a, double w ) : void
a double
w double
return void
        static void cftf161( double* a, double* w ) {
            double wn4r, wk1r, wk1i,
                x0r, x0i, x1r, x1i, x2r, x2i, x3r, x3i,
                y0r, y0i, y1r, y1i, y2r, y2i, y3r, y3i,
                y4r, y4i, y5r, y5i, y6r, y6i, y7r, y7i,
                y8r, y8i, y9r, y9i, y10r, y10i, y11r, y11i,
                y12r, y12i, y13r, y13i, y14r, y14i, y15r, y15i;

            wn4r = w[1];
            wk1r = w[2];
            wk1i = w[3];
            x0r = a[0] + a[16];
            x0i = a[1] + a[17];
            x1r = a[0] - a[16];
            x1i = a[1] - a[17];
            x2r = a[8] + a[24];
            x2i = a[9] + a[25];
            x3r = a[8] - a[24];
            x3i = a[9] - a[25];
            y0r = x0r + x2r;
            y0i = x0i + x2i;
            y4r = x0r - x2r;
            y4i = x0i - x2i;
            y8r = x1r - x3i;
            y8i = x1i + x3r;
            y12r = x1r + x3i;
            y12i = x1i - x3r;
            x0r = a[2] + a[18];
            x0i = a[3] + a[19];
            x1r = a[2] - a[18];
            x1i = a[3] - a[19];
            x2r = a[10] + a[26];
            x2i = a[11] + a[27];
            x3r = a[10] - a[26];
            x3i = a[11] - a[27];
            y1r = x0r + x2r;
            y1i = x0i + x2i;
            y5r = x0r - x2r;
            y5i = x0i - x2i;
            x0r = x1r - x3i;
            x0i = x1i + x3r;
            y9r = wk1r * x0r - wk1i * x0i;
            y9i = wk1r * x0i + wk1i * x0r;
            x0r = x1r + x3i;
            x0i = x1i - x3r;
            y13r = wk1i * x0r - wk1r * x0i;
            y13i = wk1i * x0i + wk1r * x0r;
            x0r = a[4] + a[20];
            x0i = a[5] + a[21];
            x1r = a[4] - a[20];
            x1i = a[5] - a[21];
            x2r = a[12] + a[28];
            x2i = a[13] + a[29];
            x3r = a[12] - a[28];
            x3i = a[13] - a[29];
            y2r = x0r + x2r;
            y2i = x0i + x2i;
            y6r = x0r - x2r;
            y6i = x0i - x2i;
            x0r = x1r - x3i;
            x0i = x1i + x3r;
            y10r = wn4r * (x0r - x0i);
            y10i = wn4r * (x0i + x0r);
            x0r = x1r + x3i;
            x0i = x1i - x3r;
            y14r = wn4r * (x0r + x0i);
            y14i = wn4r * (x0i - x0r);
            x0r = a[6] + a[22];
            x0i = a[7] + a[23];
            x1r = a[6] - a[22];
            x1i = a[7] - a[23];
            x2r = a[14] + a[30];
            x2i = a[15] + a[31];
            x3r = a[14] - a[30];
            x3i = a[15] - a[31];
            y3r = x0r + x2r;
            y3i = x0i + x2i;
            y7r = x0r - x2r;
            y7i = x0i - x2i;
            x0r = x1r - x3i;
            x0i = x1i + x3r;
            y11r = wk1i * x0r - wk1r * x0i;
            y11i = wk1i * x0i + wk1r * x0r;
            x0r = x1r + x3i;
            x0i = x1i - x3r;
            y15r = wk1r * x0r - wk1i * x0i;
            y15i = wk1r * x0i + wk1i * x0r;
            x0r = y12r - y14r;
            x0i = y12i - y14i;
            x1r = y12r + y14r;
            x1i = y12i + y14i;
            x2r = y13r - y15r;
            x2i = y13i - y15i;
            x3r = y13r + y15r;
            x3i = y13i + y15i;
            a[24] = x0r + x2r;
            a[25] = x0i + x2i;
            a[26] = x0r - x2r;
            a[27] = x0i - x2i;
            a[28] = x1r - x3i;
            a[29] = x1i + x3r;
            a[30] = x1r + x3i;
            a[31] = x1i - x3r;
            x0r = y8r + y10r;
            x0i = y8i + y10i;
            x1r = y8r - y10r;
            x1i = y8i - y10i;
            x2r = y9r + y11r;
            x2i = y9i + y11i;
            x3r = y9r - y11r;
            x3i = y9i - y11i;
            a[16] = x0r + x2r;
            a[17] = x0i + x2i;
            a[18] = x0r - x2r;
            a[19] = x0i - x2i;
            a[20] = x1r - x3i;
            a[21] = x1i + x3r;
            a[22] = x1r + x3i;
            a[23] = x1i - x3r;
            x0r = y5r - y7i;
            x0i = y5i + y7r;
            x2r = wn4r * (x0r - x0i);
            x2i = wn4r * (x0i + x0r);
            x0r = y5r + y7i;
            x0i = y5i - y7r;
            x3r = wn4r * (x0r - x0i);
            x3i = wn4r * (x0i + x0r);
            x0r = y4r - y6i;
            x0i = y4i + y6r;
            x1r = y4r + y6i;
            x1i = y4i - y6r;
            a[8] = x0r + x2r;
            a[9] = x0i + x2i;
            a[10] = x0r - x2r;
            a[11] = x0i - x2i;
            a[12] = x1r - x3i;
            a[13] = x1i + x3r;
            a[14] = x1r + x3i;
            a[15] = x1i - x3r;
            x0r = y0r + y2r;
            x0i = y0i + y2i;
            x1r = y0r - y2r;
            x1i = y0i - y2i;
            x2r = y1r + y3r;
            x2i = y1i + y3i;
            x3r = y1r - y3r;
            x3i = y1i - y3i;
            a[0] = x0r + x2r;
            a[1] = x0i + x2i;
            a[2] = x0r - x2r;
            a[3] = x0i - x2i;
            a[4] = x1r - x3i;
            a[5] = x1i + x3r;
            a[6] = x1r + x3i;
            a[7] = x1i - x3r;
        }