armcov

Параметры авторегрессивной модели все-полюса — модифицированный метод ковариации

Описание

пример

a = armcov(x,p) возвращает нормированное авторегрессивное (AR) параметры, соответствующие модели порядка p для входного массива xX принят, чтобы быть выходом системы AR, управляемой белым шумом. Этот метод минимизирует прямые и обратные ошибки предсказания в смысле наименьших квадратов

[a,e] = armcov(x,p) также возвращает предполагаемую дисперсию, e, из белого шумового входа.

Примеры

свернуть все

Используйте вектор с полиномиальными коэффициентами, чтобы сгенерировать AR (4) процесс путем фильтрации 1 024 выборок белого шума. Сбросьте генератор случайных чисел для восстанавливаемых результатов. Используйте модифицированный метод ковариации, чтобы оценить коэффициенты.

rng default

A = [1 -2.7607 3.8106 -2.6535 0.9238];

y = filter(1,A,0.2*randn(1024,1));

arcoeffs = armcov(y,4)
arcoeffs = 1×5

    1.0000   -2.7741    3.8404   -2.6841    0.9360

Сгенерируйте 50 реализации процесса, изменив каждый раз отклонение входного шума. Сравните модифицированная ковариация оценила отклонения к фактическим значениям.

nrealiz = 50;

noisestdz = rand(1,nrealiz)+0.5;

randnoise = randn(1024,nrealiz);
noisevar = zeros(1,nrealiz);

for k = 1:nrealiz
    y = filter(1,A,noisestdz(k) * randnoise(:,k));
    [arcoeffs,noisevar(k)] = armcov(y,4);
end

plot(noisestdz.^2,noisevar,'*')
title('Noise Variance')
xlabel('Input')
ylabel('Estimated')

Figure contains an axes. The axes with title Noise Variance contains an object of type line.

Повторите процедуру с помощью многоканального синтаксиса функции.

Y = filter(1,A,noisestdz.*randnoise);

[coeffs,variances] = armcov(Y,4);

hold on
plot(noisestdz.^2,variances,'o')
hold off
legend('Single channel loop','Multichannel','Location',"best")

Figure contains an axes. The axes with title Noise Variance contains 2 objects of type line. These objects represent Single channel loop, Multichannel.

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

свернуть все

Входной массив в виде вектора или матрицы.

Пример: filter(1,[1 -0.75 0.5],0.2*randn(1024,1)) задает авторегрессивный процесс второго порядка.

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

Порядок модели в виде положительного целочисленного скаляра. p должен быть меньше числа элементов или строк x.

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

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

свернуть все

Нормированные авторегрессивные параметры, возвращенные как вектор или матрица. Если x матрица, затем каждая строка a соответствует столбцу xA имеет p + 1 столбец и содержит системные параметры AR, A (z), в убывающих степенях z.

Белая шумовая входная дисперсия, возвращенная как скалярный или вектор-строка. Если x матрица, затем каждый элемент e соответствует столбцу x.

Больше о

свернуть все

AR (p) модель

В модели AR порядка p текущая производительность является линейной комбинацией прошлого p выходные параметры плюс белый шумовой вход. Веса на p мимо выходных параметров минимизируют среднеквадратическую ошибку предсказания авторегрессии.

Позвольте y (n) быть широким смыслом стационарный вероятностный процесс, полученный путем фильтрации белого шума отклонения e с системной функцией A (z). Если Py (ejω) является степенью спектральная плотность y (n), то

Py(ejω)=e|A(ejω)|2=e|1+k=1pa(k)ejωk|2.

Поскольку модифицированный метод ковариации характеризует входные данные с помощью модели все-полюса, верный выбор порядка модели, p, важен.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

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

| | | | |

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