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

#1375 in Math

Download history 149/week @ 2024-01-03 130/week @ 2024-01-10 99/week @ 2024-01-17 111/week @ 2024-01-24 362/week @ 2024-01-31 195/week @ 2024-02-07 506/week @ 2024-02-14 1582/week @ 2024-02-21 648/week @ 2024-02-28 266/week @ 2024-03-06 284/week @ 2024-03-13 342/week @ 2024-03-20 564/week @ 2024-03-27 389/week @ 2024-04-03 428/week @ 2024-04-10 232/week @ 2024-04-17

1,660 downloads per month
Used in 31 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