Некоторые свойства разложения периодических сигналов в ряд Фурье

Содержание

DSPL-2.0 — свободная библиотека алгоритмов цифровой обработки сигналов

Распространяется под лицензией LGPL v3

Страница проекта на SourceForge libdspl-2.0 on SourceForge

Обнаружили ошибку? Выделите ее мышью и нажмите ctrl+enter
Вводные замечания

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

Показано, что спектр периодического сигнала s(t) представляет собой дискретную (линейчатую) функцию S(\omega_n), определенную на равноотстоящей сетке частот \omega_n = \Delta\omega n, n =0, \pm 1, \pm 2, \ldots

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

Свойство линейности

Пусть имеются два периодических сигнала a(t) и b(t) с равными периодами повторения T, причем оба сигнала удовлетворяют условиям Дирихле [1, стр. 165]. Сигналы a(t) и b(t) могут быть представлены рядом Фурье с коэффициентами разложения  A(\omega_n) и  B(\omega_n), где \omega_n = \Delta \omega  n, n =0, \pm 1, \pm 2, \ldots

Везде далее в этом разделе мы будем считать сигналы a(t) и b(t) периодическими с равными периодами повторения T, причем оба сигнала удовлетворяют условиям Дирихле. Тогда сигнал s(t) = a(t) + b(t) также является периодическим сигналом с периодом T, и может быть представлен рядом Фурье с коэффициентами:

equation 1
(1)
Таким образом, спектр суммы периодических сигналов равен сумме их спектров. Следствием свойства линейности является свойство умножения на константу. Спектр сигнала s(t) = \alpha  a(t) , \alpha = \textrm{const}, равен:

equation 2
(2)

Свойство циклического временного сдвига

Рассмотрим сигнал s(t) как результат циклического временного сдвига исходного сигнала a(t), как это показано на рисунке 1 для положительных и отрицательных значений \tau.

Циклический временной сдвиг сигнала
Рисунок 1. Циклический временной сдвиг сигнала a(t)

Циклический сдвиг характерен периодическим сигналам. Спектр S(\omega_n) сигнала s(t) с циклическим временным сдвигом равен:

equation 3
(3)
Введем замену переменной t-\tau = x, тогда t = x + \tau, dx = d\tau, и выражение (3) преобразуется к виду:
equation 4
(4)
Таким образом, циклический временной сдвиг периодического сигнала a(t) на величину \tau приводит к умножению спектра на фазовый множитель \exp ( -j  \omega_n   \tau ). При этом амплитудный спектр S(\omega_n) = A(\omega_n) не меняется, а фазовый спектр \Phi_S(\omega_n) =  \Phi_A(\omega_n) - \omega_n \tau приобретает дополнительное линейное слагаемое.

Спектр циклической свертки сигналов

Пусть сигнал s(t) представляет собой циклическую (периодическую) свертку [2, стр. 362] сигналов a(t) и b(t):

equation 5
(5)
Тогда сигнал s(t) также периодический с периодом T и его спектр равен:

equation 6
(6)
Поменяем порядок интегрирования, и используем свойство (4) циклического временного сдвига:
equation 7
(7)
Таким образом, спектр S(\omega_n) периодического сигнала (5) пропорционален произведению спектров A(\omega_n) и B(\omega_n) сигналов a(t) и b(t).

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

Спектр произведения сигналов

Пусть сигнал s(t) = a(t) b(t) представляет собой произведение сигналов a(t) и b(t). Сигнал s(t) также представляет собой периодический сигнал с периодом T, и его спектр равен:

equation 8
(8)
Подставим в (8) вместо сигнала a(t) его разложение в ряд Фурье:

equation 9
(9)
Поменяем в (9) операции интегрирования и суммирования и получим:

equation 10
(10)
Учтем, что

equation 11
(11)
тогда окончательно спектр произведения периодических сигналов

equation 12
(12)
равен линейной свертке спектров этих сигналов.

Симметрия спектра вещественного сигнала

