Проверка выполнения теоремы Парсеваля при помощи Matlab

Под теоремой Парсеваля понимают: сумма квадрата функции равна сумме квадрата преобразования.

Т.е.

В дискретном виде теорему записывают таким образом:

Зададим количество отсчётов:

N = 100; 

 Заполним случайными числами:

x = randn(1,N); 

 Посчитаем сумму квадратов:

Et = norm(x)^2; % или так: Et = sum(x.^2);

 Теперь осуществим преобразование Фурье и посчитаем сумму квадратов полученных отсчётов:

X = fftn(x);
Ew = 1/N * norm(X)^2; % или так: Ew = 1/N * sum(X.^2);

 Теперь можно сравнить результаты:

fprintf('Энергия сигнала во временной области: %f \n', Et);
fprintf('Энергия сигнала в частотной области: %f \n', Ew);

 У меня всё получилось ;)

Энергия сигнала во временной области: 135.280954 
Энергия сигнала в частотной области: 135.280954 

 Можете осуществить обратное преобразование Фурье и проверить теорему ещё раз.

Просмотров:   2982

Комментарии

Добавить комментарий

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.
CAPTCHA
Введи эти символы. Ато роботы одолели!