diff --git a/Cargo.toml b/Cargo.toml index fd25469..20a67a7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,12 +1,13 @@ [package] -name = "fft" +name = "dft" version = "0.2.0" authors = ["Ivan Ukhov "] license = "MIT" -repository = "https://github.com/stainless-steel/fft" -homepage = "https://github.com/stainless-steel/fft" -documentation = "https://stainless-steel.github.io/fft" -description = "The package provides a fast Fourier transform algorithm." +repository = "https://github.com/stainless-steel/dft" +homepage = "https://github.com/stainless-steel/dft" +documentation = "https://stainless-steel.github.io/dft" +description = """ +The package provides an algorithm to compute the discrete Fourier transform.""" [dependencies] complex = "*" diff --git a/README.md b/README.md index 85aacf7..3cb301e 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ -# FFT [![Version][version-img]][version-url] [![Status][status-img]][status-url] +# DFT [![Version][version-img]][version-url] [![Status][status-img]][status-url] -The package provides a [fast Fourier transform][1] algorithm. +The package provides an algorithm to compute the [discrete Fourier +transform][2]. ## [Documentation][doc] @@ -10,10 +11,10 @@ The package provides a [fast Fourier transform][1] algorithm. 2. Implement your idea. 3. Open a pull request. -[1]: https://en.wikipedia.org/wiki/Fast_Fourier_transform +[1]: https://en.wikipedia.org/wiki/Discrete_Fourier_transform -[version-img]: https://img.shields.io/crates/v/fft.svg -[version-url]: https://crates.io/crates/fft -[status-img]: https://travis-ci.org/stainless-steel/fft.svg?branch=master -[status-url]: https://travis-ci.org/stainless-steel/fft -[doc]: https://stainless-steel.github.io/fft +[version-img]: https://img.shields.io/crates/v/dft.svg +[version-url]: https://crates.io/crates/dft +[status-img]: https://travis-ci.org/stainless-steel/dft.svg?branch=master +[status-url]: https://travis-ci.org/stainless-steel/dft +[doc]: https://stainless-steel.github.io/dft diff --git a/benches/lib.rs b/benches/lib.rs index 5165abf..cff73e2 100644 --- a/benches/lib.rs +++ b/benches/lib.rs @@ -1,7 +1,7 @@ #![feature(test)] extern crate complex; -extern crate fft; +extern crate dft; extern crate test; use complex::c64; @@ -23,10 +23,10 @@ use test::{Bencher, black_box}; fn complex_forward(size: usize, bencher: &mut Bencher) { let mut data = vec![c64(42.0, 69.0); size]; - bencher.iter(|| black_box(fft::complex::forward(&mut data))); + bencher.iter(|| black_box(dft::complex::forward(&mut data))); } fn real_forward(size: usize, bencher: &mut Bencher) { let mut data = vec![42.0; 2 * size]; - bencher.iter(|| black_box(fft::real::forward(&mut data))); + bencher.iter(|| black_box(dft::real::forward(&mut data))); } diff --git a/src/lib.rs b/src/lib.rs index db33a5d..2a73883 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,6 +1,6 @@ -//! [Fast Fourier transform][1] algorithm. +//! [Discrete Fourier transform][1]. //! -//! [1]: https://en.wikipedia.org/wiki/Fast_Fourier_transform +//! [1]: https://en.wikipedia.org/wiki/Discrete_Fourier_transform extern crate complex as number; diff --git a/tests/lib.rs b/tests/lib.rs index daed82e..68733ca 100644 --- a/tests/lib.rs +++ b/tests/lib.rs @@ -1,6 +1,6 @@ extern crate assert; extern crate complex; -extern crate fft; +extern crate dft; use complex::c64; @@ -9,53 +9,53 @@ mod fixtures; #[test] fn complex_forward_128() { let mut data = fixtures::TIME_DATA_256.to_vec(); - fft::complex::forward(as_c64_mut(&mut data)); + dft::complex::forward(as_c64_mut(&mut data)); assert::close(&data, &fixtures::FREQUENCY_DATA_128_COMPLEX[..], 1e-14); } #[test] fn complex_forward_real_256() { let mut data = to_c64(&fixtures::TIME_DATA_256); - fft::complex::forward(&mut data); + dft::complex::forward(&mut data); assert::close(as_f64(&data), &fixtures::FREQUENCY_DATA_256_REAL_UNPACKED[..], 1e-13); } #[test] fn complex_inverse_128() { let mut data = fixtures::FREQUENCY_DATA_128_COMPLEX.to_vec(); - fft::complex::inverse(as_c64_mut(&mut data)); + dft::complex::inverse(as_c64_mut(&mut data)); assert::close(&data, &fixtures::TIME_DATA_256[..], 1e-14); } #[test] fn real_forward_256() { let mut data = fixtures::TIME_DATA_256.to_vec(); - fft::real::forward(&mut data); + dft::real::forward(&mut data); assert::close(&data, &fixtures::FREQUENCY_DATA_256_REAL_PACKED[..], 1e-13); - let data = fft::real::unpack(&data); + let data = dft::real::unpack(&data); assert::close(as_f64(&data), &fixtures::FREQUENCY_DATA_256_REAL_UNPACKED[..], 1e-13); } #[test] fn real_forward_512() { let mut data = fixtures::TIME_DATA_512.to_vec(); - fft::real::forward(&mut data); - let data = fft::real::unpack(&data); + dft::real::forward(&mut data); + let data = dft::real::unpack(&data); assert::close(as_f64(&data), &fixtures::FREQUENCY_DATA_512_REAL_UNPACKED[..], 1e-12); } #[test] fn real_inverse_256() { let mut data = fixtures::FREQUENCY_DATA_256_REAL_PACKED.to_vec(); - fft::real::inverse(&mut data); + dft::real::inverse(&mut data); assert::close(&data, &fixtures::TIME_DATA_256[..], 1e-14); } #[test] fn real_inverse_512() { let mut data = fixtures::TIME_DATA_512.to_vec(); - fft::real::forward(&mut data); - fft::real::inverse(&mut data); + dft::real::forward(&mut data); + dft::real::inverse(&mut data); assert::close(&data, &fixtures::TIME_DATA_512[..], 1e-14); }