Main Content

bandpower

Descripción

ejemplo

p = bandpower(x) devuelve la potencia media en la señal de entrada x. Si x es una matriz, entonces bandpower calcula la potencia media de forma independiente para cada columna.

ejemplo

p = bandpower(x,fs,freqrange) devuelve la potencia media en el intervalo de frecuencias freqrange. Debe introducir la tasa de muestreo fs para obtener la potencia en un intervalo de frecuencias especificado. bandpower utiliza un periodograma modificado para determinar la potencia media en freqrange.

ejemplo

p = bandpower(pxx,f,"psd") devuelve la potencia media calculada integrando la estimación de la densidad espectral de potencia (PSD) pxx. La integral se aproxima por el método del rectángulo. La entrada f es un vector de frecuencias correspondientes a las estimaciones de la PSD en pxx. La opción "psd" indica que la entrada es una estimación de la PSD y no datos de series temporales.

ejemplo

p = bandpower(pxx,f,freqrange,"psd") devuelve la potencia media contenida en el intervalo de frecuencias freqrange. Si las frecuencias de freqrange no coinciden con los valores de f, se utilizan los valores más cercanos. La potencia media se calcula integrando la estimación de la densidad espectral de potencia (PSD) pxx. La integral se aproxima por el método del rectángulo. La opción "psd" indica que la entrada es una estimación de la PSD y no datos de series temporales.

Ejemplos

contraer todo

Cree una señal compuesta por una onda sinusoidal de 100 Hz en ruido blanco gaussiano N(0,1) aditivo. La frecuencia de muestreo es 1 kHz. Determine la potencia media y compárela con la norma 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

Determine el porcentaje de la potencia total en un intervalo de frecuencias especificado.

Cree una señal compuesta por una onda sinusoidal de 100 Hz en ruido blanco gaussiano N(0,1) aditivo. La frecuencia de muestreo es 1 kHz. Determine el porcentaje de la potencia total en el intervalo de frecuencias entre 50 Hz y 150 Hz. Reinicie el generador de números aleatorios para obtener resultados reproducibles.

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

Determine la potencia media calculando primero una estimación de la PSD mediante el periodograma. Introduzca la estimación de la PSD en bandpower.

Cree una señal compuesta por una onda sinusoidal de 100 Hz en ruido blanco gaussiano N(0,1) aditivo. La frecuencia de muestreo es 1 kHz. Obtenga el periodograma y utilice el indicador 'psd' para calcular la potencia media mediante la estimación de la PSD. Compare el resultado con la potencia media calculada en el dominio de tiempo.

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

Determine el porcentaje de la potencia total en un intervalo de frecuencias especificado con el periodograma como entrada.

Cree una señal compuesta por una onda sinusoidal de 100 Hz en ruido blanco gaussiano N(0,1) aditivo. La frecuencia de muestreo es 1 kHz. Obtenga el periodograma y el vector de frecuencia correspondiente. A partir de la estimación de la PSD, determine el porcentaje de la potencia total en el intervalo de frecuencias entre 50 Hz y 150 Hz.

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

Cree una señal multicanal compuesta por tres sinusoides en ruido blanco gaussiano N(0,1) aditivo. Las frecuencias de las sinusoides son 100 Hz, 200 Hz y 300 Hz. La frecuencia de muestreo es 1 kHz y la señal tiene una duración de 1 s.

Fs = 1000;

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

f = [100;200;300];

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

Determine la potencia media de la señal y compárela con la norma 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

Argumentos de entrada

contraer todo

Introduzca datos de series temporales especificados como un vector fila, un vector columna o una matriz. Si x es una matriz, sus columnas se tratan como canales independientes.

Ejemplo: cos(pi/4*(0:159))'+randn(160,1) es una señal de vector columna monocanal.

Ejemplo: cos(pi./[4;2]*(0:159))'+randn(160,2) es una sinusoide con ruido de dos canales.

Tipos de datos: double | single
Soporte de números complejos:

Frecuencia de muestreo para los datos de series temporales de entrada, especificada como un escalar positivo.

Tipos de datos: double | single

Intervalo de frecuencias para el cálculo de la potencia de banda, especificado como vector fila o vector columna de dos elementos de valor real. Si la señal de entrada x contiene N muestras, freqrange debe estar dentro de los intervalos siguientes:

  • [0, fs/2] si x es de valor real y N es par

  • [0, (N – 1)fs/(2N)] si x es de valor real y N es impar

  • [–(N – 2)fs/(2N), fs/2] si x es de valor complejo y N es par

  • [–(N – 1)fs/(2N), (N – 1)fs/(2N)] si x es de valor complejo y N es impar

Tipos de datos: double | single

Estimaciones de la PSD unilateral o bilateral, especificadas como vector columna de valor real o matriz con elementos no negativos.

La densidad espectral de potencia debe expresarse en unidades lineales, no en decibelios. Utilice db2pow para convertir los valores de decibelios en valores de potencia.

Ejemplo: [pxx,f] = periodogram(cos(pi./[4;2]*(0:159))'+randn(160,2)) especifica la estimación del periodograma PSD de una sinusoide ruidosa de dos canales muestreada a 2π Hz y las frecuencias a las que se calcula.

Tipos de datos: double | single

Vector de frecuencia, especificado como vector columna. El vector de frecuencia f contiene las frecuencias correspondientes a las estimaciones de la PSD en pxx.

Tipos de datos: double | single

Argumentos de salida

contraer todo

Potencia media de banda, devuelta como un escalar no negativo.

Tipos de datos: double | single

Referencias

[1] Hayes, Monson H. Statistical Digital Signal Processing and Modeling. New York: John Wiley & Sons, 1996.

[2] Stoica, Petre, and Randolph Moses. Spectral Analysis of Signals. Upper Saddle River, NJ: Prentice Hall, 2005.

Capacidades ampliadas

Historial de versiones

Introducido en R2013a

expandir todo

Consulte también

|