Generalized Goertzel Algorithm — the GGA

The standard Goertzel algorithm which can be found in many standard signal processing textbooks, serves to compute a single DFT coefficient of a signal. This is done at a low computational cost by transforming the original DFT formulation to the form of a 2nd-order IIR filter.

The so-called Generalized Goertzel algorithm (abbreviated GGA) is able to compute also values for frequencies that lie between the DFT samples, thus allowing to obtain the DTFT coefficients in a sense. Thanks to that, one of the most straightforward utilizations of the GGA is the fine-scale spectral analysis, for example in the peak-picking problem. See the motivation figure below.

original image

Below is the list of links to supplementary material to the articles (for detailed citations see list of publications) and pages related to the GGA.

  1. Computational cost of Chirp Z-transform and Generalized Goertzel Algorithm (2014)
  2. Generalized Goertzel algorithm for computing the natural frequencies of cantilever beams (2014)
  3. Goertzel algorithm generalized to non-integer multiples of fundamental frequency (2012)
  4. Remark on GGA by Richard G. Lyons on DSPRelated.com, including an additonal trick (2013)