Взаимная корреляция двух процессов скользящего среднего значения

Этот пример показывает, как найти и построить последовательность взаимной корреляции между двумя процессами скользящего среднего значения. Пример сравнивает демонстрационную взаимную корреляцию с теоретической взаимной корреляцией. Отфильтруйте N(0,1) белый шумовой вход с двумя различными фильтрами скользящего среднего значения. Постройте демонстрационные и теоретические последовательности взаимной корреляции.

Создайте N(0,1) белая шумовая последовательность. Установите генератор случайных чисел на настройки по умолчанию для восстанавливаемых результатов. Создайте два фильтра скользящего среднего значения. Один фильтр имеет импульсный ответ δ(n)+δ(n-1). Другой фильтр имеет импульсный ответ δ(n)-δ(n-1).

rng default

w = randn(100,1);
x = filter([1 1],1,w);
y = filter([1 -1],1,w);

Получите демонстрационную последовательность взаимной корреляции, чтобы отстать 20. Постройте демонстрационную взаимную корреляцию наряду с теоретической взаимной корреляцией.

[xc,lags] = xcorr(x,y,20,'biased');

Xc = zeros(size(xc));
Xc(20) = -1;
Xc(22) = 1;

stem(lags,xc,'filled')
hold on
stem(lags,Xc,'.','linewidth',2)

q = legend('Sample cross-correlation','Theoretical cross-correlation');
q.Location = 'NorthWest';
q.FontSize = 9;
q.Box = 'off';

Теоретическая взаимная корреляция -1 в задержке -1, 1 в задержке 1, и нуль во всех других задержках. Демонстрационная последовательность взаимной корреляции аппроксимирует теоретическую взаимную корреляцию.

Как ожидалось нет совершенного соглашения между теоретической взаимной корреляцией и демонстрационной взаимной корреляцией. Демонстрационная взаимная корреляция действительно точно представляет и знак и значение теоретических значений последовательности взаимной корреляции в задержке -1 и задержка 1.

Для просмотра документации необходимо авторизоваться на сайте