armcov

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

Описание

пример

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

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

Примеры

свернуть все

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

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 соответствует столбцу x. a имеет p + 1 столбец и содержит системные параметры AR, A (z), в нисходящих степенях z.

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

Подробнее о

свернуть все

Модель AR (p)

В AR- модели порядка <reservedrangesplaceholder2>, выход тока является линейной комбинацией выходов прошлого p плюс вход белого шума. Веса на p прошлых выходах минимизируют среднюю квадратную ошибку предсказания авторегрессии.

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

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

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

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

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

.

См. также

| | | | |

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