switched from single to double precision througout. closes #9
run FFT in place on the data vector