10#include <gsl/gsl_fft_complex.h>
20 : m_dataSpace(
std::move(dataSpace)), m_imageSpace(
std::move(imageSpace)) {}
36 std::vector<double> complexImage =
m_imageSpace->toComplex(image);
40 size_t n = complexImage.size();
43 throw std::invalid_argument(
"Cannot transform to data space");
47 gsl_fft_complex_wavetable *
wavetable = gsl_fft_complex_wavetable_alloc(
n / 2);
48 gsl_fft_complex_workspace *
workspace = gsl_fft_complex_workspace_alloc(
n / 2);
50 gsl_fft_complex_wavetable_free(
wavetable);
51 gsl_fft_complex_workspace_free(
workspace);
70 std::vector<double> complexData =
m_dataSpace->toComplex(data);
74 size_t n = complexData.size();
77 throw std::invalid_argument(
"Cannot transform to image space");
81 gsl_fft_complex_wavetable *
wavetable = gsl_fft_complex_wavetable_alloc(
n / 2);
82 gsl_fft_complex_workspace *
workspace = gsl_fft_complex_workspace_alloc(
n / 2);
84 gsl_fft_complex_wavetable_free(
wavetable);
85 gsl_fft_complex_workspace_free(
workspace);
gsl_fft_real_wavetable * wavetable
IPeaksWorkspace_sptr workspace
std::shared_ptr< MaxentSpace > MaxentSpace_sptr