exponenta event banner

bandpower

Описание

пример

p = bandpower(x) возвращает среднюю мощность входного сигнала, x. Если x является матрицей, то bandpower вычисляет среднюю мощность в каждом столбце независимо.

пример

p = bandpower(x,fs,freqrange) возвращает среднюю мощность в диапазоне частот, freqrange, задается как двухэлементный вектор. Необходимо ввести частоту выборки, fs, для возврата мощности в заданном диапазоне частот. bandpower использует измененную периодограмму для определения средней мощности в freqrange.

пример

p = bandpower(pxx,f,'psd') возвращает среднюю мощность, вычисленную путем интегрирования оценки спектральной плотности мощности (PSD), pxx. Интеграл аппроксимируется методом прямоугольника. Вход, f, является вектором частот, соответствующих оценкам PSD в pxx. 'psd' параметр указывает, что входные данные являются оценкой PSD, а не данными временных рядов.

пример

p = bandpower(pxx,f,freqrange,'psd') возвращает среднюю мощность, содержащуюся в интервале частот, freqrange. Если частоты в freqrange не соответствуют значениям в f, используются самые близкие значения. Средняя мощность вычисляется путем интегрирования оценки спектральной плотности мощности (PSD). pxx. Интеграл аппроксимируется методом прямоугольника. 'psd' параметр указывает, что входные данные являются оценкой PSD, а не данными временных рядов.

Примеры

свернуть все

Создайте сигнал, состоящий из синусоидальной волны 100 Гц в аддитивном N (0,1) белом гауссовом шуме. Частота дискретизации составляет 1 кГц. Определите среднюю мощность и сравните ее с ℓ2 нормой.

t = 0:0.001:1-0.001;
x = cos(2*pi*100*t)+randn(size(t));

p = bandpower(x)
p = 1.5264
l2norm = norm(x,2)^2/numel(x)
l2norm = 1.5264

Определите процент от общей мощности в указанном интервале частот.

Создайте сигнал, состоящий из синусоидальной волны 100 Гц в аддитивном N (0,1) белом гауссовом шуме. Частота дискретизации составляет 1 кГц. Определите процент общей мощности в интервале частот от 50 Гц до 150 Гц. Сбросьте генератор случайных чисел для воспроизводимых результатов.

rng('default')

t = 0:0.001:1-0.001;
x = cos(2*pi*100*t)+randn(size(t));

pband = bandpower(x,1000,[50 150]);
ptot = bandpower(x,1000,[0 500]);
per_power = 100*(pband/ptot)
per_power = 51.9591

Определите среднюю мощность, предварительно вычисляя оценку PSD с помощью периодограммы. Введите оценку PSD в bandpower.

Создайте сигнал, состоящий из синусоидальной волны 100 Гц в аддитивном N (0,1) белом гауссовом шуме. Частота дискретизации составляет 1 кГц. Получить периодограмму и использовать 'psd' флаг для вычисления средней мощности с использованием оценки PSD. Сравните результат со средней мощностью, вычисленной во временной области.

t = 0:0.001:1-0.001;
Fs = 1000;
x = cos(2*pi*100*t)+randn(size(t));

[Pxx,F] = periodogram(x,rectwin(length(x)),length(x),Fs);
p = bandpower(Pxx,F,'psd')
p = 1.5264
avpow = norm(x,2)^2/numel(x)
avpow = 1.5264

Определите процент суммарной мощности в указанном частотном интервале, используя в качестве входного значения периодограмму.

Создайте сигнал, состоящий из синусоидальной волны 100 Гц в аддитивном N (0,1) белом гауссовом шуме. Частота дискретизации составляет 1 кГц. Получить периодограмму и соответствующий частотный вектор. Используя оценку PSD, определите процент общей мощности в интервале частот от 50 Гц до 150 Гц.

Fs = 1000;
t = 0:1/Fs:1-0.001;
x = cos(2*pi*100*t)+randn(size(t));

[Pxx,F] = periodogram(x,rectwin(length(x)),length(x),Fs);
pBand = bandpower(Pxx,F,[50 150],'psd');
pTot = bandpower(Pxx,F,'psd');
per_power = 100*(pBand/pTot)
per_power = 49.1798

Создайте многоканальный сигнал, состоящий из трех синусоид в аддитивном N (0,1) белом гауссовом шуме. Частоты синусоид составляют 100 Гц, 200 Гц и 300 Гц. Частота дискретизации составляет 1 кГц, и сигнал имеет длительность 1 с.

Fs = 1000;

t = 0:1/Fs:1-1/Fs;

f = [100;200;300];

x = cos(2*pi*f*t)'+randn(length(t),3);

Определите среднюю мощность сигнала и сравните ее с ℓ2 нормой.

p = bandpower(x)
p = 1×3

    1.5264    1.5382    1.4717

l2norm = dot(x,x)/length(x)
l2norm = 1×3

    1.5264    1.5382    1.4717

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

свернуть все

Входные данные временного ряда, заданные как вектор строки или столбца или как матрица. Если x является матрицей, то её столбцы обрабатываются как независимые каналы.

Пример: cos(pi/4*(0:159))'+randn(160,1) является одноканальным столбцово-векторным сигналом.

Пример: cos(pi./[4;2]*(0:159))'+randn(160,2) - двухканальная шумная синусоида.

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

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

Типы данных: double | single

Частотный диапазон для вычисления мощности полосы, определяемый как двухэлементная действительная строка или вектор столбца. Если входной сигнал, x, содержит N образцов, freqrange должны находиться в следующих интервалах:

  • [0, fs/ 2] еслиx является вещественным и N является четным

  • [0, (N-1)fs/ (2N)] еслиx является вещественным, а N - нечетным

  • [- (N - 2)fs/ (2 Н), fs/ 2] еслиx является комплекснозначным и N является четным

  • [- (N - 1)fs/ (2N), (N-1)fs/ (2N)] еслиx является комплекснозначным, а N - нечетным

Типы данных: double | single

Одно- или двухсторонние оценки PSD, определяемые как вектор или матрица столбца вещественных значений с неотрицательными элементами.

Спектральная плотность мощности должна быть выражена в линейных единицах, а не децибелах. Использовать db2pow для преобразования децибел в значения мощности.

Пример: [pxx,f] = periodogram(cos(pi./[4;2]*(0:159))'+randn(160,2)) определяет оценку пародограммы PSD шумной двухканальной синусоиды, дискретизированной при 2δ Гц, и частоты, на которых она вычисляется.

Типы данных: double | single

Частотный вектор, заданный как вектор столбца. Частотный вектор, f, содержит частоты, соответствующие оценкам PSD в pxx.

Типы данных: double | single

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

свернуть все

Средняя мощность полосы, возвращаемая как неотрицательный скаляр.

Типы данных: double | single

Ссылки

[1] Хейс, Монсон Х. Статистическая цифровая обработка и моделирование сигналов. Нью-Йорк: John Wiley & Sons, 1996.

[2] Стоика, Петре и Рэндольф Мозес. Спектральный анализ сигналов. Река Верхнее Седло, Нью-Джерси: Прентис Холл, 2005.

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

.

См. также

|

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