Пусть s(t) представляет собой вещественный периодический сигнал. Рассмотрим подробнее его спектр:

equation 13
(13)
Амплитудный |S(\omega_n)| и фазовый \Phi_S(\omega_n) спектр вещественного сигнала равен:

equation 14
(14)

equation 15
(15)
Анализируя выражения (14) и (15), можно обратить внимание, что амплитудный спектр вещественного периодического сигнала всегда симметричен относительно нулевой частоты, т.е. \big| S(\omega_n) \big| = \big| S(-\omega_n) \big|, а фазовый спектр \Phi_S(\omega_n) = - \Phi_S(-\omega_n) — антисимметричен.

Если же периодический сигнал s(t) = \operatorname{Re}[s(t)] + j  \operatorname{Im}[s(t)] — комплексный, то симметрия спектра сигнала нарушается, что будет показано в следующем параграфе.

Свойство частотного сдвига

Пусть сигнал s(t) = a(t)  \exp(j  \omega_0  t) представляет собой произведение сигналов a(t) и комплексной экспоненты с частотой \omega_0 = \Delta\omega k = \frac{2\pi k}{T}, где k — произвольное целое число. Выбор частоты \omega_0 = \Delta\omega k обеспечивает периодичность сигнала s(t), поскольку на одном периоде T укладывается целое число оборотов комплексной экспоненты \exp(j  \omega_0  t).

Таким образом, сигнал s(t) удовлетворяет условиям Дирихле, и его спектр равен:

equation 16
(16)
Умножение сигнала на комплексную экспоненту \exp(j  \omega_0  t) переносит спектр сигнала на частоту \omega_0. При этом сигнал s(t) становится комплексным, а его спектр — несимметричным относительно нулевой частоты.

На рисунке 2 показан пример частотного сдвига сигнала при умножении a(t) на комплексную экспоненту \exp(j  \omega_0  t) при \omega_0 = 10\pi рад/c.

Пример частотного сдвига спектра   при умножении сигнала на комплексную экспоненту
Рисунок 2. Пример частотного сдвига спектра
при умножении сигнала на комплексную экспоненту \exp(j  \omega_0  t)

Можно видеть, что спектр S(\omega_n) смещенного по частоте сигнала s(t) = a(t)  \exp(j  \omega_0  t) есть смещенная на частоту \omega_0 копия спектра A(\omega_n).

При этом важно отметить, что сам сигнал s(t) стал комплексным (на графике показана отдельно реальная \operatorname{Re}\big[s(t)\big] и мнимая \operatorname{Im}\big[s(t)\big] части сигнала), его амплитудный спектр при этом перестал быть симметричным, а фазовый — антисимметричным относительно нулевой частоты.

Рассмотрим теперь умножение сигнала a(t) не на комплексную экспоненту, а на гармоническое колебание \cos(\omega_0 t + \varphi_0), где \omega_0 = \Delta \omega k, k — произвольное целое число, \varphi_0 — произвольная начальная фаза.

В этом случае мы также сохраняем периодичность сигнала s(t) = a(t)  \cos(\omega_0  t + \varphi_0), и его спектр равен:

equation 17
(17)
Выразим \cos \big( \omega_0  t + \varphi_0 \big) через сумму комплексных экспонент, тогда:
equation 18
(18)
Таким образом, умножение сигнала на гармоническое колебание приводит к смещению спектра на частоты \pm\omega_0 как в положительную, так и в отрицательную области частот, уменьшению амплитуды в положительной и отрицательной областях в два раза и добавлению фазового множителя \exp(\pm j\varphi_0).

На рисунке 3 показан пример частотного сдвига сигнала при умножении a(t) на \cos(\omega_0  t + \varphi_0) при \omega_0 = 10\pi рад/c (5 Гц), и \varphi_0 = \frac{\pi}{2} рад.

Пример частотного сдвига периодической последовательности прямоугольных импульсов   при умножении на 
Рисунок 3. Пример частотного сдвига периодической последовательности прямоугольных импульсов
при умножении на \cos(\omega_0 t + \varphi_0)

