Иллюстрированный самоучитель по Mathematica



              

Прямое и обратное преобразования Фурье


Для представления временных зависимостей (сигналов) в виде набора гармоник в общем случае (и в системе Mathematica) используется прямое дискретное преобразование Фурье (ДПФ), а для обратного преобразования спектра во временную зависимость — обратное дискретное преобразование Фурье. Математические основы этих преобразований хорошо известны и описаны в соответствующей литературе. В Mathematica 4 имеются следующие основные функции для осуществления дискретного преобразования Фурье:

  • Fourier [list] — осуществляет дискретное преобразование Фурье для списка list комплексных чисел;
  • InverseFourier [list] — осуществляет дискретное обратное преобразование Фурье списка list комплексных чисел.

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

DF:=Fourier[{1,1,0,0}]

DF

{1. + 0.I, 0.5+0.51, 0. + 0.I, 0.5-0.51}

IF:=InverseFourier[DF]

IF

{1.+ 0. I, 1. + 2.77556х10-171, 0. + 0. I, 0. -2.77556x 10-17I}

Разумеется, этот пример носит исключительно тестовый характер. Используя множество возможностей работы с комплексными числами, можно решать различные задачи спектрального анализа и синтеза сигналов различной формы.

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

Согласно теореме отсчетов, именуемой также теоремой Котельникова, если функция имеет N отсчетов, то максимальное число гармоник спектрального разложения равно N/2. Между тем, функция Fourier в системе Mathematica дает все N элементов создаваемого ею вектора.


Содержание  Назад  Вперед