modwtxcorr

Вейвлет оценки перекрестной корреляционной последовательности с использованием максимального перекрытия дискретного вейвлета преобразования (MODWT)

Описание

пример

xcseq = modwtxcorr(w1,w2) возвращает вейвлеты оценки перекрестной корреляционной последовательности для максимального перекрытия дискретных преобразований вейвлета (MODWT), заданные в w1 и w2. xcseq - массив ячеек из векторов, где элементы в каждой камере соответствуют оценкам перекрестной корреляции. Если на конечном уровне достаточно неграничных коэффициентов, modwtxcorr возвращает оценку перекрестной корреляционной последовательности масштабирования в последней камере xcseq.

пример

xcseq = modwtxcorr(w1,w2,wav) использует вейвлет- wav для определения количества краевых коэффициентов по уровням.

пример

[xcseq,xcseqci] = modwtxcorr(___) возвращается в xcseqci 95% доверительных интервалов для оценок перекрестной корреляционной последовательности в xcseq, с использованием любых аргументов из предыдущих синтаксисов.

пример

[xcseq,xcseqci] = modwtxcorr(w1,w2,wav,conflevel) использует conflevel для вероятности покрытия интервала доверия. conflevel является действительным скаляром строго больше 0 и меньше 1. Если conflevel не задан или указан как пустой, вероятность покрытия по умолчанию равна 0,95.

пример

[xcseq,xcseqci,lags] = modwtxcorr(___) возвращает лаги для вейвлета оценок перекрестной корреляционной последовательности в массиве ячеек с векторами-столбцами.

пример

[___] = modwtxcorr(___,'reflection') уменьшает количество вейвлет и масштабирующих коэффициентов в каждой шкале вдвое перед вычислением последовательностей перекрестной корреляции. Определение 'reflection' опция в modwtxcorr эквивалентно первому получению MODWT w1 w2 с 'periodic' обработка границ и затем вычисление вейвлета оценок перекрестной корреляционной последовательности. Используйте эту опцию только при получении MODWT w1 и w2 использование 'reflection' граничное условие. Необходимо ввести весь вектор символов 'reflection'. Если вы добавили вейвлет с именем 'reflection' используя диспетчер вейвлет, необходимо переименовать этот вейвлет перед использованием этой опции. 'reflection' может быть помещен в любую позицию в списке входного параметра после преобразования входа w1 w2.

Примеры

свернуть все

Получите данные MODWT индекса южного колебания и давления на островах Трук. Период дискретизации - один день.

load soi
load truk
wsoi = modwt(soi);
wtruk = modwt(truk);

Вычислите вейвлет-кросс-корреляционные последовательности. Исследуйте перекрестную корреляционную последовательность уровня пять, соответствующую шкале 32-64 дня. Определите индекс, соответствующий задержке в нуле и постройте график до 240 лагов.

xcseq = modwtxcorr(wsoi,wtruk);
zerolag = floor(numel(xcseq{5})/2)+1;
plot(xcseq{5}(zerolag:zerolag+240),'linewidth',2)
set(gca,'xlim',[1 240]);
title({'Cross-Correlation Sequence Level 5'; 'Scale: 32-64 Days'});
hold off

Figure contains an axes. The axes with title Cross-Correlation Sequence Level 5 Scale: 32-64 Days contains an object of type line.

Получите данные MODWT индекса южной осцилляции и давления на островах Трук с помощью вейвлет Фехера-Коровкина с 8 коэффициентами. Период дискретизации данных составляет один день.

load soi
load truk
wsoi = modwt(soi,'fk8');
wtruk = modwt(truk,'fk8');

Вычислите вейвлет-кросс-корреляционные последовательности. Исследуйте перекрестную корреляционную последовательность уровня пять, соответствующую шкале 32-64 дня. Определите индекс, соответствующий задержке в нуле и постройте график до 240 лагов.

xcseq = modwtxcorr(wsoi,wtruk,'fk8');
zerolag = floor(numel(xcseq{5})/2)+1;
plot(xcseq{5}(zerolag:zerolag+240),'linewidth',2)
set(gca,'xlim',[1 240]);
title({'Cross-Correlation Sequence Level 5'; 'Scale: 32-64 Days'});
hold off

