scaleSpectrum

Усредненный шкалой спектр вейвлета

    Описание

    пример

    savgp = scaleSpectrum(fb,x) возвращает усредненный шкалой спектр мощности вейвлета x сигнала использование набора фильтров CWT fb. По умолчанию, savgp получен усреднением шкалы scalogram в квадрате величиной по всем шкалам.

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

    Примечание

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

    [savgp,scidx] = scaleSpectrum(___) также возвращает индексы шкалы, по которым вычисляется усредненный шкалой спектр вейвлета. Если вы не задаете FrequencyLimits или PeriodLimits, scidx вектор от 1 до количества шкал.

    пример

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

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

    Примеры

    свернуть все

    Загрузите звуковой файл, содержащий фрагмент "Хора Аллилуйи Генделя", произведенного на уровне 8 192 Гц.

    load handel         % To hear, type soundsc(y,Fs)

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

    fb = cwtfilterbank('SignalLength',length(y),'SamplingFrequency',Fs);

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

    scaleSpectrum(fb,y)

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

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

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

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

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

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

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

    savg = scaleSpectrum(fb,sm,'Normalization','pdf');
    sum(savg)
    ans = 1.0000
    

    Если вы устанавливаете SpectrumType к 'density', scaleSpectrum нормирует взвешенный интеграл спектра вейвлета согласно значению Normalization. В этом случае спектр подражает функции плотности вероятности, интеграл которой, численно оцененный, равняется значению, заданному Normalization.

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

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

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

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

    savg = scaleSpectrum(fb,sm,'SpectrumType','density','Normalization','pdf');

    По умолчанию набор фильтров использует аналитического Морзе (3,60) вейвлет. Получите допустимость, постоянную для вейвлета, и численно интегрируйте спектр вейвлета с помощью метода трапеций. Подтвердите, что интеграл равняется 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);
    
    numInt = 2/cPsi*1/length(sm)*trapz(1:length(savg),savg)
    numInt = 1
    

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

    свернуть все

    Набор фильтров непрерывного вейвлета преобразовывает (CWT) в виде cwtfilterbank объект.

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

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

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

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

    Аргументы name-value

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

    Пример: scaleSpectrum(fb,x,'FrequencyLimits',[0.2 0.4]) возвращается усредненный шкалой спектр вейвлета, усредненный по частоте, ограничивает [0.2 0.4].

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

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

    • 'pdf' — Нормируйте, чтобы равняться 1.

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

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

    Частота ограничивает, по которому scalogram в квадрате величиной усреднен в виде разделенной запятой пары, состоящей из 'FrequencyLimits' и двухэлементный вектор с неуменьшающимися элементами. FrequencyLimits значения должны находиться между самыми низкими и самыми высокими центральными частотами, возвращенными centerFrequencies объектная функция fb. Основа 2 логарифма отношения максимальной частоты к минимальной частоте должны быть больше или быть равны 1/NV, где NV является значением 'VoicesPerOctave'свойство набора фильтров fb.

    Если область заданных пределов выходит за пределы пределов частоты набора фильтров fb, scaleSpectrum обрезает расчеты до в диапазоне, указанном centerFrequencies(fb). FrequencyLimits не может быть полностью за пределами области значений Найквиста.

    Период ограничивает, по которому scalogram в квадрате величиной усреднен в виде разделенной запятой пары, состоящей из 'PeriodsLimits' и двухэлементный вектор с не уменьшающейся длительностью. Элементы PeriodLimits согласитесь в типе и формате с 'SamplingPeriod'свойство набора фильтров fb. SamplingPeriod значения должны находиться между самыми низкими и самыми высокими центральными периодами, возвращенными centerPeriods объектная функция fb. Основа 2 логарифма отношения минимального периода к максимальному периоду должны быть меньше чем или равны-1/NV, где NV является значением 'VoicesPerOctave'свойство набора фильтров fb.

    Если область заданных пределов выходит за пределы пределов периода набора фильтров fb, scaleSpectrum обрезает расчеты до в диапазоне, указанном centerPeriods(fb). SamplingPeriod не может быть полностью вне области значений Найквиста [2*Ts, N *Ts], где Ts 'SamplingPeriodN является длиной сигнала.

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

    свернуть все

    Усредненный шкалой спектр мощности вейвлета, возвращенный как векторный или трехмерный массив с действительным знаком с действительным знаком. Если x с действительным знаком, savgp 1 N вектором, где N является длиной x. Если x с комплексным знаком, savgp 1 N 2 массивами, где первая страница является усредненным шкалой спектром вейвлета для положительных шкал (аналитическая часть или против часовой стрелки компонент), и вторая страница является усредненным шкалой спектром вейвлета для отрицательных шкал (антианалитическая часть или по часовой стрелке компонент).

    Масштабируйте индексы, по которым средний шкалой спектр вейвлета вычислен, возвращен как вектор. Если вы не задаете 'FrequencyLimits'или 'PeriodLimits', scidx вектор от 1 до количества шкал.

    Ссылки

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

    [2] Персиваль, Дональд Б. и Эндрю Т. Уолден. Методы вейвлета для анализа временных рядов. Кембриджский ряд в статистической и вероятностной математике. Кембридж  ; Нью-Йорк: Издательство Кембриджского университета, 2000.

    [3] Лилли, J.M., и Южная Каролина Olhede. “Свойства высшего порядка Аналитических Вейвлетов”. Транзакции IEEE на Обработке сигналов 57, № 1 (январь 2009): 146–60. https://doi.org/10.1109/TSP.2008.2007607.

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

    Смотрите также

    |

    Введенный в R2020b