Алгоритм Гёрцеля

Материал из Википедии — свободной энциклопедии
Это старая версия этой страницы, сохранённая Mbalabin (обсуждение | вклад) в 17:21, 2 августа 2010 (Написан раздел "Описание алгоритма"). Она может серьёзно отличаться от текущей версии.
Перейти к навигации Перейти к поиску

Алгоритм Гёрцеля (англ. Goertzel algorithm) — это специальная реализация дискретного преобразования Фурье (ДПФ) в форме рекурсивного фильтра. Данный алгоритм был предложен Г. Гёрцелем в 1958 году [1]. В отличие от быстрого преобразования Фурье, вычисляющего все частотные компоненты ДПФ, алгоритм Гёрцеля позволяет эффективно вычислить значение одного частотного компонента.

Алгоритм Гёрцеля является популярным алгоритмом для решения задачи детектирования и декодирования тональных сигналов в телефонии.

Варианты названия алгоритма

В русскоязычной литературе нет устоявшегося варианта транслитерации фамилии автора алгоритма. Распространены варианты «Алгоритм Герцеля», «Алгоритм Гертцеля», «Алгоритм Горцеля» и другие.

Описание алгоритма

Пусть — k-й частотный компонент компонент дискретного преобразования Фурье (здесь и далее будут использоваться обозначения, принятые в статье «Дискретное преобразование Фурье»). Последовательно вычислим члены рекуррентной последовательности для :

где . Получим искомое значение частотного компонента как:

.

Доказательство алгоритма

Устойчивость и вычислительная эффективность алгоритма

Примечания

  1. G. Goertzel, "An Algorithm for the Evaluation of Finite Trigonometric Series," American Mathematical Monthly, Vol. 65, Jan. 1958, pp. 34-35.