Figure contains an axes. The axes with title Cross-Correlation Sequence Level 5 Scale: 32-64 Days contains an object of type line.

Постройте график поперечной корреляции вейвлет с 95% доверительными интервалами в шкале 4 для двух 5-Hz сигналов синусоиды с аддитивным шумом.

dt = 0.01;
t = 0:dt:6;
x = cos(2*pi*5*t)+1.5*randn(size(t));
y = cos(2*pi*5*t-pi)+2*randn(size(t));
wx = modwt(x,'fk14',5);
wy = modwt(y,'fk14',5);
modwtcorr(wx,wy,'fk14')
j = 4;
[xcseq,xcseqci] = modwtxcorr(wx,wy,'fk14');
zerolag = floor(numel(xcseq{j})/2)+1;
lagidx = zerolag-30:zerolag+30;
plot(xcseq{j}(lagidx));
hold on;
grid
plot(xcseqci{j}(lagidx,:),'r--');
xlabel('Samples');
title('Scale: 0.32-0.16 Seconds');

Сравните интервалы доверия 90 и 95 (по умолчанию) для поперечной корреляции вейвлета на четвертом уровне.

Получите MODWT для двух шумных синусоид с помощью Fejér-Korovkin с 14 коэффициентами и укажите уровень для использования.

dt = 0.01;
t = 0:dt:6;
x = cos(2*pi*5*t)+1.5*randn(size(t));
y = cos(2*pi*5*t-pi)+2*randn(size(t));
wx = modwt(x,'fk14',4);
wy = modwt(y,'fk14',4);
lev = 4;

[xcseq,xcseqci] = modwtxcorr(wx,wy,'fk14');
[xcseq90,xcseqci90] = modwtxcorr(wx,wy,'fk14',0.90);
 
zerolag = floor(numel(xcseq{lev})/2)+1;
zerolag90 = floor(numel(xcseq90{lev})/2)+1;
 
lagidx = zerolag-30:zerolag+30;
lagidx90 = zerolag90-30:zerolag90+30;
 
plot(xcseqci{lev}(lagidx,:),'--r');
hold on
plot(xcseqci90{lev}(lagidx90,:),'--b');
plot(xcseq{lev}(lagidx),'-k','LineWidth',1);
grid
title('.90 and .95 Confidence Levels')

Figure contains an axes. The axes with title .90 and .95 Confidence Levels contains 5 objects of type line.

Заметьте, что ширина доверительного интервала 95 (красным цветом) больше ширины доверительного интервала 90 (синим цветом).

Постройте график оценки последовательности перекрестных корреляций для индекса колебаний на юге и данных о давлении на острове Трук. Оценка 95% доверительных интервалов для шкалы 25 дней.

load soi
load truk
wsoi = modwt(soi);
wtruk = modwt(truk);
[xcseq,xcseqci,lags] = modwtxcorr(wsoi,wtruk);
plot(lags{5},xcseq{5},'linewidth',2)
hold on
plot(lags{5},xcseqci{5},'r--')
set(gca,'xlim',[-120 120]);
xlabel('Lag (Days)'); 
grid 
title({'Cross-Correlation Sequence Level 5'; 'Scale: 32-64 Days'});
hold off

Figure contains an axes. The axes with title Cross-Correlation Sequence Level 5 Scale: 32-64 Days contains 3 objects of type line.

Получите данные MODWT за 36 лет индекса южной осцилляции и давления на островах Трук как с периодическими, так и с граничными условиями отражения. The modwt функция со 'reflection' опция расширяет входной сигнал симметрично на правом контуре. Затем входной сигнал в два раза превышает его исходную длину. MODWTXCORR с обработкой контуров отражения уменьшает количество вейвлет и коэффициентов масштабирования в каждой половине перед вычислением последовательностей перекрестной корреляции. Размер последовательностей перекрестной корреляции аналогичен получению MODWT с периодическим граничным условием по умолчанию.

load soi
load truk

Получите MODWT с периодическим граничным условием по умолчанию.

wsoi_default = modwt(soi); 
wtruk_default = modwt(truk);

Получите MODWT с контуром отражения.

