diff options
Diffstat (limited to 'fourier.hpp')
-rw-r--r-- | fourier.hpp | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/fourier.hpp b/fourier.hpp deleted file mode 100644 index 6be0931..0000000 --- a/fourier.hpp +++ /dev/null @@ -1,35 +0,0 @@ -#pragma once -#include "types.hpp" - -#include <cmath> -#include <fftw3.h> -#include <vector> -#include <tuple> - -#ifndef FFTW_THREADS -#define FFTW_THREADS 1 -#endif - -class FourierTransform { -private: - Real* a; - Complex* â; - fftw_plan plan_r2c; - fftw_plan plan_c2r; - unsigned n; - Real Δω; - Real Δτ; -public: - FourierTransform(unsigned n, Real Δω, Real Δτ, unsigned flags = 0); - ~FourierTransform(); - std::vector<Complex> fourier(const std::vector<Real>& c); - std::vector<Complex> fourier(); - std::vector<Real> inverse(const std::vector<Complex>& ĉ); - void writeToA(unsigned i, Real ai); - std::vector<Real> convolve(const std::vector<Real>& Γh, const std::vector<Real>& R); -}; - -std::string fourierFile(std::string prefix, unsigned p, unsigned s, Real λ, Real τ₀, Real y, unsigned log2n, Real τₘₐₓ); -Real energy(const std::vector<Real>& C, const std::vector<Real>& R, unsigned p, unsigned s, Real λ, Real y, Real Δτ); -std::tuple<std::vector<Complex>, std::vector<Complex>> RddfCtdfCt(FourierTransform& fft, const std::vector<Real>& C, const std::vector<Real>& R, unsigned p, unsigned s, Real λ); -Real estimateZ(FourierTransform& fft, const std::vector<Real>& C, const std::vector<Complex>& Ct, const std::vector<Real>& R, const std::vector<Complex>& Rt, unsigned p, unsigned s, Real λ, Real τ₀, Real y); |