C++ header for FFT
PocketFFT for C++ ================= This is a heavily modified implementation of FFTPack [1,2], with the following advantages: - Strictly C++11 compliant - More accurate twiddle factor computation - Worst case complexity for transform sizes with large prime factors is `N*log(N)`, because Bluestein's algorithm [3] is used for these cases. - Supports multidimensional arrays and selection of the axes to be transformed. - Supports `float`, `double`, and `long double` types. - Supports fully complex and half-complex (i.e. complex-to-real and real-to-complex) FFTs. For half-complex transforms, several conventions for representing the complex-valued side are supported (reduced-size complex array, FFTPACK-style half-complex format and Hartley transform). - Supports discrete cosine and sine transforms (Types I-IV) - Makes use of CPU vector instructions when performing 2D and higher-dimensional transforms, if they are available. - Has a small internal cache for transform plans, which speeds up repeated transforms of the same length (most significant for 1D transforms). - Has optional multi-threading support for multidimensional transforms
Release | Stable | Testing |
---|---|---|
Fedora Rawhide | 1.0^git20230214.076cb3d-5.fc41 | - |
Fedora 41 | 1.0^git20230214.076cb3d-5.fc41 | - |
Fedora 40 | 1.0^git20230214.076cb3d-4.fc40 | - |
You can contact the maintainers of this package via email at
pocketfft dash maintainers at fedoraproject dot org
.