Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

toi

Punto de interceptación de tercer orden

Descripción

oip3 = toi(x) devuelve el punto de intercepción de tercer orden (TOI) de salida, en decibelios (dB), de una señal de entrada sinusoidal real de dos tonos, .x El cálculo se realiza durante un periodograma de la misma longitud que la entrada utilizando una ventana Kaiser con β = 38.

ejemplo

oip3 = toi(x,fs) especifica la frecuencia de muestreo, .fs El valor predeterminado de es .fs1

ejemplo

oip3 = toi(pxx,f,'psd') especifica la entrada como una densidad espectral de potencia unilateral (PSD), de una señal real. es un vector de frecuencias que corresponde al vector de estimaciones.pxxfpxx

ejemplo

oip3 = toi(sxx,f,rbw,'power') especifica la entrada como un espectro de potencia unilateral, , de una señal real. es el ancho de banda de resolución sobre el que se integra cada estimación de potencia.sxxrbw

ejemplo

[oip3,fundpow,fundfreq,imodpow,imodfreq] = toi(___) también devuelve la potencia, , y las frecuencias, , de los dos sinusoides fundamentales.fundpowfundfreq También devuelve la potencia, , y las frecuencias, , de los productos de intermodulación inferior y superior.imodpowimodfreq Esta sintaxis puede utilizar cualquiera de los argumentos de entrada de las sintaxis anteriores.

ejemplo

toi(___) sin argumentos de salida traza el espectro de la señal y anota los fundamentos inferior y superior (f1, f2) y productos de intermodulación (2f1 – f2, 2f2 – f1). Los armónicos más altos y los productos de intermodulación no están etiquetados. El TOI aparece encima de la trama.

Ejemplos

contraer todo

Crear un sinusoides de dos tonos con frecuencias

<math display="block">
<mrow>
<msub>
<mrow>
<mi>f</mi>
</mrow>
<mrow>
<mn>1</mn>
</mrow>
</msub>
<mo>=</mo>
<mn>5</mn>
</mrow>
</math>
kHz y
<math display="block">
<mrow>
<msub>
<mrow>
<mi>f</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msub>
<mo>=</mo>
<mn>6</mn>
</mrow>
</math>
kHz, muestreado a 48 kHz. Haga que la señal no sea lineal alimentándola a un polinomio. Añade ruido. Establezca el generador de números aleatorios en la configuración predeterminada para obtener resultados reproducibles. Calcular el punto de interceptación de tercer orden. Verifique que los productos de intermodulación se produzcan en
<math display="block">
<mrow>
<mn>2</mn>
<msub>
<mrow>
<mi>f</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mrow>
<mi>f</mi>
</mrow>
<mrow>
<mn>1</mn>
</mrow>
</msub>
<mo>=</mo>
<mn>4</mn>
</mrow>
</math>
kHz y
<math display="block">
<mrow>
<mn>2</mn>
<msub>
<mrow>
<mi>f</mi>
</mrow>
<mrow>
<mn>1</mn>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mrow>
<mi>f</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msub>
<mo>=</mo>
<mn>7</mn>
</mrow>
</math>
Khz.

rng default fi1 = 5e3; fi2 = 6e3; Fs = 48e3; N = 1000; x = sin(2*pi*fi1/Fs*(1:N))+sin(2*pi*fi2/Fs*(1:N)); y = polyval([0.5e-3 1e-7 0.1 3e-3],x)+1e-5*randn(1,N);  [myTOI,Pfund,Ffund,Pim3,Fim3] = toi(y,Fs); myTOI,Fim3
myTOI = 1.3844 
Fim3 = 1×2
103 ×

    4.0002    6.9998

Cree un sinusoides de dos tonos con frecuencias de 5 kHz y 6 kHz, muestreadas a 48 kHz. Haga que la señal no sea lineal mediante la evaluación de un polinomio. Añade ruido. Establezca el generador de números aleatorios en la configuración predeterminada para obtener resultados reproducibles.

