51 NFFT(
size_t m,
size_t n,
size_t fft_size);
66 void execute(
const std::valarray<std::complex<T>> &spectrum,
67 const std::valarray<double> ×,
68 std::valarray<std::complex<T>> &out);
86 void execute(
size_t isize,
size_t istride,
87 const std::complex<T> *spectrum,
88 size_t tsize,
size_t tstride,
90 size_t osize,
size_t ostride,
91 std::complex<T> *out);
104 void execute_adjoint(
const std::valarray<std::complex<T>> &time_series,
105 const std::valarray<double> ×,
106 std::valarray<std::complex<T>> &spectrum);
121 const std::complex<T> *time_series,
122 size_t tsize,
size_t tstride,
124 size_t osize,
size_t ostride,
125 std::complex<T> *spectrum);
139 void set_spectrum(
const std::valarray<std::complex<T>> &x);
152 void set_spectrum(
size_t size,
size_t stride,
const std::complex<T> *x);
161 std::complex<T>
interp(
double t)
const;
163 size_t size_kernel()
const {
return 2*_m+1;}
164 size_t size_spectrum()
const {
return _n;}
165 size_t size_transform()
const {
return _fft_size;}
168 size_t _m, _n, _fft_size;
169 std::valarray<std::complex<T>> _xf, _xt;
170 std::valarray<T> _weights;
void execute_adjoint(const std::valarray< std::complex< T > > &time_series, const std::valarray< double > ×, std::valarray< std::complex< T > > &spectrum)
Execute an adjoint transform.
Definition NFFT.cpp:195