Arguments -
data : pointer to the real vector
width : only the first "width" elements will
be computed, if width <= 0, all elements
will be computed and returned
------------------- Fast Fourier Transformation ------------------
routine of fft
Arguments -
ar : pointer to the sequence of the real part
ai : pointer to the sequence of the imaginary part
length : length of the vector, it must be 2^N, otherwise
the vector must be padded with zero.