Re: [eigen] Question on eigen/FFT

[ Thread Index | Date Index | More Archives ]

I am the original author of the unsupported FFT module. Unfortunately, I don't have the time now to support it and no one else has stepped up and volunteered to take the reigns.

re alignment.
The Eigen allocation should be sufficient. If you wish to use std::vector, then you'll probably want to specialize it with an aligned_allocator -- a quick google search should turn something up there.

The return-by-value proxy is an Eigen-ism that allows expressions to be composed and simplified before evaluation. The FFT module does not exploit this power well, if at all.

Hope this helps,
Mark Borgerding

On 03/08/2016 12:53 AM, Matthias Pospiech wrote:
I looked at the unsupported FFT(W) implementation in eigen.
I like the concept of the plan and execute approach implemented.

However I have the impression that the code is not finished.
Can someone comment on the state of the implementation?

Also I wonder how to create the arrays for fftw. It requires aligned arrays for fast computation. The eigen/fft code itsself does not use the fftw_malloc functions.

The example uses plain vector<complex<float> > which is possible but might not allow
fast computation.

Eigen::FFT<float> fft;

std::vector<float> timevec = MakeMyData();
std::vector<std::complex<float> > freqvec;

fft.fwd( freqvec,timevec);
// manipulate freqvec
fft.inv( timevec,freqvec);

In FFT I was wondering the use of "fft_fwd_proxy"
I see no example code nor do I understand its usage.

I am interested in the code mainly because I have my own fftw-cpp class
and I consider to reuse the fft-code from eigen and publish it independed of eigen.


Mail converted by MHonArc 2.6.19+