Main Content

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.

Predicción Polinómio

Este ejemplo muestra cómo obtener el polinomio de predicción de una secuencia de autocorrelación. El ejemplo también muestra que el polinomio de predicción resultante tiene una inversa que produce un filtro de todo polo estable. Puede utilizar el filtro de todos los polos para filtrar una secuencia de ruido blanco estacionario de sentido ancho para producir un proceso autoregresivo estacionario de sentido ancho.

Cree una secuencia de autocorrelación definida por

<math display="block">
<mrow>
<mi>r</mi>
<mo stretchy="false">(</mo>
<mi>k</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mrow>
<mfrac>
<mrow>
<mn>2</mn>
<mn>4</mn>
</mrow>
<mrow>
<mn>5</mn>
</mrow>
</mfrac>
</mrow>
<mspace width="0.16666666666666666em"></mspace>
<msup>
<mrow>
<mn>2</mn>
</mrow>
<mrow>
<mo>-</mo>
<mrow>
<mo>|</mo>
<mi>k</mi>
<mo>|</mo>
</mrow>
</mrow>
</msup>
<mo>-</mo>
<mrow>
<mfrac>
<mrow>
<mn>2</mn>
<mn>7</mn>
</mrow>
<mrow>
<mrow>
<mn>1</mn>
<mn>0</mn>
</mrow>
</mrow>
</mfrac>
</mrow>
<mspace width="0.16666666666666666em"></mspace>
<msup>
<mrow>
<mn>3</mn>
</mrow>
<mrow>
<mo>-</mo>
<mrow>
<mo>|</mo>
<mi>k</mi>
<mo>|</mo>
</mrow>
</mrow>
</msup>
<mo>,</mo>
<mspace width="1em"></mspace>
<mi>k</mi>
<mo>=</mo>
<mn>0</mn>
<mo>,</mo>
<mn>1</mn>
<mo>,</mo>
<mn>2</mn>
<mo>.</mo>
</mrow>
</math>

k = 0:2; rk = (24/5)*2.^(-k)-(27/10)*3.^(-k);

Se utiliza para obtener el polinomio de predicción de la orden 2, que esac2poly

<math display="block">
<mrow>
<mi>A</mi>
<mo stretchy="false">(</mo>
<mi>z</mi>
<mo stretchy="false">)</mo>
<mo>=</mo>
<mn>1</mn>
<mo>-</mo>
<mrow>
<mfrac>
<mrow>
<mn>5</mn>
</mrow>
<mrow>
<mn>6</mn>
</mrow>
</mfrac>
</mrow>
<msup>
<mrow>
<mi>z</mi>
</mrow>
<mrow>
<mo>-</mo>
<mn>1</mn>
</mrow>
</msup>
<mo>+</mo>
<mrow>
<mfrac>
<mrow>
<mn>1</mn>
</mrow>
<mrow>
<mn>6</mn>
</mrow>
</mfrac>
</mrow>
<msup>
<mrow>
<mi>z</mi>
</mrow>
<mrow>
<mo>-</mo>
<mn>2</mn>
</mrow>
</msup>
<mo>.</mo>
</mrow>
</math>

A = ac2poly(rk);

Examine la gráfica polo-cero del filtro FIR para ver que los ceros están dentro del círculo de la unidad.

zplane(A,1) grid

El filtro inverso de polo es estable con polos dentro del círculo de la unidad.

zplane(1,A) grid title('Poles and Zeros')

Utilice el filtro de todos los polos para producir una realización de un proceso ar(2) estacionario de amplio sentido a partir de una secuencia de ruido blanco. Establezca el generador de números aleatorios en la configuración predeterminada para obtener resultados reproducibles.

rng default  x = randn(1000,1); y = filter(1,A,x);

Calcular la autocorrelación de muestra de la comprensión AR(2) y mostrar que la autocorrelación de muestra está cerca de la verdadera autocorrelación.

[xc,lags] = xcorr(y,2,'biased'); [xc(3:end) rk']
ans = 3×2

    2.2401    2.1000
    1.6419    1.5000
    0.9980    0.9000