Exercise: Fast Fourier Transform

You are provided with a routine to calculate a Fast Fourier Transform (FFT) which is written in C. The function is called fft and takes as its arguments the double complex array of data and the integer number of data points.

Your task is to write a program to read a number of data files as specified on the command line and using the supplied C routine, produce output files for each consisting of the resultant transforms.

The provided data sets are:

The first line in each data file is the total number of data points (as an integer). Each subsequent line is a single data point containing the real and imaginary components. You are encouraged to use the same format for your output files.

The FFT alogrithm in C is taken from the Rosetta Stone version. You will need to specify the C99 standard when compiling this routine.

Solution: Fortran