7 releases (breaking)

0.8.0 Apr 29, 2023
0.6.0 Jun 24, 2020
0.5.0 May 2, 2019
0.4.0 Oct 5, 2018
0.1.0 Mar 1, 2017

#1420 in Math

Download history 441/week @ 2024-06-15 256/week @ 2024-06-22 430/week @ 2024-06-29 239/week @ 2024-07-06 355/week @ 2024-07-13 239/week @ 2024-07-20 349/week @ 2024-07-27 211/week @ 2024-08-03 229/week @ 2024-08-10 180/week @ 2024-08-17 261/week @ 2024-08-24 617/week @ 2024-08-31 447/week @ 2024-09-07 642/week @ 2024-09-14 188/week @ 2024-09-21 461/week @ 2024-09-28

1,782 downloads per month
Used in 32 crates (4 directly)

Custom license and maybe GPL-2.0-or-later

2.5MB
72K SLoC

C 64K SLoC // 0.1% comments Shell 2K SLoC // 0.2% comments M4 2K SLoC // 0.2% comments OCaml 1.5K SLoC // 0.2% comments Rust 1K SLoC Perl 439 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