numra-fft
FFT and spectral analysis for the Numra workspace — complex / real FFT, IFFT, 2D FFT, convolution, PSD, Welch, STFT, and windowing — built on rustfft.
Generic over Scalar (f32 / f64), with FFT computation internally in f64 for numerical stability. Covers the spectrum from raw FFT/IFFT through windowed power-spectral-density and short-time Fourier transforms.
Example
use ;
let signal: = vec!;
let spectrum = fft;
let recovered = ifft;
for in signal.iter.zip
What's in this crate
- Core FFT:
fft,ifft,fft2(complex 1D / 2D) - Real FFT:
rfft,irfft(efficient real-to-complex) - Complex type:
Complex,ComplexF64 - Spectral analysis:
psd(power spectral density),welch(Welch's method),stft/StftResult(short-time Fourier transform) - Convolution:
fftconvolve,fftcorrelate - Utilities:
fftfreq,fftshift,ifftshift,window_func,Window(Hann, Hamming, Blackman, Bartlett, …)
Composes with
numra-ode— spectral analysis of time-series ODE solutionsnumra-signal— FFT backbone forresample,hilbert, and FIR windowed-sinc design (filtfiltitself is SOS-based IIR and stays in the time domain)numra-stats— PSD treated as a frequency-domain statisticnumra-interp— resampling onto uniform grids before FFT
See interop workflows for the verified ODE → FFT → signal-processing → peak-detection workflow.
Install
[]
= "0.1"
Or via the umbrella crate:
[]
= "0.1"
Documentation
- API: https://docs.rs/numra-fft
- Book: FFT and spectral
- Source: https://github.com/moussaoutlook/numra-rs/tree/main/numra-fft
License
Numra Academic & Research License (Non-Commercial). Academic and research use is free; commercial use requires a separate license — contact contact@spectralautomata.com. See LICENSE.