This code generates an array with the values
. The resultant transform has value
and all the other
values equal to zero.
#define N 16 // Number of complex points in the data #define D 5 void main() { int a; float f[2*N]; // An array twice as large as the number of complex points float pi=2.*asin(1.),x=2.*pi*D/(float)N; for(a=0;a<N;a++) { f[2*a]=cos(x*(float)a); // f(i) = e^(-2 pi i D a/N) f[2*a+1]=-sin(x*(float)a); } fftc1(f,N,1,1); for(a=0;a<N;a++) printf("%d %f %f\n",a,f[2*a],f[2*a+1]); } OUTPUT: 0 0.000000 0.000001 1 0.000001 0.000001 2 0.000001 0.000001 3 0.000001 0.000001 4 0.000003 0.000001 5 15.999999 -0.000008 6 -0.000003 0.000001 7 -0.000001 0.000001 8 -0.000001 0.000001 9 -0.000001 0.000001 10 -0.000000 0.000001 11 -0.000000 0.000001 12 -0.000000 0.000001 13 0.000001 -0.000001 14 0.000000 0.000001 15 0.000000 0.000001