6 releases (breaking)

0.6.0 Jun 24, 2020
0.5.0 May 2, 2019
0.4.0 Oct 5, 2018
0.3.1 Oct 5, 2018
0.1.0 Mar 1, 2017

#5 in #fftw

Download history 125/week @ 2022-08-19 645/week @ 2022-08-26 334/week @ 2022-09-02 280/week @ 2022-09-09 90/week @ 2022-09-16 63/week @ 2022-09-23 407/week @ 2022-09-30 169/week @ 2022-10-07 41/week @ 2022-10-14 77/week @ 2022-10-21 780/week @ 2022-10-28 461/week @ 2022-11-04 465/week @ 2022-11-11 106/week @ 2022-11-18 435/week @ 2022-11-25 249/week @ 2022-12-02

1,366 downloads per month
Used in 15 crates (4 directly)

Custom license and maybe GPL-2.0-or-later

2.5MB
70K SLoC

C 64K SLoC // 0.1% comments Shell 2K SLoC // 0.2% comments OCaml 1.5K SLoC // 0.2% comments Rust 1K SLoC Perl 436 SLoC // 0.1% comments FORTRAN Modern 267 SLoC Automake 251 SLoC // 0.1% comments FORTRAN Legacy 27 SLoC // 0.2% 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