В этой святи рассматривают только коэффициенты Ғ ( к), к = 0 , 1 , [7V/2] (последний индекс —целая часть N / 2). когда рисуют график функции Ғ. В качестве примера рассмотрим функцию / ( х ) = sin(27rfcx). Воспользуемся формулой Эйлера (4.11) sin(27rкх) = (e2*jkx - e~2lTjkx) /2j . Это означает, что при разложении этой функции в ряд Фурье в сумме присутствуют только два слагаемых: Д = 1/2j , /_jt = - 1 / 2j. Выберем целое N > к. Учитывая эффект подмены в (1.18). получим, что коэффициенты ДПФ это Ғ(к) = Д и F (N —к) = /_fc. Если имеет место неравенство к < N —к, на графике будет изображен коэффициент Д , в противном случае — В данном примере эго обстоятельство не играет роли, поскольку оба коэффициента имеют одинаковые модули. В дальнейшем для вычисления ДПФ будем использовать функцию fft (Fast Fourier Transform) из модуля numpy. В этой функции реализован алгоритм быстрого преобразования Фурье. Смысл быстрого преобразования заключается в следующем. Для того чтобы найти все коэффициенты ДПФ размерности N требуется выполнить N 2 перемножений. Все алгоритмы, которые требуют меньшего числа умножений для решения этой задачи, получили название «быстрые алгоритмы». Наибольший эффект достигается, когда N — 2Р есть степень 2, однако известны схемы быстрого вычисления и для других N. Теория быстрых преобразовании Фурье является самостоятельным разделом общей теории ДПФ, и она выходит за пределы материала, представленного в данном пособии. Для того чтобы с помощью дискретного преобразования найти истинный коэффициент для частоты к (при условии отсутствия подмены частот), надо выбирать N > 2к, и тогда неравенство к < N —к будет выполнено. Рассмотрим на примере, что происходит, если это условие не выполнено, скрипт 1.
RkJQdWJsaXNoZXIy MTExODQxMg==