Курсовые
Черчение

Теплоэнергетика

Электротехника
Карта

 

Функция перегруппировки

Функция Y = fftshift(X) перегруппировывает выходные массивы функций fft и fft2, размещая нулевую частоту в центре спектра, что иногда более удобно. Если X — вектор, то Y — вектор с циклической перестановкой правой и левой половин исходного вектора. Если X — матрица, то Y — матрица, у которой квадранты I и III меняются местами с квадрантами II и IV [ Для одно- и двумерных массивов функция fftshift(X) эквивалентна функции rot90{X.2) ]. Рассмотрим следующий пример. Вначале построим график спектральной плотности мощности (рис. 17.8) при одномерном преобразовании Фурье:

» rand('state'.0);

» WhO.001:0.512;

» x=sin(2*pi*50*t)+sin(2*pi*120*t);

» y=x+2*randn(size(t))+0.3;

» Y=fft(y);

» Pyy=Y.*conj(Y)/512:

» f=1000*(0:255)/512:

Рис. 17.8. График спектральной плотности сигнала после одномерного преобразования Фурье

Здесь мы ограничились 512 отсчетами, с тем чтобы использовать эффективны!: метод быстрого преобразования Фурье, при котором число отсчетов должно быт: 2 N , где N - целое число. Теперь воспользуемся функцией fftshift:

» Y=fftshift(Y);

» Pyy=Y.*conj(Y)/512;

» p1ot(Pyy).grid

Полученный при этом график представлен на рис. 17.9.

Рис. 17.9. График спектральной плотности того же сигнала после применения функции fftshift

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

 

Среда программирования Visual Basic

Введение

.NET и изменение парадигмы
Автоматическая сборка мусора: ликвидация утечки памяти
Visual Basic: прошлое и настоящее

  • В паутине нейронных сетей
  • Просмотр текстов примеров и m-файлов
    Версии Visual Basic
    VB как объектно-ориентированный язык
    Трудности перехода на VB .NET
    Сравнение С# с VB .NET
    Библиотека системного администратора Linux Интернет и почта

Инженерная графика

 

Сопромат