komm.fourier_transform
Computes the Fourier transform. This function applies a shift to the spectrum (so that the zero frequency component is at the center) and scales the output by a given time step. Both the spectrum and the corresponding frequency bins are returned.
Note
This is a simple wrapper around numpy.fft functions.
Parameters:
-
waveform(ArrayLike) –The input array representing the waveform to be transformed.
-
time_step(float) –The time step between samples in the waveform.
-
nfft(int | None) –The number of points in the FFT. If
None, it defaults to the size of the input along the specified axis. -
axis(int) –The axis along which to compute the Fourier transform. Default is the last axis.
Returns:
-
spectrum(NDArray[complexfloating]) –The spectrum correponding to the input waveform.
-
frequencies(NDArray[floating]) –The corresponding frequency bins.
Examples:
>>> spectrum, frequencies = komm.fourier_transform([1, 2, 3, 4], time_step=0.1)
>>> spectrum
array([-0.2+0.j , -0.2-0.2j, 1. +0.j , -0.2+0.2j])
>>> frequencies
array([-5. , -2.5, 0. , 2.5])