exponenta event banner

timeSpectrum

Усредненный по времени вейвлет-спектр

    Описание

    tavgp = timeSpectrum(fb,x) возвращает усредненный по времени вейвлет-спектр мощности сигнала x использование набора фильтров непрерывного вейвлет-преобразования (CWT) fb. По умолчанию tavgp получают путем усреднения по времени квадратичной по величине скалограммы по всем временам. Мощность усредненного по времени вейвлет-спектра нормализуется, чтобы равняться дисперсии x.

    tavgp = timeSpectrum(fb,cfs) возвращает усредненный по времени вейвлет-спектр для коэффициентов CWT cfs.

    Примечание

    При использовании этого синтаксиса мощность усредненного по времени вейвлет-спектра нормализуется, чтобы равняться дисперсии последнего сигнала, обработанного функцией объекта банка фильтров. wt.

    пример

    [tavgp,f] = timeSpectrum(___) возвращает частоты вейвлет-центров или периоды центра для усредненного по времени вейвлет-спектра. f - вектор столбца или массив длительности в зависимости от того, указана ли частота выборки или период выборки в банке фильтров CWT, fb.

    пример

    [___] = timeSpectrum(___,Name,Value) задает дополнительные параметры с использованием аргументов пары «имя-значение». Эти аргументы можно добавить к любому из предыдущих входных синтаксисов. Например, 'Normalization','none' определяет отсутствие нормализации усредненного по времени вейвлет-спектра.

    timeSpectrum(___) без выходных аргументов строят график усредненного по времени вейвлет-спектра мощности на текущем рисунке.

    Примеры

    свернуть все

    Загрузите набор данных NPG2006 [1]. Данные представляют собой траекторию подповерхностного поплавка, захваченного вихрем. Постройте график смещения в восточном и северном направлениях. Треугольник обозначает исходное положение.

    load npg2006
    plot(npg2006.cx)
    hold on
    grid on
    xlabel('Eastward Displacement (km)')
    ylabel('Northward Displacement (km)')
    plot(npg2006.cx(1),'^','markersize',11,'color','r',...
        'markerfacecolor',[1 0 0 ])

    Figure contains an axes. The axes contains 2 objects of type line.

    Создайте банк фильтров CWT, который можно применить к данным. Используйте вейвлет Морса по умолчанию. Период выборки данных составляет 4 часа.

    fb = cwtfilterbank('SignalLength',length(npg2006.cx),'SamplingPeriod',hours(4));

    Получают усредненные по времени спектры вейвлет-мощности и центральные периоды.

    [tavgp,centerP] = timeSpectrum(fb,npg2006.cx);
    size(tavgp)
    ans = 1×3
    
        73     1     2
    
    

    Первая страница является усредненным по времени вейвлет-спектром для положительных шкал (аналитическая часть или компонент против часовой стрелки), а вторая страница является усредненным по времени вейвлет-спектром для отрицательных шкал (антианалитическая часть или компонент по часовой стрелке). Постройте график обоих спектров.

    subplot(2,1,1)
    plot(centerP,tavgp(:,1,1))
    title('Counterclockwise Component')
    ylabel('Power')
    xlabel('Period (hrs)')
    subplot(2,1,2)
    plot(centerP,tavgp(:,1,2))
    title('Clockwise Component')
    ylabel('Power')
    xlabel('Period (hrs)')

    Figure contains 2 axes. Axes 1 with title Counterclockwise Component contains an object of type line. Axes 2 with title Clockwise Component contains an object of type line.

    Если опустить выходные аргументы и выполнить timeSpectrum(fb,npg2006.cx) в командной строке на текущем рисунке нанесены скалограммы и усредненные по времени спектры мощности. При этом поворот поплавка по часовой стрелке фиксируется на поворотной скалограмме по часовой стрелке и усредненном по времени спектре.

    Загрузить временной ряд величин солнечного магнитного поля, регистрируемых ежечасно над южным полюсом Солнца космическим аппаратом «Улисс» с 21:00 UT 4 декабря 1993 года до 12:00 UT 24 мая 1994 года. Полное описание этих данных приведено в [3] стр. 218-220. Создайте банк фильтров CWT, который можно применить к данным. Постройте график скалограммы и усредненного по времени вейвлет-спектра.

    load solarMFmagnitudes
    fb = cwtfilterbank('SignalLength',length(sm),'SamplingPeriod',hours(1));
    timeSpectrum(fb,sm)

    Figure contains 2 axes. Axes 1 with title Magnitude Scalogram contains 3 objects of type image, line, area. Axes 2 with title Time-Averaged Wavelet Spectrum contains an object of type line.

    Получение усредненного по времени вейвлет-спектра сигнала с использованием значений по умолчанию. По умолчанию timeSpectrum нормализует мощность усредненного по времени вейвлет-спектра, чтобы равняться дисперсии сигнала. Убедитесь, что сумма спектра равна дисперсии сигнала.

    tavg = timeSpectrum(fb,sm);
    [var(sm) sum(tavg)]
    ans = 1×2
    
        0.0448    0.0447
    
    

    Получить усредненный по времени вейвлет-спектр сигнала, но вместо этого нормализовать мощность как функцию плотности вероятности. Убедитесь, что сумма равна 1.

    tavg = timeSpectrum(fb,sm,'Normalization','pdf');
    sum(tavg)
    ans = 1.0000
    

    Если установить SpectrumType кому 'density', timeSpectrum нормализует взвешенный интеграл вейвлет-спектра в соответствии со значением Normalization. Спектр имитирует функцию плотности вероятности, интеграл которой, вычисленный численно, равен значению, указанному Normalization.

    Постройте график скалограммы и усредненного по времени вейвлет-спектра с типом спектра 'density' и 'pdf' нормализация.

    figure
    timeSpectrum(fb,sm,'SpectrumType','density','Normalization','pdf')

    Figure contains 2 axes. Axes 1 with title Magnitude Scalogram contains 3 objects of type image, line, area. Axes 2 with title Time-Averaged Wavelet Spectrum contains an object of type line.

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

    tavg = timeSpectrum(fb,sm,'SpectrumType','density','Normalization','pdf');

    По умолчанию банк фильтров использует аналитический вейвлет Морса (3,60). Получить константу допустимости для вейвлета и численно интегрировать вейвлет-спектр, используя трапециевидное правило. Помните, что CWT использует L1 нормализацию. Убедитесь, что интеграл равен 1.

    ga = 3;
    tbw = 60;
    
    be = tbw/ga;
    anorm = 2*exp(be/ga*(1+(log(ga)-log(be))));
    cPsi = anorm^2/(2*ga).*(1/2)^(2*(be/ga)-1)*gamma(2*be/ga);
    
    rawScales = scales(fb);
    numInt = 2/cPsi*1/length(sm)*trapz(rawScales(:),tavg./rawScales(:))
    numInt = 1.0000
    

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

    свернуть все

    Банк фильтров непрерывного вейвлет-преобразования (CWT), указанный как cwtfilterbank объект.

    Входные данные, заданные как вектор реального или комплексного значения. Входные данные x должно быть не менее четырех образцов.

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

    Коэффициенты CWT, заданные как матрица 2-D или как массив M-by-N-by-2. cfs должен быть выводом wt объектная функция банка фильтров CWT fb.

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

    Аргументы пары «имя-значение»

    Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

    Пример: timeSpectrum(fb,x,'TimeLimits',[100 500],'Normalization','none') возвращает усредненный по времени вейвлет-спектр, усредненный по временным пределам, заданным в выборках, без нормализации спектра.

    Нормализация усредненного по времени вейвлет-спектра, заданного как пара, разделенная запятыми, состоящая из 'Normalization' и одно из следующих:

    • 'var' - Нормализовать, чтобы равняться дисперсии временного ряда x. Если вы предоставляете cfs вход, timeSpectrum функция использует дисперсию последнего временного ряда, обработанного функцией объекта банка фильтров wt.

    • 'pdf' - нормализовать к 1.

    • 'none' - Нормализация не применяется.

    Тип возвращаемого вейвлет-спектра, определяемый как разделенная запятыми пара, состоящая из 'SpectrumType' и либо 'power' или 'density'. Если указано как 'power'усредненная сумма усредненного по времени вейвлет-спектра за все времена нормируется в соответствии со значением, указанным в 'Normalization'. Если указано как 'density', взвешенный интеграл вейвлет-спектра за все времена нормируется в соответствии со значением, указанным в 'Normalization'.

    Примечание

    Что касается численной реализации непрерывного вейвлет-преобразования, интеграл по шкале выполняется с использованием L1 нормализации. При L1 нормализации, если вы имеете равные амплитудные колебательные компоненты в данных в различных масштабах, они будут иметь одинаковую величину в CWT. Использование L1 нормализации обеспечивает более точное представление сигнала. Дополнительные сведения см. в разделе L1 нормы для CWT.

    Временные пределы для усреднения вейвлет-спектра, заданные в выборках. TimeLimits указывается как пара, разделенная запятыми, состоящая из 'TimeLimits' и двухэлементный вектор с недекрессирующими элементами. При указании входных данных в качестве сигнала элементы находятся между 1 и длиной x. При указании входных данных в качестве коэффициентов CWT элементы находятся в диапазоне от 1 до size(cfs,2).

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

    свернуть все

    Усредненный по времени вейвлет-спектр мощности, возвращаемый как вектор с действительным значением или массив 3-D с действительным значением. Если x вещественно-значимый, tavgp - вектор F-by-1, где F - число длин волн в центре частот или центровых периодов в банке фильтров CWT; fb. Если x является комплекснозначным, tavgp - F-by-1-by-2 массив, где первая страница является усредненным по времени вейвлет-спектром для положительных шкал (аналитическая часть или компонент против часовой стрелки), а вторая страница является усредненным по времени вейвлет-спектром для отрицательных шкал (антианалитическая часть или компонент по часовой стрелке).

    Центральные частоты или центральные периоды для усредненного по времени вейвлет-спектра, возвращаемые в виде вектора столбца или массива длительности соответственно. Если частота дискретизации указана в fb, то элементы f - центральные частоты, упорядоченные от высоких до низких. Если период выборки указан в fb, то элементы f являются центральными периодами.

    Ссылки

    [1] Лилли, J.M. и J.-C. Гаскард. «Вейвлет-риджевая диагностика изменяющихся во времени эллиптических сигналов с применением к океаническому вихрю». Нелинейные процессы в геофизике 13, № 5 (14 сентября 2006 г.): 467-83. https://doi.org/10.5194/npg-13-467-2006.

    [2] Торренс, Кристофер и Гилберт П. Компо. «Практическое руководство по вейвлет-анализу». Бюллетень Американского метеорологического общества 79, № 1 (1 января 1998 года): 61-78. https://doi.org/10.1175/1520-0477 (1998) 079 < 0061: APGTWA > 2,0 .CO; 2.

    [3] Персиваль, Дональд Б. и Эндрю Т. Уолден. Вейвлет-методы для анализа временных рядов. Кембриджская серия по статистической и вероятностной математике. Кембридж; Нью-Йорк: Cambridge University Press, 2000.

    [4] Лилли, Дж. М. и С.К. Ольхеде. «Свойства более высокого порядка аналитических вейвлетов». Транзакции IEEE по обработке сигналов 57, № 1 (январь 2009 года): 146-60. https://doi.org/10.1109/TSP.2008.2007607.

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

    Создание кода C/C + +
    Создайте код C и C++ с помощью MATLAB ® Coder™

    .

    См. также

    |

    Представлен в R2020b