pyulear

Авторегрессивная оценка спектральной плотности мощности — метод Юла-Уокера

Описание

pxx = pyulear(x,order) возвращает степень спектральная оценка плотности, pxx, из сигнала дискретного времени, x, найденное использование метода Юла-Уокера. Когда x вектор, он обработан как один канал. Когда x матрица, PSD вычисляется независимо для каждого столбца и хранится в соответствующем столбце pxx. pxx распределение степени на модульную частоту. Частота выражается в модулях рад/выборки. order порядок авторегрессивной модели (AR), используемой, чтобы произвести оценку PSD.

pxx = pyulear(x,order,nfft) использование nfft точки в дискретном преобразовании Фурье (DFT). Для действительного x, pxx имеет длину (nfft/2 + 1), если nfft даже, и (nfft + 1)/2, если nfft нечетно. Для x с комплексным знаком, pxx всегда имеет длину nfft. Если вы не используете nfft, или задайте его как пустой, затем pyulear использует длину ДПФ по умолчанию 256.

[pxx,w] = pyulear(___) возвращает вектор нормированных угловых частот, w, в котором оценивается PSD. w имеет модули рад/выборки. Для сигналов с действительным знаком, w охватывает интервал [0, π] когда nfft даже и [0, π), когда nfft нечетно. Для сигналов с комплексным знаком, w всегда охватывает интервал [0,2π).

пример

[pxx,f] = pyulear(___,fs) возвращает вектор частоты, f, в циклах в единицу времени. Частота дискретизации, fs, количество выборок в единицу времени. Если модуль времени является секундами, то f находится в циклах/секунда (Гц). Для сигналов с действительным знаком, f охватывает интервал [0, fs/2], когда nfft даже и [0, fs/2) когда nfft нечетно. Для сигналов с комплексным знаком, f охватывает интервал [0, fs).

[pxx,w] = pyulear(x,order,w) возвращает двухсторонний AR оценки PSD на нормированных частотах, заданных в векторе, w. Вектор, w, должен содержать по крайней мере два элемента, потому что в противном случае функция интерпретирует его как nfft.

[pxx,f] = pyulear(x,order,f,fs) возвращает двухсторонний AR оценки PSD на частотах, заданных в векторе, f. Вектор, f, должен содержать по крайней мере два элемента, потому что в противном случае функция интерпретирует его как nfft. Частоты в f находятся в циклах в единицу времени. Частота дискретизации, fs, количество выборок в единицу времени. Если модуль времени является секундами, то f находится в циклах/секунда (Гц).

[___] = pyulear(x,order,___,freqrange) возвращает AR оценка PSD по частотному диапазону, заданному freqrange. Допустимые опции для freqrange : 'onesided', 'twosided', или 'centered'.

[___,pxxc] = pyulear(___,'ConfidenceLevel',probability) возвращает probability × 100% доверительных интервалов для PSD оценивают в pxxc.

пример

pyulear(___) без выходных аргументов строит AR оценка PSD в дБ на модульную частоту в окне текущей фигуры.

Примеры

свернуть все

Создайте реализацию AR (4) широкий смысл стационарный вероятностный процесс. Оцените PSD использование метода Юла-Уокера. Сравните оценку PSD на основе одной реализации к истинному PSD вероятностного процесса.

Создайте AR (4) системная функция. Получите частотную характеристику и постройте PSD системы.

A = [1 -2.7607 3.8106 -2.6535 0.9238];
[H,F] = freqz(1,A,[],1);
plot(F,20*log10(abs(H)))

xlabel('Frequency (Hz)')
ylabel('PSD (dB/Hz)')

Создайте реализацию AR (4) вероятностный процесс. Установите генератор случайных чисел на настройки по умолчанию для восстанавливаемых результатов. Реализация является 1 000 выборок в длине. Примите частоту дискретизации 1 Гц. Используйте pyulear оценить PSD для процесса 4-го порядка. Сравните оценку PSD с истинным PSD.

rng default

x = randn(1000,1);
y = filter(1,A,x);
[Pxx,F] = pyulear(y,4,1024,1);

hold on
plot(F,10*log10(Pxx))
legend('True Power Spectral Density','pyulear PSD Estimate')

Создайте многоканальный сигнал, состоящий из трех синусоид в дополнении N(0,1) белый Гауссов шум. Частоты синусоид составляют 100 Гц, 200 Гц и 300 Гц. Частота дискретизации составляет 1 кГц, и сигнал имеет длительность 1 с.

Fs = 1000;

t = 0:1/Fs:1-1/Fs;

f = [100;200;300];

x = cos(2*pi*f*t)'+randn(length(t),3);

Оцените PSD сигнала с помощью метода Юла-Уокера с 12-м порядком авторегрессивная модель. Используйте длину ДПФ по умолчанию. Постройте оценку.

morder = 12;

pyulear(x,morder,[],Fs)

Входные параметры

свернуть все

Входной сигнал, заданный как строка или вектор-столбец, или как матрица. Если x матрица, затем ее столбцы обработаны как независимые каналы.

Пример: cos(pi/4*(0:159))+randn(1,160) одноканальный сигнал вектора-строки.

Пример: cos(pi./[4;2]*(0:159))'+randn(160,2) двухканальный сигнал.

