ChirpZTransform
- class hcipy.fourier.ChirpZTransform(n, m, w, a)
Bases:
object
The Chirp Z-transform (CZT).
This class evaluates:
\[X_k = \sum_{n=0}^{N-1} x(n) z_k^{-n}\]where \(N\) is the number of points along the real space, \(M\) is the number of points in the Z-plane. The Chirp Z-transform samples the Z-plane on equidistant points along spiral arcs, where the arcs are given by the starting point \(A\) and the complex ratio between points \(W\):
\[z_k = A * W^{-k}, k=0, 1, \ldots, M - 1\]This implementation uses Bluestein’s algorithm to compute the CZT using Fast Fourier Transforms.
- Parameters:
- ninteger
The number of points in the real plane.
- minteger
The number of points in the Z-plane.
- wscalar
The complex ratio between points in the Z-plane. Note: ensure that its absolute value is close to one, so that w**(max(n, m)**2) does not overflow.
- ascalar
The starting point in the complex Z-plane. Note: ensure that its absolute value is close to one, so that a**max(n, m) does not overflow.
Methods Summary
__call__
(x)Compute the Chirp Z-transform along the last axis.
Methods Documentation
- __call__(x)
Compute the Chirp Z-transform along the last axis.
The input is expected to have n points along the last axis. This is assumed but not checked. The transform is multiplexed along all other axes.
The return value has the same number of axes, with the last axis having m elements.
- Parameters:
- xarray_like
The array to compute the chirp Z-transform for.
- Returns:
- array_like
The chirp Z-transformed array.