15.4.1. Преобразование Фурье

Математический смысл преобразования Фурье состоит в представлении сигнала у(х) в виде бесконечной суммы синусоид вида F(v)sin(vx). Функция F(v) называется преобразованием Фурье или интегралом Фурье, или Фурье-спектром сигнала. Ее аргумент v имеет смысл частоты соответствующей составляющей сигнала. Обратное преобразование Фурье переводит спектр F(V) в исходный сигнал у(х). Согласно определению,

Как видно, преобразование Фурье является существенно комплексной величиной, даже если сигнал действительный.

Преобразование Фурье действительных данных

Преобразование Фурье имеет огромное значение для различных математических приложений, и для него разработан очень эффективный алгоритм, называемый БПФ (быстрым преобразованием Фурье). Этот алгоритм реализован в нескольких встроенных функциях Mathcad, различающихся нормировками.

  • fft(y) — вектор прямого преобразования Фурье;
  • FFT(Y) — вектор прямого преобразования Фурье в другой нормировке;
  • ifft(v) — вектор обратного преобразования Фурье;
  • IFFT(V) — вектор обратного преобразования Фурье в другой нормировке;
    • у — вектор действительных данных, взятых через равные промежутки значений аргумента;
    • v — вектор действительных данных Фурье-спектра, взятых через равные промежутки значений частоты.

Аргумент прямого Фурье-преобразования, т. е. вектор у, должен иметь ровно 2n элементов (n — целое число). Результатом является вектор с 1+2n-1 элементами. И наоборот, аргумент обратного Фурье-преобразования должен иметь 1+2n-1 элементов, а его результатом будет вектор из 2n элементов. Если число данных не совпадает со степенью 2, то необходимо дополнить недостающие элементы нулями.

Рис. 15.24. Исходные данные и обратное преобразование Фурье (листинг 15.20)

Пример расчета Фурье-спектра для суммы трех синусоидальных сигналов разной амплитуды (показанных в виде сплошной кривой на рис. 15.24), приведен в листинге 15.20. Расчет проводится по N=128 точкам, причем предполагается, что интервал дискретизации данных ух равен А. В предпоследней строке листинга применяется встроенная функция if ft, а в последней корректно определяются соответствующие значения частот Qx. Обратите внимание, что результаты расчета представляются в виде модуля Фурье-спектра (рис. 15.25), поскольку сам спектр является комплексным. Очень полезно сравнить полученные амплитуды и местоположение пиков спектра с определением синусоид в листинге 15.20.

Листинг 15.20. Быстрое преобразование Фурье

Рис. 15.25. Преобразование Фурье (листинг 15.20)

Результат обратного,преобразования Фурье показан в виде кружков на том же рис. 15.24, что и исходные данные. Видно, что в рассматриваемом случае сигнал у(х) восстановлен с большой точностью, что характерно для плавного изменения сигнала.

Преобразование Фурье комплексных данных

Алгоритм быстрого преобразования Фурье для комплексных данных встроен в соответствующие функции, в имя которых входит литера "с".

  • cfft(y) — вектор прямого комплексного преобразования Фурье;
  • CFFT(y) — вектор прямого комплексного преобразования Фурье в другой нормировке;
  • icfft(y) —вектор обратного комплексного преобразования Фурье;
  • ICFFT(V) — вектор обратного комплексного преобразования Фурье в другой нормировке;
    • у — вектор данных, взятых через равные промежутки значений аргумента;
    • v — вектор данных Фурье-спектра, взятых через равные промежутки значений частоты.

Функции действительного преобразования Фурье используют тот факт, что в случае действительных данных спектр получается симметричным относительно нуля, и выводят только его половину (см. выше разд. "Преобразование Фурье действительных данных" этой главы). Поэтому, в частности, по 128 действительным данным получалось всего 65 точек спектра Фурье. Если к тем же данным применить функцию комплексного преобразования Фурье (рис. 15.26), то получится вектор из 128 элементов. Сравнивая рис. 15.25 и 15.26, можно уяснить соответствие между результатами действительного и комплексного Фурье-преобразования.

Рис. 15.26. Комплексное преобразование Фурье (продолжение листинга 15.20)

Двумерное преобразование Фурье

В Mathcad имеется возможность применять встроенные функции комплексного преобразования Фурье не только к одномерным, но и к двумерным массивам, т. е. матрицам. Соответствующий пример приведен в листинге 15.21 и на рис. 15.27 в виде графика линий уровня исходных данных и рассчитанного Фурье-спектра.

Листинг 15.21. Двумерное преобразование Фурье

Рис. 15.27. Данные (слева) и их Фурье-спектр (справа) (листинг 15.21)