Типы данных: single | double
Поддержка комплексного числа: Да

Порядок авторегрессивной модели, заданной как положительное целое число.

Типы данных: double

Количество точек ДПФ, заданных как положительное целое число. Для входного сигнала с действительным знаком, x, оценка PSD, pxx имеет длину (nfft/2+1) если nfft даже, и (nfft+1)/2, если nfft нечетно. Для входного сигнала с комплексным знаком, x, оценка PSD всегда имеет длину nfft. Если nfft задан как пустой, nfft по умолчанию используется.

Типы данных: single | double

Частота дискретизации, заданная как положительная скалярная величина. Частота дискретизации является количеством выборок в единицу времени. Если модуль времени является секундами, то частота дискретизации имеет модули Гц.

Нормированные частоты, заданные как строка или вектор-столбец по крайней мере с двумя элементами. Нормированные частоты находятся в рад/выборке.

Пример: w = [pi/4 pi/2]

Типы данных: double

Частоты, заданные как строка или вектор-столбец по крайней мере с двумя элементами. Частоты находятся в циклах в единицу времени. Единица времени задана частотой дискретизации, fs. Если fs имеет модули выборок/секунда, затем f имеет модули Гц.

Пример: fs = 1000; f = [100 200]

Типы данных: double

Частотный диапазон для оценки PSD, заданной как та 'onesided', 'twosided', или 'centered'. Значением по умолчанию является 'onesided' для сигналов с действительным знаком и 'twosided' для сигналов с комплексным знаком. Частотные диапазоны, соответствующие каждой опции,

  • 'onesided' — возвращает одностороннюю оценку PSD входного сигнала с действительным знаком, x. Если nfft даже, pxx имеет длину nfft/2 + 1 и вычисляется на интервале [0, π] рад/выборка. Если nfft нечетно, длина pxx (nfft + 1)/2 и интервал [0, π), рад/выборка. Когда fs опционально задан, соответствующие интервалы [0, fs/2] циклы/единица времени и [0, fs/2) циклы/единица времени для четной и нечетной длины nfft соответственно.

  • 'twosided' — возвращает двухстороннюю оценку PSD или для входа с комплексным знаком или для с действительным знаком, x. В этом случае, pxx имеет длину nfft и вычисляется на интервале [0,2π), рад/выборка. Когда fs опционально задан, интервал [0, fs) циклы/единица времени.

  • 'centered' — возвращает двухстороннюю оценку PSD в центре или для входа с комплексным знаком или для с действительным знаком, x. В этом случае, pxx имеет длину nfft и вычисляется на интервале (–π, π] рад/выборка для даже длины nfft и (–π, π) рад/выборка для нечетной длины nfft. Когда fs опционально задан, соответствующие интервалы (–fs/2, fs/2] циклы/единица времени и (–fs/2, fs/2) циклы/единица времени для четной и нечетной длины nfft соответственно.

Вероятность покрытия для истинного PSD, заданного как скаляр в области значений (0,1). Выход, pxxc, содержит нижние и верхние границы probability × 100%-я оценка интервала для истинного PSD.

Выходные аргументы

свернуть все

Оценка PSD, возвращенная как неотрицательный вектор-столбец с действительным знаком или матрица. Каждый столбец pxx оценка PSD соответствующего столбца x. Модули оценки PSD находятся в единицах величины в квадрате данных временных рядов на модульную частоту. Например, если входные данные находятся в вольтах, оценка PSD находится в модулях вольт в квадрате на модульную частоту. Какое-то время ряд в вольтах, если вы принимаете сопротивление 1 Ω и задаете частоту дискретизации в герц, оценка PSD, находится в ваттах на герц.

Типы данных: single | double

Нормированные частоты, возвращенные как вектор-столбец с действительным знаком. Если pxx односторонняя оценка PSD, w охватывает интервал [0, π] если nfft даже и [0, π), если nfft нечетно. Если pxx двухсторонняя оценка PSD, w охватывает интервал [0,2π). Для сосредоточенной DC оценки PSD, w охватывает интервал (–π, π] для даже nfft и (–π, π) для нечетного nfft.

Типы данных: double

Циклические частоты, возвращенные как вектор-столбец с действительным знаком. Для односторонней оценки PSD, f охватывает интервал [0, fs/2], когда nfft даже и [0, fs/2) когда nfft нечетно. Для двухсторонней оценки PSD, f охватывает интервал [0, fs). Для сосредоточенной DC оценки PSD, f охватывает интервал (–fs/2, fs/2] циклы/единица времени для даже длины nfft и (–fs/2, fs/2) циклы/единица времени для нечетной длины nfft.

Типы данных: double | single

Доверительные границы, возвращенные как матрица с элементами с действительным знаком. Размер строки матрицы равен длине оценки PSD, pxx. pxxc имеет вдвое больше столбцов как pxx. Нечетные столбцы содержат нижние границы доверительных интервалов, и четные столбцы содержат верхние границы. Таким образом, pxxc(m,2*n-1) более низкая доверительная граница и pxxc(m,2*n) верхняя доверительная граница, соответствующая оценке pxx(m,n). Вероятность покрытия доверительных интервалов определяется значением probability входной параметр.

Типы данных: single | double

Смотрите также

| |

Представлено до R2006a