PDL::FFT#

📦 stdpdl

Fast Fourier transforms of PDL’s ndarrays, in place, in one or more dimensions.

use PDL;
use PDL::FFT;
my ($re, $im) = (pdl(1, 2, 3, 4), zeroes(4));
fft($re, $im);
print "$re $im\n";                  # [10 -2 -2 -2] [0 2 0 -2]

fft($re, $im) and ifft($re, $im) transform the real and imaginary parts in place along the first dimension, broadcasting over the rest; realfft/realifft work on real data, fftnd/ifftnd in every dimension, and fftconvolve convolves two ndarrays through the transform. All of these are upstream’s Perl, unchanged, over the kernels; this is PDL::FFT of PDL 2.106.