The .raw files are binary versions of the .dat files that have been stored as a sequence of little endian 32-bit IEEE floating point numbers. These binary files are needed by prog1p1.c and may also be listened to using the SoX audio program command
play -c1 -f -b32 -r44100 signalx.raw
The C code fast Fourier transform was adapted from a free
FORTRAN
code I found on Dr Kifowit's
page at Prairie State College.
Its simplicity is useful for this project.
In situations demanding a hardware optimized fast Fourier transform,
the FFTW subroutine library is
standard. In particular, FFTW is the library upon which the
built-in fast Fourier transforms of
MATLAB and
Octave are based.