1. Функція fftshift.
2. Вікна
3. Функції непараметричного спектрального аналізу
4. Розрахунок періодограмми
5. Функції авторегресійного спектрального аналізу
12.1. Короткі теоретичні відомості та методичні вказівки
Для виконання спектрального аналізу в MATLAB є велика кількість функцій, що реалізують різноманітні методи - від звичайного ДПФ до MUSIC.
12.2. Функція fftshift
Елементи вектора, що повертається функцією fft, відповідають частотам, рівномірно розподіленим в діапазоні від нуля і майже до частоти дискретизації. Перший елемент, таким чином, відповідає нульовій частоті, а останній - частоті, меншої частоти дискретизації на fд/N, де N - розмір вхідного і вихідного векторів. При виведенні спектральних графіків бажано, щоб нульова частота перебувала в центрі, а діапазон відображуваних частот простягався від -fд /2 до fд /2. Зробити це дозволяє функція fftshift, яка міняє місцями половини переданого їй вектора у = fftshift(x).
Продемонструємо дію функції fftshift на прикладі двох коротких векторів парній і непарній довжини:
function Example12_1
fftshift([1 2 3 4])
ans =
3 4 1 2
fftshift([1 2 3 4 5])
ans =
4 5 1 2 3
У випадку парної довжини відбувається перестановка половин вхідного вектора (при цьому перший елемент результуючого вектора відповідає частоті Найквіста). У випадку непарної довжини перестановка виконується так, щоб перший елемент, відповідний нульовій частоті, став середнім елементом результуючого вектора. Функцію fftshift можна використовувати і в інших випадках, коли потрібно поміняти місцями половини вектора.