Из рисунка 3 можно видеть, что спектр S(\omega_n) смещенного по частоте сигнала s(t) есть сумма смещенных на частоты \pm \omega_0 спектров A(\omega_n) половинной амплитуды. При этом заметим, что вещественный сигнал остается вещественным с симметричным амплитудным и антисимметричным фазовым спектром.

Равенство Парсеваля

\label{fourier_series_prop:parseval}

Пусть имеется периодический сигнал s(t), который представляет собой изменяющееся во времени значение тока или напряжения. Рассмотрим среднюю мощность P_{\textrm{cp}} выделяемую на сопротивлении 1 Ом сигналом s(t):

equation 19
(19)
где s^{*}(t) — сигнал, комплексно-сопряженный s(t).

Подставим в (19) вместо s^{*}(t) выражение ряда Фурье в комплексной форме:

equation 20
(20)
Поменяем местами операции суммирования и интегрирования и получим:
equation 21
(21)
Приравнивая (19) и (21), получаем равенство Парсеваля [3, стр. 39], связывающее среднюю мощность периодического сигнала во временной и частотной областях:

equation 22
(22)
Из (22) следует, что средняя мощность, выделяемая на сопротивлении 1 Ом за один период повторения сигнала s(t) равна сумме квадратов модулей спектральных составляющих этого сигнала. При этом суммирование идет для n от минус бесконечности, до бесконечности. Это означает, что компоненты с отрицательными частотами \omega_n < 0, соответствующие отрицательным n, также вносят вклад в среднюю мощность сигнала.

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

Спектр производной исходного сигнала

Пусть сигнал a(t) представляет собой непрерывный дифференцируемый на всей числовой оси периодический сигнал (не имеет разрывов первого рода), чей спектр равен A(\omega_n). Тогда сигнал s(t) = \frac{d}{dt}a(t) также представляет собой периодический сигнал, удовлетворяющий условиям Дирихле и его спектр равен:

equation 23
(23)
Используем правило интегрирования по частям [4, стр. 330]:
equation 24
(24)
Учтем, что

equation 25
(25)
Также в силу периодичности и непрерывности сигнала a\left(\frac{T}{2}\right) = a\left(-\frac{T}{2} \right), и два первых слагаемых выражения (24) взаимно исключаются.

Окончательно:

equation 26
(26)
Таким образом, спектр S(\omega_n) производной периодического сигнала a(t) равен спектру этого сигнала A(\omega_n), умноженного на j\omega_n.

Наличие множителя j\omega_n приводит к тому, что спектр S(\omega_n) с ростом частоты \omega_n затухает слабее чем спектр исходного сигнала A(\omega_n). Поэтому изначально мы наложили ограничение на исходный сигнал: он должен быть непрерывным и дифференцируемым, тогда его спектр A(\omega_n) будет затухать быстрее чем \frac{1}{\omega_n}, и умножение на j\omega_n не приведет к росту S(\omega_n) с увеличением частоты.

Спектр интеграла исходного сигнала

\label{fourier_series_prop:subsec_int} Пусть теперь a(t) представляет собой сигнал с нулевой постоянной составляющей. Спектр A(\omega_n) сигнала a(t) равен нулю на нулевой частоте: A(0) = 0.

Тогда сигнал s(t)

equation 27
(27)
представляет собой интеграл от сигнала a(t), причем при A(0) = 0, s(t) также является периодическим с периодом T и удовлетворяет условиям Дирихле.

Заметим, что при наличии постоянной составляющей A(0) \neq 0 в сигнале a(t), интегратор от минус бесконечности накопит бесконечную составляющую сигнала s(t). На рисунке 4 показан пример периодического сигнала с нулевой постоянной составляющей и результат его интегрирования.

Пример периодического сигнала с нулевой постоянной составляющей и результат его интегрирования
Рисунок 4. Пример периодического сигнала с нулевой постоянной составляющей и результат его интегрирования