rng default fi1 = 5e3; fi2 = 6e3; Fs = 48e3; N = 1000; x = sin(2*pi*fi1/Fs*(1:N))+sin(2*pi*fi2/Fs*(1:N)); y = polyval([0.5e-3 1e-7 0.1 3e-3],x)+1e-5*randn(1,N);

Evalúe el periodograma de la señal utilizando una ventana Kaiser. Calcula el TOI usando la densidad espectral de potencia. Trazar el resultado.

w = kaiser(numel(y),38);  [Sxx, F] = periodogram(y,w,N,Fs,'psd'); [myTOI,Pfund,Ffund,Pim3,Fim3] = toi(Sxx,F,'psd')
myTOI = 1.3843 
Pfund = 1×2

  -22.9133  -22.9132

Ffund = 1×2
103 ×

    5.0000    6.0000

Pim3 = 1×2

  -71.4868  -71.5299

Fim3 = 1×2
103 ×

    4.0002    6.9998

 toi(Sxx,F,'psd');

Cree un sinusoides de dos tonos con frecuencias de 5 kHz y 6 kHz, muestreadas a 48 kHz. Haga que la señal no sea lineal mediante la evaluación de un polinomio. Añade ruido. Establezca el generador de números aleatorios en la configuración predeterminada para obtener resultados reproducibles.

rng default  fi1 = 5e3; fi2 = 6e3; Fs = 48e3; N = 1000;  x = sin(2*pi*fi1/Fs*(1:N))+sin(2*pi*fi2/Fs*(1:N)); y = polyval([0.5e-3 1e-7 0.1 3e-3],x)+1e-5*randn(1,N);

Evalúe el periodograma de la señal utilizando una ventana Kaiser. Calcula el TOI usando el espectro de potencia. Trazar el resultado.

w = kaiser(numel(y),38);  [Sxx,F] = periodogram(y,w,N,Fs,'power');  toi(Sxx,F,enbw(w,Fs),'power')

ans = 1.3844 

Generar 640 muestras de un sinusoides de dos tonos con frecuencias de 5 Hz y 7 Hz, muestreadas a 32 Hz. Haga que la señal no sea lineal mediante la evaluación de un polinomio. Añadir ruido con la desviación estándar 0,01. Establezca el generador de números aleatorios en la configuración predeterminada para obtener resultados reproducibles. Calcular el punto de interceptación de tercer orden. Verifique que los productos de intermodulación se produzcan en

<math display="block">
<mrow>
<mn>2</mn>
<msub>
<mrow>
<mi>f</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mrow>
<mi>f</mi>
</mrow>
<mrow>
<mn>1</mn>
</mrow>
</msub>
<mo>=</mo>
<mn>9</mn>
<mspace width="0.2777777777777778em"></mspace>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mi>H</mi>
<mi>z</mi>
</mrow>
</mstyle>
</mrow>
</mrow>
</math>
Y
<math display="block">
<mrow>
<mn>2</mn>
<msub>
<mrow>
<mi>f</mi>
</mrow>
<mrow>
<mn>1</mn>
</mrow>
</msub>
<mo>-</mo>
<msub>
<mrow>
<mi>f</mi>
</mrow>
<mrow>
<mn>2</mn>
</mrow>
</msub>
<mo>=</mo>
<mn>3</mn>
<mspace width="0.2777777777777778em"></mspace>
<mrow>
<mstyle mathvariant="normal">
<mrow>
<mi>H</mi>
<mi>z</mi>
</mrow>
</mstyle>
</mrow>
</mrow>
</math>
.

rng default x = sin(2*pi*5/32*(1:640))+cos(2*pi*7/32*(1:640)); q = x + 0.01*x.^3 + 1e-2*randn(size(x)); [myTOI,Pfund,Ffund,Pim3,Fim3] = toi(q,32)
myTOI = 17.4230 
Pfund = 1×2

   -2.8350   -2.8201

Ffund = 1×2

    5.0000    7.0001

Pim3 = 1×2

  -43.1362  -43.5211

Fim3 = 1×2

    3.0015    8.9744

