On 05/29/2013 12:12 AM, Nathan Bliss wrote:
Dear Boost Community Members, I am writing to ask if I could contribute a C++ FFT implementation to the boost library. I noticed that there is a boost::CRC so I thought it would be a good addition to have boost::FFT as well. MIT have an existing open-source FFTW library, but it is GPL-licensed which is much more restrictive than the Boost license. I should imagine a commercial FFTW license would be very expensive. I have working FFT code which I have tested on Ubuntu Linux GNU gcc and also Visual Studio Express 2012 (MS VC++) for Windows. My code, when run as a 2048-point FFT, agrees with the MIT FFTW one to a max error margin of 6 parts per million.
I would really like to see an FFT implementation in boost. It should of course focus on performance. I also think that interoperability with different vector and storage types would be really great. It prevents that the user has to convert its data types in different formats (which can be really painful if you use different libraries, for example odeint, ublas, fftw, ...).