Рассмотрим спектр S(\omega_n) сигнала s(t). Для этого заметим, что сигнал a(t) = \frac{d}{dt} s(t) ничто иное, как производная сигнала s(t). Тогда использую свойство спектра производной сигнала (26) можно записать:

equation 28
(28)
При \omega_n \neq 0, спектр S(\omega_n) рассчитывается без особого труда. Однако на частоте \omega_n = 0 получаем неопределенность вида \frac{0}{0}:

equation 29
(29)
Раскроем неопределенность \frac{0}{0} по правилу Лопиталя [4, стр. 257]:
equation 30
(30)
По определению спектра
equation 31
(31)
тогда продифференцируем левую и правую части (31) по переменной \omega_n и найдем значение производной \frac{d}{d\omega_n}\,A(\omega_n) при \omega_n=0:

equation 32
(32)
Окончательно, спектр сигнала s(t) на нулевой частоте равен:
equation 33
(33)
и спектр S(\omega_n) с учетом (28) и (33):
equation 34
(34)
Анализируя выражение (34) можно заключить, что интегрирование сигнала приводит к более быстрому затуханию амплитуд спектра сигнала ввиду наличия дополнительного множителя \frac{1}{j\omega_n}. Таким образом, интегрирование сигнала устраняет скачки в исходном сигнале, как это показано на рисунке 4.

Выводы

В данном разделе мы рассмотрели некоторые свойства спектров периодических сигналов: линейность, свойства временного и частотного сдвигов, спектр свертки и произведения сигналов. Мы также проанализировали свойство симметрии спектра вещественного сигнала и получили, что амплитудный спектр периодического сигнала является симметричным, а фазовый спектр — антисимметричным относительно нулевой частоты. Также мы рассмотрели равенство Парсеваля, которое устанавливает соотношение средней мощности сигнала во временной и частотной областях, и свойство дифференцирования и интегрирование исходного сигнала.

В следующем разделе мы проанализируем разложение непериодических сигналов по системе комплексных экспонент и получим непрерывное преобразование Фурье.

странице обсуждения статьи

Программная реализация в библиотеке DSPL

Данные для построения рисунков данного раздела были просчитаны при использовании библиотеки DSPL-2.0

Ниже приведён исходный код программы расчета данных для построения рисунков 2 и 3:


#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "dspl.h"


#define N  200000
#define T  4.0
#define A  2.0
#define M  121
#define TAU 1.0
#define DEC 50

