exponenta event banner

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

В этом примере показано, как найти и построить график последовательности взаимной корреляции между двумя процессами скользящего среднего. Пример сравнивает выборку взаимной корреляции с теоретической взаимной корреляцией. Фильтрация входного сигнала 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';

Figure contains an axes. The axes contains 2 objects of type stem. These objects represent Sample cross-correlation, Theoretical cross-correlation.

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

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