Skip to content
/ chfft Public

Chalharu's Fastest Fourier Transform crate for Rust.

License

Notifications You must be signed in to change notification settings

chalharu/chfft

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

chfft

crates.io badge Build Status docs.rs Coverage Status

Fastest Fourier Transform library implemented with pure Rust.

How-to Use

See the crate documentation for more details.

Features

  • CFft1D - Perform a complex-to-complex one-dimensional Fourier transform.

  • CFft2D - Perform a complex-to-complex two-dimensional Fourier transform.

  • Dct1D - Perform a discrete cosine transform.

  • RFft1D - Perform a real-to-complex one-dimensional Fourier transform.

  • Mdct1D - Perform a Modified discrete cosine transform.

Examples

use num_complex::Complex;
use chfft::CFft1D;

fn main() {
    let input = [Complex::new(2.0, 0.0), Complex::new(1.0, 1.0),
                 Complex::new(0.0, 3.0), Complex::new(2.0, 4.0)];
    let mut fft = CFft1D::<f64>::with_len(input.len());
    let output = fft.forward(&input);
    println!("the transform of {:?} is {:?}", input, output);
}