wsoi_reflect = modwt(soi,'reflection');
wtruk_reflect = modwt(truk,'reflection');

Получите последовательности перекрестной корреляции.

xcseq_default = modwtxcorr(wsoi_default,wtruk_default);
xcseq_reflect = modwtxcorr(wsoi_reflect,wtruk_reflect,'reflection');

Сравните количество элементов в массиве ячеек выхода для обоих граничных условий.

cellfun(@numel,xcseq_reflect)
ans = 10×1

       25981
       25953
       25897
       25785
       25561
       25113
       24217
       22425
       18841
       11673

cellfun(@numel,xcseq_default)
ans = 10×1

       25981
       25953
       25897
       25785
       25561
       25113
       24217
       22425
       18841
       11673

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

свернуть все

MODWT преобразование сигнала 1, заданное как матрица двойных чисел. Область входа w1 должен быть того же размера, что и w2 и должны быть получены с тем же вейвлет. По умолчанию, modwtxcorr принимает, что вы получили MODWT, используя симлетный вейвлет с четырьмя моментами исчезновения, 'sym4').

MODWT преобразование сигнала 2, заданное как матрица двойных чисел. Область входа w2 должен быть того же размера, что и w1 и должны быть получены с тем же вейвлет. По умолчанию, modwtxcorr принимает, что вы получили MODWT с помощью симлеты вейвлет с четырьмя моментами исчезновения ('sym4').

Вейвлет, заданный как вектор символов или строковый скаляр, указывающий на действительный вейвлет, или как положительное четное целое число, указывающее длину вейвлет-фильтров и масштабирующих фильтров. Если wav не задан или задан как пустой, [], wav по умолчанию является 'sym4'.

Доверие уровня, заданный как положительная скалярная величина менее 1. conflevel определяет вероятность покрытия интервалов доверия в xcseqci. Если не задано или указано как пустое, [], conflevel значение по умолчанию 0,95.

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

свернуть все

Последовательности перекрестной корреляции по шкале, возвращенные как массив ячеек векторов. Векторы имеют размер 2 NJ -by-1, где NJ - количество неграничных коэффициентов по уровню (шкале). Этот уровень является минимумом size(w1,1) и floor(log2(N/(L-1)+1)) где N - длина данных, а L - длина фильтра. Если на конечном уровне достаточно неграничных коэффициентов, modwtxcorr возвращает оценку перекрестной корреляционной последовательности масштабирования в последней камере xcseq.

Доверительные интервалы по шкале, возвращенные как массив ячеек матриц. Размер каждой матрицы (2 NJ -1) -by-2, где NJ - количество неграничных коэффициентов по уровню ( шкале).

  • Для значения по умолчанию 95, первый столбец ith элемент xcseqci содержит нижнюю 95% доверительную границу для коэффициента перекрестной корреляции при каждой задержке.

  • Для значения по умолчанию 95 во втором столбце содержится верхняя 95% доверительная граница.

Доверительные границы вычисляются с помощью Z-преобразования Фишера. Стандартная ошибка статистики Z Фишера является квадратным корнем N -3. В этом случае N является эквивалентным количеством коэффициентов в критически дискретном вейвлет (DWT), floor(size(w1,2)/2^LEV), где LEV - уровень вейвлет. modwtcorr возвращает NaNs для доверительных границ, когда N-3 меньше или равно нулю.

Лаги для последовательностей перекрестной корреляции, возвращенные как массив ячеек векторов. lags - массив ячеек с векторами-столбцами же длиной, что и xcseq. Элементы в каждой камере xcseq соответствуют оценкам перекрестной корреляционной последовательности при задержках от - (NJ -1) до (NJ -1), где NJ - количество небграничных коэффициентов на уровне J. 0th элемент задержки расположен на индексном этаже ((2 * NJ-1 )/2 ) + 1.

Ссылки

[1] Персиваль, Д. Б., и А. Т. Уолден. Вейвлет для анализа временных рядов. Кембридж, Великобритания: Cambridge University Press, 2000.

[2] Whitcher, B., P. Guttorp, and D. B. Percival. «Вейвлет ковариации с применением к атмосферным временным рядам». Журнал геофизических исследований, том 105, 2000, стр. 14941-14962.

Введенный в R2015b