99
//FFT1
Wstore= createWstore(N_);
fft_step(x_, T, false, Wstore);
//FFT2
fft_step(w, T, false, Wstore);
//svertka
for(n= 0; n < N_; ++n)
x_[n]*= w[n];
//FFT3 (complement)
fft_step(x_, T, true, Wstore);
//find X[n] = X_[n]*e^--j*2*pi*n*n/N/2 = X_[n]*e^j*piN*n*n
for(n= 0, N22= 2*N - 2; n < N; ++n, --N22)
{
arg= piN*n*n;
v.re= cosl(arg);
v.im= sinl(arg);
v/= N_;
if (complement)
v/= N;
complex_mul(x + n, x_ + N22, &v);
}
delete [] x_;
delete [] w;
delete [] Wstore;}