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.

polystab

Estabilizar polinomio

Sintaxis

b = polystab(a)

Descripción

estabiliza un polinomio con respecto a lapolystab círculo de la unidad; refleja raíces con magnitudes mayores que 1 dentro del círculo de la unidad.

b = polystab(a) devuelve un vector de fila que contiene el polinomio estabilizado. es un vector de coeficientes polinómicos, normalmente en el -dominio:baz

A(z)=a(1)+a(2)z1++a(m+1)zm.

Ejemplos

contraer todo

Utilice el método de ventana para diseñar un filtro FIR de 25o oder con frecuencia de corte normalizada

<math display="block">
<mrow>
<mn>0</mn>
<mo>.</mo>
<mn>4</mn>
<mi>π</mi>
</mrow>
</math>
rad/muestra. Verifique que tenga fase lineal pero no fase mínima.

h = fir1(25,0.4);  h_linphase = islinphase(h)
h_linphase = logical
   1

h_minphase = isminphase(h)
h_minphase = logical
   0

Se utiliza para convertir el filtro de fase lineal en un filtro de fase mínima.polystab Trazar las respuestas de fase de los filtros.

hmin = polystab(h)*norm(h)/norm(polystab(h));  hmin_linphase = islinphase(hmin)
hmin_linphase = logical
   0

hmin_minphase = isminphase(hmin)
hmin_minphase = logical
   1

 hfvt = fvtool(h,1,hmin,1,'Analysis','phase'); legend(hfvt,'h','hmin')

Compruebe que los dos filtros tienen respuestas de magnitud idénticas.

hfvt = fvtool(h,1,hmin,1); legend(hfvt,'h','hmin')

Algoritmos

encuentra las raíces del polinomio y mapea las raíces que se encuentran fuera del círculo de la unidad al interior del círculo de la unidad:polystab

v = roots(a); vs = 0.5*(sign(abs(v)-1)+1); v = (1-vs).*v + vs./conj(v); b = a(1)*poly(v); 

Consulte también

Introducido antes de R2006a