int main(int argc, char* argv[])
{

  double*    t  = NULL;    /* время (сек)                               */
  double*    s  = NULL;    /* входной сигнал                            */
  complex_t* sc = NULL;    /* комплексный модулированный сигнал         */
  complex_t  S[M];         /* комплексный спектр периодического сигнала */
  double     Smag[M];      /* амплитудный спектр периодического сигнала */
  double     Sphi[M];      /* фазовый спектр периодического сигнала     */
  double     w[M];         /* частота (рад/c) дискретного спектра       */

  void*      hdspl;
  void*      hplot;        /* GNUPLOT handle     */
  int        k, i;
  
  /* Загружаем libdspl.dll */
  hdspl = dspl_load();
  if(!hdspl)
  {
    printf("Сannot to load libdspl!\n");
    return 0;
  }

  /* выделяем память под массивы данных */
  t = (double*)malloc(N*sizeof(double));
  s = (double*)malloc(N*sizeof(double));
  sc = (complex_t*)malloc(N*sizeof(complex_t));

  /* массив времени в который укладывается 4 периода сигнала */
  linspace(-T*2.0, T*2.0,  N, DSPL_PERIODIC, t);

  /* 4 периода повторения п-импульса */ 
  signal_pimp(t, N, A, TAU, 0.0, T, s);

  /* расчет спектра */
  fourier_series_dec(t, s, N, T, M, w, S);

  /* Расчет амплитудного и фазового спектра 
   * исходной периодической последовательности 
   * прямоугольных импульсов */
  for(k = 0; k < M; k++)
  {
    Smag[k] = ABS(S[k])/4.0;
    Sphi[k] = atan2(IM(S[k]), RE(S[k]));
  }
  /* Сохранение амплитудного и фазового спектра в файл */
  writetxt(w, Smag, M, "dat/fourier_series_prop_spectrum_amp_a.txt");
  writetxt(w, Sphi, M, "dat/fourier_series_prop_spectrum_phi_a.txt");

  /* Умножение исходного сигнала на комплексную 
   * экспоненту exp(j*10*pi*t)*/
  double w0 = 10.0*M_PI;
  for(k = 0; k < N; k++)
  {
    RE(sc[k]) = s[k] * cos(w0*t[k]);
    IM(sc[k]) = s[k] * sin(w0*t[k]);
  }

  /* разложение в ряд Фурье */
  fourier_series_dec_cmplx(t, sc, N, T, M, w, S);
  
  /* Расчет амплитудного и фазового спектра 
   * модулированной комплексной экспонентой 
   * периодической последовательности  
   * прямоугольных импульсов */
  for(k = 0; k < M; k++)
  {
    Smag[k] = ABS(S[k])/4.0;
    Sphi[k] = atan2(IM(S[k]), RE(S[k]));
  }
  
  /* Сохранение амплитудного и фазового спектра в файл */
  writetxt(w, Smag, M, "dat/fourier_series_prop_spectrum_amp_se.txt");
  writetxt(w, Sphi, M, "dat/fourier_series_prop_spectrum_phi_se.txt");

  /* децимирую массивы времени и сигнала
   *  в DEC раз для сохранения в файлы */
  decimate(t, N, DEC, t, &i);
  decimate(s, N, DEC, s, &i);
  
  /* сохраняю в файл dat/fourier_series_prop_time_a.txt */
  writetxt(t, s, i, "dat/fourier_series_prop_time_a.txt");

  /* Децимируем модулированный комплексный 
   * сигнал в DEC раз  для сохранения в файл */
  decimate_cmplx(sc, N, DEC, sc, &i);
  
  /* сохраняю реальную и мнимую часть децимированного сигнала
   * в файлы dat/fourier_series_prop_time_se_re.txt (реальная часть)
   *         dat/fourier_series_prop_time_se_im.txt (мнимая часть)
   */
  writetxt_cmplx_re(t, sc, i, "dat/fourier_series_prop_time_se_re.txt");
  writetxt_cmplx_im(t, sc, i, "dat/fourier_series_prop_time_se_im.txt");

  /* снова заполняю массив времени потому что он был продецимирован */
  linspace(-T*2.0, T*2.0,  N, DSPL_PERIODIC, t);
  
  /* 4 периода повторения п-импульса */
  signal_pimp(t, N, A, TAU, 0.0, T, s);

  /* модулирую сигнал вещественным косинусоидальным сигналом */
  for(k = 0; k < N; k++)
  {
    s[k] *= cos(w0*t[k]);
  }


  /* разложение в ряд Фурье */
  fourier_series_dec(t, s, N, T, M, w, S);
  
  /* Расчет амплитудного и фазового спектра 
   * модулированной вещественным сигналом 
   * периодической последовательности  
   * прямоугольных импульсов */
  for(k = 0; k < M; k++)
  {
    Smag[k] = ABS(S[k])/4.0;
    Sphi[k] = atan2(IM(S[k]), RE(S[k]));
  }
  
  /* Сохранение амплитудного и фазового спектра в файл */
  writetxt(w, Smag, M, "dat/fourier_series_prop_spectrum_amp_sc.txt");
  writetxt(w, Sphi, M, "dat/fourier_series_prop_spectrum_phi_sc.txt");


  /* Децимирую и сохраняю в файл dat/fourier_series_prop_time_sc.txt
   * модулированный вещественный сигнал 
   */
  decimate(t, N, DEC, t, &i);
  decimate(s, N, DEC, s, &i);
  writetxt(t, s, i, "dat/fourier_series_prop_time_sc.txt");

  
  gnuplot_create(argc, argv, 1200, 640, "img/plot.png", &hplot);
  gnuplot_cmd(hplot, "unset key");
  gnuplot_cmd(hplot, "set multiplot layout 3, 3 rowsfirst");
  gnuplot_cmd(hplot, "plot 'dat/fourier_series_prop_time_a.txt' with lines");
  gnuplot_cmd(hplot, "plot 'dat/fourier_series_prop_time_se_re.txt' with lines,\\");
  gnuplot_cmd(hplot, "     'dat/fourier_series_prop_time_se_im.txt' with lines");
  gnuplot_cmd(hplot, "plot 'dat/fourier_series_prop_time_sc.txt' with lines");
  gnuplot_cmd(hplot, "plot 'dat/fourier_series_prop_spectrum_amp_a.txt' with  impulses lt 1 ,\\");
  gnuplot_cmd(hplot, "     'dat/fourier_series_prop_spectrum_amp_a.txt' with points pt 7 ps 0.5 lt 1");
  gnuplot_cmd(hplot, "plot 'dat/fourier_series_prop_spectrum_amp_se.txt' with  impulses lt 1 ,\\");
  gnuplot_cmd(hplot, "     'dat/fourier_series_prop_spectrum_amp_se.txt' with points pt 7 ps 0.5 lt 1");
  gnuplot_cmd(hplot, "plot 'dat/fourier_series_prop_spectrum_amp_sc.txt' with  impulses lt 1 ,\\");
  gnuplot_cmd(hplot, "     'dat/fourier_series_prop_spectrum_amp_sc.txt' with points pt 7 ps 0.5 lt 1");
  gnuplot_cmd(hplot, "plot 'dat/fourier_series_prop_spectrum_phi_a.txt' with  impulses lt 1 ,\\");
  gnuplot_cmd(hplot, "     'dat/fourier_series_prop_spectrum_phi_a.txt' with points pt 7 ps 0.5 lt 1");
  gnuplot_cmd(hplot, "plot 'dat/fourier_series_prop_spectrum_phi_se.txt' with  impulses lt 1 ,\\");
  gnuplot_cmd(hplot, "     'dat/fourier_series_prop_spectrum_phi_se.txt' with points pt 7 ps 0.5 lt 1");
  gnuplot_cmd(hplot, "plot 'dat/fourier_series_prop_spectrum_phi_sc.txt' with  impulses lt 1 ,\\");
  gnuplot_cmd(hplot, "     'dat/fourier_series_prop_spectrum_phi_sc.txt' with points pt 7 ps 0.5 lt 1");
  gnuplot_close(hplot);

  /* Выгружаем libdspl.dll из памяти */
  dspl_free(hdspl);
  /* очищаем выделенную память */
  free(s);
  free(t);
  free(sc); 
  return 0;
}

Смотри также
Представление периодических сигналов рядом Фурье
Преобразование Фурье непериодических сигналов
Свойства преобразования Фурье
Спектральные плотности некоторых сигналов

Список литературы
[1] Воробьев Н.Н. Теория рядов. Москва, Наука, Главная редакция физико-математической литературы, 1979, 408 с.

[2] Bracewell R. The Fourier Transform and Its Applications McGraw-Hills, 1986, 474 c. ISBN 0-07-007-015-6

[3] Гоноровский И.С. Радиотехнические цепи и сигналы Москва, Советское радио, 1977, 608 c.

[4] Ильин, В.А., Позняк Э.Г. Основы математического анализа. Москва, Наука, 1965, 572 c.

[5] Баскаков, С.И. Радиотехнические цепи и сигналы. Москва, ЛЕНАНД, 2016, 528 c. ISBN 978-5-9710-2464-4

Последнее изменение страницы: 12.05.2022 (19:42:40)
Страница создана Latex to HTML translator ver. 5.20.11.14