#include <gsl/gsl_fft_real.h>
#include <gsl/gsl_histogram.h>
#include <gsl/gsl_vector.h>

/* Computes the (forward) real DFT of a vector
 * and returns the results as a complex vector
 */
gsl_vector_complex* vector_fft(gsl_vector *data);


/* `fft_deconvolve(data, noise)` tries to deconvolve
 * `noise` from `data` by factoring out the `noise`
 * in the Fourier space.
 */
gsl_histogram* fft_deconvolve(gsl_histogram *data, gsl_histogram *noise);