fbpx
Wikipedia

Chirp Z-transform

The chirp Z-transform (CZT) is a generalization of the discrete Fourier transform (DFT). While the DFT samples the Z plane at uniformly-spaced points along the unit circle, the chirp Z-transform samples along spiral arcs in the Z-plane, corresponding to straight lines in the S plane.[1][2] The DFT, real DFT, and zoom DFT can be calculated as special cases of the CZT.

Specifically, the chirp Z transform calculates the Z transform at a finite number of points zk along a logarithmic spiral contour, defined as:[1][3]

where A is the complex starting point, W is the complex ratio between points, and M is the number of points to calculate.

Like the DFT, the chirp Z-transform can be computed in O(n log n) operations where . An O(N log N) algorithm for the inverse chirp Z-transform (ICZT) was described in 2003,[4][5] and in 2019.[6]

Bluestein's algorithm edit

Bluestein's algorithm[7][8] expresses the CZT as a convolution and implements it efficiently using FFT/IFFT.

As the DFT is a special case of the CZT, this allows the efficient calculation of discrete Fourier transform (DFT) of arbitrary sizes, including prime sizes. (The other algorithm for FFTs of prime sizes, Rader's algorithm, also works by rewriting the DFT as a convolution.) It was conceived in 1968 by Leo Bluestein.[7] Bluestein's algorithm can be used to compute more general transforms than the DFT, based on the (unilateral) z-transform (Rabiner et al., 1969).

Recall that the DFT is defined by the formula

 

If we replace the product nk in the exponent by the identity

 

we thus obtain:

 

This summation is precisely a convolution of the two sequences an and bn defined by:

 
 

with the output of the convolution multiplied by N phase factors bk*. That is:

 

This convolution, in turn, can be performed with a pair of FFTs (plus the pre-computed FFT of complex chirp bn) via the convolution theorem. The key point is that these FFTs are not of the same length N: such a convolution can be computed exactly from FFTs only by zero-padding it to a length greater than or equal to 2N–1. In particular, one can pad to a power of two or some other highly composite size, for which the FFT can be efficiently performed by e.g. the Cooley–Tukey algorithm in O(N log N) time. Thus, Bluestein's algorithm provides an O(N log N) way to compute prime-size DFTs, albeit several times slower than the Cooley–Tukey algorithm for composite sizes.

The use of zero-padding for the convolution in Bluestein's algorithm deserves some additional comment. Suppose we zero-pad to a length M ≥ 2N–1. This means that an is extended to an array An of length M, where An = an for 0 ≤ n < N and An = 0 otherwise—the usual meaning of "zero-padding". However, because of the bkn term in the convolution, both positive and negative values of n are required for bn (noting that bn = bn). The periodic boundaries implied by the DFT of the zero-padded array mean that –n is equivalent to Mn. Thus, bn is extended to an array Bn of length M, where B0 = b0, Bn = BMn = bn for 0 < n < N, and Bn = 0 otherwise. A and B are then FFTed, multiplied pointwise, and inverse FFTed to obtain the convolution of a and b, according to the usual convolution theorem.

Let us also be more precise about what type of convolution is required in Bluestein's algorithm for the DFT. If the sequence bn were periodic in n with period N, then it would be a cyclic convolution of length N, and the zero-padding would be for computational convenience only. However, this is not generally the case:

 

Therefore, for N even the convolution is cyclic, but in this case N is composite and one would normally use a more efficient FFT algorithm such as Cooley–Tukey. For N odd, however, then bn is antiperiodic and we technically have a negacyclic convolution of length N. Such distinctions disappear when one zero-pads an to a length of at least 2N−1 as described above, however. It is perhaps easiest, therefore, to think of it as a subset of the outputs of a simple linear convolution (i.e. no conceptual "extensions" of the data, periodic or otherwise).

z-transforms edit

Bluestein's algorithm can also be used to compute a more general transform based on the (unilateral) z-transform (Rabiner et al., 1969). In particular, it can compute any transform of the form:

 

for an arbitrary complex number z and for differing numbers N and M of inputs and outputs. Given Bluestein's algorithm, such a transform can be used, for example, to obtain a more finely spaced interpolation of some portion of the spectrum (although the frequency resolution is still limited by the total sampling time, similar to a Zoom FFT), enhance arbitrary poles in transfer-function analyses, etc.

The algorithm was dubbed the chirp z-transform algorithm because, for the Fourier-transform case (|z| = 1), the sequence bn from above is a complex sinusoid of linearly increasing frequency, which is called a (linear) chirp in radar systems.

See also edit

References edit

  1. ^ a b A study of the Chirp Z-transform and its applications - Shilling, Steve Alan
  2. ^ "Chirp Z-transform - MATLAB czt". www.mathworks.com. Retrieved 2016-09-22.
  3. ^ Martin, Grant D. (November 2005). "Chirp Z-Transform Spectral Zoom Optimization with MATLAB®" (PDF).
  4. ^ Bostan, Alin (2003). Algorithmique efficace pour des operations de base en Calcul formel (PDF) (PhD). Ecole polytechnique.
  5. ^ Bostan, Alin; Schost, Éric (2005). "Polynomial evaluation and interpolation on special sets of points". Journal of Complexity. 21 (4): 420–446. doi:10.1016/j.jco.2004.09.009.
  6. ^ Engineers Solve 50-Year-Old Puzzle in Signal Processing – Inverse Chirp Z-Transform, By IOWA STATE UNIVERSITY OCTOBER 10, 2019
  7. ^ a b Bluestein, L. (1970-12-01). "A linear filtering approach to the computation of discrete Fourier transform". IEEE Transactions on Audio and Electroacoustics. 18 (4): 451–455. doi:10.1109/TAU.1970.1162132. ISSN 0018-9278.
  8. ^ "Bluestein's FFT Algorithm". DSPRelated.com.

General edit

  • Leo I. Bluestein, "A linear filtering approach to the computation of the discrete Fourier transform," Northeast Electronics Research and Engineering Meeting Record 10, 218-219 (1968).
  • Lawrence R. Rabiner, Ronald W. Schafer, and Charles M. Rader, "," Bell Syst. Tech. J. 48, 1249-1292 (1969). Also published in: Rabiner, Shafer, and Rader, "," IEEE Trans. Audio Electroacoustics 17 (2), 86–92 (1969).
  • D. H. Bailey and P. N. Swarztrauber, "The fractional Fourier transform and applications," SIAM Review 33, 389-404 (1991). (Note that this terminology for the z-transform is nonstandard: a fractional Fourier transform conventionally refers to an entirely different, continuous transform.)
  • Lawrence Rabiner, "The chirp z-transform algorithm—a lesson in serendipity," IEEE Signal Processing Magazine 21, 118-119 (March 2004). (Historical commentary.)
  • Vladimir Sukhoy and Alexander Stoytchev: "Generalizing the inverse FFT off the unit circle", (Oct 2019). # Open access.
  • Vladimir Sukhoy and Alexander Stoytchev: "Numerical error analysis of the ICZT algorithm for chirp contours on the unit circle", Sci Rep 10, 4852 (2020).

External links edit

  • A DSP algorithm for frequency analysis - the Chirp-Z Transform (CZT)
  • Solving a 50-year-old puzzle in signal processing, part two

chirp, transform, this, article, needs, additional, citations, verification, please, help, improve, this, article, adding, citations, reliable, sources, unsourced, material, challenged, removed, find, sources, news, newspapers, books, scholar, jstor, january, . This article needs additional citations for verification Please help improve this article by adding citations to reliable sources Unsourced material may be challenged and removed Find sources Chirp Z transform news newspapers books scholar JSTOR January 2013 Learn how and when to remove this message The chirp Z transform CZT is a generalization of the discrete Fourier transform DFT While the DFT samples the Z plane at uniformly spaced points along the unit circle the chirp Z transform samples along spiral arcs in the Z plane corresponding to straight lines in the S plane 1 2 The DFT real DFT and zoom DFT can be calculated as special cases of the CZT Specifically the chirp Z transform calculates the Z transform at a finite number of points zk along a logarithmic spiral contour defined as 1 3 X k n 0 N 1 x n z k n displaystyle X k sum n 0 N 1 x n z k n z k A W k k 0 1 M 1 displaystyle z k A cdot W k k 0 1 dots M 1 where A is the complex starting point W is the complex ratio between points and M is the number of points to calculate Like the DFT the chirp Z transform can be computed in O n log n operations where n max M N n max M N An O N log N algorithm for the inverse chirp Z transform ICZT was described in 2003 4 5 and in 2019 6 Contents 1 Bluestein s algorithm 2 z transforms 3 See also 4 References 4 1 General 5 External linksBluestein s algorithm editBluestein s algorithm 7 8 expresses the CZT as a convolution and implements it efficiently using FFT IFFT As the DFT is a special case of the CZT this allows the efficient calculation of discrete Fourier transform DFT of arbitrary sizes including prime sizes The other algorithm for FFTs of prime sizes Rader s algorithm also works by rewriting the DFT as a convolution It was conceived in 1968 by Leo Bluestein 7 Bluestein s algorithm can be used to compute more general transforms than the DFT based on the unilateral z transform Rabiner et al 1969 Recall that the DFT is defined by the formula X k n 0 N 1 x n e 2 p i N n k k 0 N 1 displaystyle X k sum n 0 N 1 x n e frac 2 pi i N nk qquad k 0 dots N 1 nbsp If we replace the product nk in the exponent by the identity n k k n 2 2 n 2 2 k 2 2 displaystyle nk frac k n 2 2 frac n 2 2 frac k 2 2 nbsp we thus obtain X k e p i N k 2 n 0 N 1 x n e p i N n 2 e p i N k n 2 k 0 N 1 displaystyle X k e frac pi i N k 2 sum n 0 N 1 left x n e frac pi i N n 2 right e frac pi i N k n 2 qquad k 0 dots N 1 nbsp This summation is precisely a convolution of the two sequences an and bn defined by a n x n e p i N n 2 displaystyle a n x n e frac pi i N n 2 nbsp b n e p i N n 2 displaystyle b n e frac pi i N n 2 nbsp with the output of the convolution multiplied by N phase factors bk That is X k b k n 0 N 1 a n b k n k 0 N 1 displaystyle X k b k left sum n 0 N 1 a n b k n right qquad k 0 dots N 1 nbsp This convolution in turn can be performed with a pair of FFTs plus the pre computed FFT of complex chirp bn via the convolution theorem The key point is that these FFTs are not of the same length N such a convolution can be computed exactly from FFTs only by zero padding it to a length greater than or equal to 2N 1 In particular one can pad to a power of two or some other highly composite size for which the FFT can be efficiently performed by e g the Cooley Tukey algorithm in O N log N time Thus Bluestein s algorithm provides an O N log N way to compute prime size DFTs albeit several times slower than the Cooley Tukey algorithm for composite sizes The use of zero padding for the convolution in Bluestein s algorithm deserves some additional comment Suppose we zero pad to a length M 2N 1 This means that an is extended to an array An of length M where An an for 0 n lt N and An 0 otherwise the usual meaning of zero padding However because of the bk n term in the convolution both positive and negative values of n are required for bn noting that b n bn The periodic boundaries implied by the DFT of the zero padded array mean that n is equivalent to M n Thus bn is extended to an array Bn of length M where B0 b0 Bn BM n bn for 0 lt n lt N and Bn 0 otherwise A and B are then FFTed multiplied pointwise and inverse FFTed to obtain the convolution of a and b according to the usual convolution theorem Let us also be more precise about what type of convolution is required in Bluestein s algorithm for the DFT If the sequence bn were periodic in n with period N then it would be a cyclic convolution of length N and the zero padding would be for computational convenience only However this is not generally the case b n N e p i N n N 2 b n e p i N 2 N n N 2 1 N b n displaystyle b n N e frac pi i N n N 2 b n left e frac pi i N 2Nn N 2 right 1 N b n nbsp Therefore for N even the convolution is cyclic but in this case N is composite and one would normally use a more efficient FFT algorithm such as Cooley Tukey For N odd however then bn is antiperiodic and we technically have a negacyclic convolution of length N Such distinctions disappear when one zero pads an to a length of at least 2N 1 as described above however It is perhaps easiest therefore to think of it as a subset of the outputs of a simple linear convolution i e no conceptual extensions of the data periodic or otherwise z transforms editBluestein s algorithm can also be used to compute a more general transform based on the unilateral z transform Rabiner et al 1969 In particular it can compute any transform of the form X k n 0 N 1 x n z n k k 0 M 1 displaystyle X k sum n 0 N 1 x n z nk qquad k 0 dots M 1 nbsp for an arbitrary complex number z and for differing numbers N and M of inputs and outputs Given Bluestein s algorithm such a transform can be used for example to obtain a more finely spaced interpolation of some portion of the spectrum although the frequency resolution is still limited by the total sampling time similar to a Zoom FFT enhance arbitrary poles in transfer function analyses etc The algorithm was dubbed the chirp z transform algorithm because for the Fourier transform case z 1 the sequence bn from above is a complex sinusoid of linearly increasing frequency which is called a linear chirp in radar systems See also editFractional Fourier transformReferences edit a b A study of the Chirp Z transform and its applications Shilling Steve Alan Chirp Z transform MATLAB czt www mathworks com Retrieved 2016 09 22 Martin Grant D November 2005 Chirp Z Transform Spectral Zoom Optimization with MATLAB PDF Bostan Alin 2003 Algorithmique efficace pour des operations de base en Calcul formel PDF PhD Ecole polytechnique Bostan Alin Schost Eric 2005 Polynomial evaluation and interpolation on special sets of points Journal of Complexity 21 4 420 446 doi 10 1016 j jco 2004 09 009 Engineers Solve 50 Year Old Puzzle in Signal Processing Inverse Chirp Z Transform By IOWA STATE UNIVERSITY OCTOBER 10 2019 a b Bluestein L 1970 12 01 A linear filtering approach to the computation of discrete Fourier transform IEEE Transactions on Audio and Electroacoustics 18 4 451 455 doi 10 1109 TAU 1970 1162132 ISSN 0018 9278 Bluestein s FFT Algorithm DSPRelated com General edit Leo I Bluestein A linear filtering approach to the computation of the discrete Fourier transform Northeast Electronics Research and Engineering Meeting Record 10 218 219 1968 Lawrence R Rabiner Ronald W Schafer and Charles M Rader The chirp z transform algorithm and its application Bell Syst Tech J 48 1249 1292 1969 Also published in Rabiner Shafer and Rader The chirp z transform algorithm IEEE Trans Audio Electroacoustics 17 2 86 92 1969 D H Bailey and P N Swarztrauber The fractional Fourier transform and applications SIAM Review 33 389 404 1991 Note that this terminology for the z transform is nonstandard a fractional Fourier transform conventionally refers to an entirely different continuous transform Lawrence Rabiner The chirp z transform algorithm a lesson in serendipity IEEE Signal Processing Magazine 21 118 119 March 2004 Historical commentary Vladimir Sukhoy and Alexander Stoytchev Generalizing the inverse FFT off the unit circle Oct 2019 Open access Vladimir Sukhoy and Alexander Stoytchev Numerical error analysis of the ICZT algorithm for chirp contours on the unit circle Sci Rep 10 4852 2020 External links editA DSP algorithm for frequency analysis the Chirp Z Transform CZT Solving a 50 year old puzzle in signal processing part two Retrieved from https en wikipedia org w index php title Chirp Z transform amp oldid 1171007425, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.