Crate fftw3 [stability]
[-]
[+]
[src]
High-level bindings to FFTW3: Fastest Fourier Transform in the West.
At the moment, this only provides one-dimensional
complex-to-complex transforms via c2c_1d
, with no explicit plan
reuse.
There are some modules that provide helpers to make using the
low-level interface manually slightly nicer and safer, in
particular the lock
module assists with keeping the use of FFTW3
threadsafe, and the plan
module gives a nicer interface to
creating and using plans.
Licensing
The FFTW3 library is licensed under GPLv2 (or later) with non-free/commercial licenses available from MIT via the FFTW website. On the other hand, these bindings are dual-licensed MIT/Apache-2.0, however, any application using FFTW3 via these bindings must still be distributed under the terms of the GPL (unless a non-free license has been arranged). The explicit difference in licenses is to enable code-reuse between these bindings and bindings to other FFT libraries.
Modules
lock | Some functions in FFTW are not thread-safe, and one should ensure that only one thread is executing these at a time. This module provides a lock for this purpose. |
plan | Helpers for managing plans. |
Enums
FftError | Errors that can occur while planning or running a fourier transform. |
Functions
c2c_1d | Perform a complex-to-complex one-dimensional Fourier transform of
|