Кіріспе
Цифрлық сигналды өңдеу техникасы
Гертцель алгоритмі – дискретті Фурье түрлендірілімінің (DFT) жекелеген мүшелерін тиімді бағалауға арналған цифрлық сигналды өңдеу (DSP) техникасы. Бұл алгоритм кейбір практикалық қолданыстарда пайдалы, мысалы, дәстүрлі аналогты телефонның түймелерінен шығарылатын екі тонды көп жиілікті сигнализация (DTMF) үндік сигналдарын тану үшін. Алгоритмді алғаш рет Джеральд Гертцель 1958 жылы сипаттаған. DFT сияқты, Гертцель алгоритмі дискретті сигналдан бір таңдалынған жиілік компонентін талдайды. Тікелей DFT есептеулерінен өзгеше, Гертцель алгоритмі әр итерацияда бір нақты мәнді коэффициент қолданады, нақты мәнді кіріс тізбектері үшін нақты мәнді арифметика қолданады. Толық спектрді қамту үшін (коэффициенттер келесі есептеулерде қайта пайдаланылатын жағдайда, бұл қисық DFT-ге тең есептеу күрделілігін береді), Гертцель алгоритмінің күрделілігі жылдам Фурье түрлендірілімі (FFT) алгоритмдерінен жоғарырақ, бірақ таңдалған жиілік компоненттерінің шағын санын есептеу үшін ол сандық тұрғыдан тиімдірек. Гертцель алгоритмінің қарапайым құрылымы оны кішкентай процессорлар мен енбелгі қосымшалары үшін өте қолайлы етеді. Гертцель алгоритмі сондай-ақ «кері» режимде синусоиданы синтездеу функциясы ретінде қолданылуы мүмкін, бұл әрбір жасалған үлгі үшін тек 1 көбейту және 1 азайту операциясын қажет етеді.
The Goertzel algorithm is a technique in digital signal processing (DSP) for efficient evaluation of the individual terms of the discrete Fourier transform (DFT). It is useful in certain practical applications, such as recognition of dual tone multi frequency signaling (DTMF) tones produced by the push buttons of the keypad of a traditional analog telephone. The algorithm was first described by Gerald Goertzel in 1958. Like the DFT, the Goertzel algorithm analyses one selectable frequency component from a discrete signal. Unlike direct DFT calculations, the Goertzel algorithm applies a single real valued coefficient at each iteration, using real valued arithmetic for real valued input sequences. For covering a full spectrum (except when using for continuous stream of data where coefficients are reused for subsequent calculations, which has computational complexity equivalent of sliding DFT), the Goertzel algorithm has a higher order of complexity than fast Fourier transform (FFT) algorithms, but for computing a small number of selected frequency components, it is more numerically efficient. The simple structure of the Goertzel algorithm makes it well suited to small processors and embedded applications. The Goertzel algorithm can also be used "in reverse" as a sinusoid synthesis function, which requires only 1 multiplication and 1 subtraction per generated sample.
Сандық тұрақтылық
Фильтрдің Z-трансформациясының полюстері күрделі Z-трансформация жазықтығының төңірегінде, бірлік радиусы бар шеңберде және орналасқандығын байқауға болады. Бұл қасиет фильтр процесінің маргиналды тұрақты екенін және төмен дәлдікті арифметика қолданып, ұзақ кіріс тізбектерімен есептегенде сандық қателердің жинақталуына осал екенін көрсетеді. Кристиан Рейнш сандық тұрақты нұсқасын ұсынды.
Фазалық анықтау
Бұл қолданбада алдыңғы бөлімде талқыланғандай, нақты немесе кешенді мәнді кіріс ағыны қолданылып, DFT мүшесінің сол бағалауы қажет. Содан кейін сигнал фазасы, кері тангенс функциясын есептеу кезінде ерекшеліктерге, квадрантқа және басқа да факторларға қатысты тиісті сақтық шараларын ескере отырып, анықталады.
taking appropriate precautions for singularities, quadrant, and so forth when computing the inverse tangent function.
Нақты арифметикадағы күрделі сигналдар
Күрделі сигналдар нақты және жорамал бөліктерге сызықты түрде жіктелетіндіктен, Гертцель алгоритмін нақты арифметикада нақты бөліктер тізбегі бойынша жеке-жеке есептеуге болады, нәтижесінде , және жорамал бөліктер тізбегі бойынша есептеуге болады, нәтижесінде . Содан кейін екі күрделі мәнді ішінара нәтижелерді біріктіруге болады: