10 releases

0.8.0 Apr 29, 2023
0.3.3 Sep 5, 2020
0.3.2 Jun 24, 2020
0.3.0 May 2, 2019
0.1.0 Mar 1, 2017

#1308 in Algorithms

Download history 462/week @ 2023-10-29 210/week @ 2023-11-05 179/week @ 2023-11-12 197/week @ 2023-11-19 556/week @ 2023-11-26 134/week @ 2023-12-03 188/week @ 2023-12-10 272/week @ 2023-12-17 253/week @ 2023-12-24 343/week @ 2023-12-31 207/week @ 2024-01-07 190/week @ 2024-01-14 189/week @ 2024-01-21 412/week @ 2024-01-28 245/week @ 2024-02-04 339/week @ 2024-02-11

1,202 downloads per month
Used in 4 crates (via fftw-sys)

GPL-2.0-or-later

10MB
283K SLoC

C 257K SLoC // 0.1% comments Shell 8K SLoC // 0.2% comments M4 8K SLoC // 0.2% comments OCaml 5.5K SLoC // 0.2% comments Perl 2K SLoC // 0.1% comments FORTRAN Modern 1K SLoC // 0.0% comments Automake 1K SLoC // 0.1% comments FORTRAN Legacy 110 SLoC // 0.3% comments Rust 106 SLoC // 0.0% comments

rust-fftw3

Rust

Rust bindings for the FFTW C-library for computing discrete Fourier transforms, as well as discrete cosine and sine transforms.

This repository includes three crates:

  • Crate docs.rs fftw: A safe wrapper in Rust
  • Crate docs.rs fftw-sys: An unsafe wrapper in Rust
  • Crate docs.rs fftw-src: A crate for downloading and compiling the FFTW library

Feature flags

  • source: Download and compile FFTW (default)
    • (Linux, macOS) Needs a C-compiler and the make build tool to compile the FFTW library
    • (Windows) Downloads a precompiled binary from the FFTW website
  • system: Use the system's libfftw3 (experimental)
    • You must install FFTW before building this crate
    • For Linux systems, please install FFTW using your package manager, e.g. in Debian or Ubuntu run apt install libfftw3-dev
    • For macOS, please run brew install fftw by using homebrew
    • This feature is unsupported on Windows
  • intel-mkl Use Intel MKL backend through intel-mkl-src
    • Only Linux and Windows are supported
Feature Linux Windows macOS
source ✔️ ✔️ ✔️
system ✔️ - ✔️
intel-mkl ✔️ ✔️ -

LICENSE

See LICENSE.md

Dependencies