IPL / fftw

FFTW3 binding for Rust

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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 iOS(arm64) Android(armv7a/arm64)
source ✔️ ✔️ ✔️ ✔️ ✔️
system ✔️ - ✔️ - -
intel-mkl ✔️ ✔️ - - -

LICENSE

See LICENSE.md

About

FFTW3 binding for Rust

License:Other


Languages

Language:Rust 98.1%Language:Shell 1.8%Language:C++ 0.1%