Skip to content

num::spectral::fft

Defined in header <spectral/fft.hpp>

void fft(const vec<cplx> &in, vec<cplx> &out, fft_backend b = default_fft_backend);

Compute unnormalized forward 1D Fast Fourier Transform \(X_k = \sum_{j=0}^{n-1} x_j e^{-2\pi i j k / n}\).

Dispatches to FFTW3 when linked or in-tree SIMD / sequential Cooley-Tukey Radix-2 / Bluestein kernel.

Parameters

  • in: Input complex vector of length \(n\).
  • out: Output complex spectrum vector (must be sized to \(n\)).
  • b: FFT backend tag (fft_backend::fftw, fft_backend::simd, fft_backend::seq).

See also

ifft, rfft, fft_plan