3 #ifndef MYGSL_FFT_REAL_H 4 #define MYGSL_FFT_REAL_H 1 12 #include <gsl/gsl_fft_real.h> 13 #include <gsl/gsl_fft_halfcomplex.h> 28 void init(
const std::vector<double> & sample_,
31 double min_freq_cutoff_,
32 double max_freq_cutoff_);
34 void init(
const std::vector<double> & sample_,
37 double max_freq_cutoff_);
43 void dump(std::ostream & out_,
bool dump_arrays_ =
true)
const;
53 void _process_filter_();
57 bool _initialized_ =
false;
63 double * _data_ =
nullptr;
64 double * _data_rec_ =
nullptr;
65 double * _freq_ =
nullptr;
66 double * _tmp_ =
nullptr;
67 double _Nyquist_freq_;
68 double _min_freq_cutoff_;
69 double _max_freq_cutoff_;
72 gsl_fft_real_wavetable * _the_real_ =
nullptr;
73 gsl_fft_halfcomplex_wavetable * _hc_ =
nullptr;
74 gsl_fft_real_workspace * _work_ =
nullptr;
80 #endif // MYGSL_FFT_REAL_H double get_frequency_step() const
void compute_filtered_data(std::vector< double > &filtered_data_) const
void dump(std::ostream &out_, bool dump_arrays_=true) const
void compute_fourier_spectrum(std::vector< double > &freq_spectrum_) const
Top-level namespace of the Bayeux/mygsl module library.
Definition: base_decay_driver.h:47
void init(const std::vector< double > &sample_, double start_, double step_, double min_freq_cutoff_, double max_freq_cutoff_)
Fast Fourier transform algorithm.
Definition: fft_real.h:18
double get_nyquist_frequency() const