Generar 640 muestras de un sinusoides de dos tonos con frecuencias de 5 Hz y 7 Hz, muestreadas a 32 Hz. Haga que la señal no sea lineal mediante la evaluación de un polinomio. Añadir ruido con la desviación estándar 0,01. Establezca el generador de números aleatorios en la configuración predeterminada. Trazar el espectro de la señal. Muestre los fundamentos y los productos de intermodulación. Verifique que estos últimos se produzcan a 9 Hz y 3 Hz.

rng default x = sin(2*pi*5/32*(1:640))+cos(2*pi*7/32*(1:640)); q = x + 0.01*x.^3 + 1e-2*randn(size(x)); toi(q,32)

ans = 17.4230 

Argumentos de entrada

contraer todo

Señal de dos tonos sinusoidal de valor real, especificada como vector de fila o columna.

Ejemplo: polyval([0.01 0 1 0],sum(sin(2*pi*[5 7]'*(1:640)/32))) + 0.01*randn([1 640])

Tipos de datos: double | single

Frecuencia de muestreo, especificada como un escalar real positivo. La frecuencia de muestreo es el número de muestras por unidad de tiempo. Si la unidad de tiempo es segundos, entonces la frecuencia de muestreo tiene unidades de hercios.

Tipos de datos: double | single

Estimación de densidad espectral de potencia unilateral, especificada como un vector de fila o columna no negativo de valor real.

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

Ejemplo: especifica la estimación de la DSP de periodograma de un sinusoides de dos canales ruidoso muestreado a 2 oS y las frecuencias a las que se calcula.[pxx,f] = periodogram(cos(pi./[4;2]*(0:159))'+randn(160,2))

Tipos de datos: double | single

Frecuencias cíclicas correspondientes a la estimación de PSD unilateral, , especificada como un vector de fila o columna.pxx El primer elemento de debe ser 0.f

Tipos de datos: double | single

Espectro de potencia, especificado como un vector de fila o columna no negativo de valor real.

El espectro de potencia debe expresarse en unidades lineales, no en decibelios. Se utiliza para convertir valores de decibelios en valores de potencia.db2pow

Ejemplo: especifica la estimación del espectro de potencia del periodograma de un sinusoides de dos canales incrustado en el ruido gaussiano blanco y las frecuencias normalizadas a las que se calcula.[sxx,w] = periodogram(cos(pi./[4;2]*(0:159))'+randn(160,2),'power')

Tipos de datos: double | single

Ancho de banda de resolución, especificado como escalar positivo. El ancho de banda de resolución es el producto de la resolución de frecuencia de la transformación discreta de Fourier y el ancho de banda de ruido equivalente de la ventana.

Tipos de datos: double | single

Argumentos de salida

contraer todo

Salida punto de intercepción de tercer orden de una señal sinusoidal de dos tonos, devuelto como un escalar de valor real expresado en decibelios. Si el segundo tono primario es el segundo armónico del primer tono primario, entonces el producto de intermodulación inferior está a frecuencia cero. La función devuelve en esos casos.NaN

Tipos de datos: double | single

Potencia contenida en los dos sinusoides fundamentales de la señal de entrada, devuelta como un vector de fila de dos elementos de valor real.

Tipos de datos: double | single

Frecuencias de los dos sinusoides fundamentales de la señal de entrada, devueltos como un vector de fila de dos elementos de valor real.

Tipos de datos: double | single

Potencia contenida en los productos de intermodulación inferior y superior de la señal de entrada, devuelta como un vector de fila de dos elementos de valor real.

Tipos de datos: double | single

Frecuencias de los productos de intermodulación inferior y superior de la señal de entrada, devueltos como un vector de fila de dos elementos de valor real.

Tipos de datos: double | single

Referencias

[1] Kundert, Kenneth S. “Accurate and Rapid Measurement of IP2 and IP3.” May, 2002. https://www.designers-guide.org/Analysis/intercept-point.pdf.

Consulte también

| | |

Introducido en R2013b