1 typedef float fftw_real;
3 void complex_transpose(fftw_real *rA, fftw_real *iA, int n, int is, int js)
7 for (i = 1; i < n; ++i) {
8 for (j = 0; j < i; ++j) {
9 fftw_real ar, ai, br, bi;
11 ar = rA[i * is + j * js];
12 ai = iA[i * is + j * js];
13 br = rA[j * is + i * js];
14 bi = iA[j * is + i * js];
16 rA[j * is + i * js] = ar;
17 iA[j * is + i * js] = ai;
18 rA[i * is + j * js] = br;
19 iA[i * is + j * js] = bi;
25 int main(int argc, char **argv)
30 for (i = 0; i < 2048; ++i) {
34 printf("Checksum before = %lf\n", sum);
36 for (i = 0; i < 10; ++i) {
37 complex_transpose(A, A+1, 32, 2, 64);
41 for (i = 0; i < 2048; ++i)
43 printf("Checksum after = %lf\n", sum);