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.

fircls1

Diseño de filtro FIR lowpass y highpass de fase lineal de mínimos restringidos

Sintaxis

b = fircls1(n,wo,dp,ds)
b = fircls1(n,wo,dp,ds,'high')
b = fircls1(n,wo,dp,ds,wt)
b = fircls1(n,wo,dp,ds,wt,'high')
b = fircls1(n,wo,dp,ds,wp,ws,k)
b = fircls1(n,wo,dp,ds,wp,ws,k,'high')
b = fircls1(n,wo,dp,ds,...,'design_flag')

Descripción

b = fircls1(n,wo,dp,ds) genera un filtro FIR de paso bajo, donde está la longitud del filtro, es la frecuencia de corte normalizada en el rango entre 0 y 1 (donde 1 corresponde a la frecuencia Nyquist), es la desviación máxima de la banda de paso de 1 (ondulación de banda de paso), y es la vía de parada máxima desviada ción de 0 (ondulación de banda de parada).bn+1wodpds

b = fircls1(n,wo,dp,ds,'high') genera un filtro FIR de paso alto. siempre utiliza un orden de filtro uniforme para la configuración de paso alto.bfircls1 Esto se debe a que para las órdenes impares, la respuesta de frecuencia en la frecuencia Nyquist es necesariamente 0. Si especifica un valor impar , lo incrementa en 1.nfircls1

b = fircls1(n,wo,dp,ds,wt) Y

b = fircls1(n,wo,dp,ds,wt,'high') especifica una frecuencia por encima de la cual (para > ) o por debajo de la cual (para < ) se garantiza que el filtro cumple con el criterio de banda dado.wtwtwowtwo Esto le ayudará a diseñar un filtro que cumpla con un requisito de borde de banda de paso o banda de parada. Hay cuatro casos:

  • Pasabajos:

    • < < < : la amplitud del filtro se encuentra dentro de 1 sobre el rango de frecuencias <a < .0wtwo1dp0wt

    • < < < : la amplitud del filtro se encuentra dentro de 0 sobre el rango de frecuencias <a < .0wowt1dswt1

  • Pasa-altos:

    • < < < : la amplitud del filtro se encuentra dentro de 0 sobre el rango de frecuencias <a < .0wtwo1ds0wt

    • < < < : la amplitud del filtro se encuentra dentro de 1 sobre el rango de frecuencias <a < .0wowt1dpwt1

b = fircls1(n,wo,dp,ds,wp,ws,k) genera un filtro FIR de paso bajo con una función ponderada, donde está la longitud del filtro, es la frecuencia de corte normalizada, es la desviación máxima de la banda de paso de 1 (ondulación de banda de paso), y es la desviación máxima de la banda de parada de 0 (ondulación de banda de parada). es el borde de banda de paso de la función de peso L2 y es el borde de la banda de parada de la función de peso L2, donde < . es la relación (error l2 de banda de paso)/(error l2 de banda de parada)bn+1wodpdswpwswpwowsk

k=0wp|A(ω)D(ω)|2dωwzπ|A(ω)D(ω)|2dω

b = fircls1(n,wo,dp,ds,wp,ws,k,'high') genera un filtro FIR de paso alto con una función ponderada, donde < .bwswowp

b = fircls1(n,wo,dp,ds,...,'design_flag') le permite monitorear el diseño del filtro, donde'design_flagpuede ser'

  • , para una visualización textual de la tabla de diseño utilizada en el diseño'trace'

  • , para gráficas de la magnitud del filtro, retardo de grupo y ceros y polos.'plots' Todos los trazados se actualizan en cada paso de iteración. Las O en la gráfica son los extremos estimados de la nueva iteración y las X son los extremos estimados de la iteración anterior, donde los extremos son los picos (máximo y mínimo) de las ondas del filtro. Solo las ondas que tienen una O y X correspondientes se hacen iguales.

  • , tanto para la visualización textual como para las gráficas'both'

Nota

En el diseño de filtros de banda muy estrecha con pequeño y , puede no existir un filtro de la longitud dada que cumple con las especificaciones.dpds

Ejemplos

contraer todo

Diseñe un filtro de paso bajo 55 de pedido con la frecuencia de corte normalizada 0.3. Especifique una ondulación de banda de paso de 0,02 y una ondulación de banda de parada de 0,008. Mostrar trazados de las bandas.

n = 55; wo = 0.3; dp = 0.02; ds = 0.008; b = fircls1(n,wo,dp,ds,'both');
    Bound Violation = 0.0870385343920   
    Bound Violation = 0.0149343456540   
    Bound Violation = 0.0056513587932   
    Bound Violation = 0.0001056264205   
    Bound Violation = 0.0000967624352   
    Bound Violation = 0.0000000226538   

    Bound Violation = 0.0000000000038   

Las infracciones enlazadas denotan las iteraciones del procedimiento a medida que converge el diseño. Muestra la respuesta de magnitud del filtro.

fvtool(b)

Algoritmos

utiliza un algoritmo iterativo de mínimos cuadrados para obtener una respuesta equisiosiosica.fircls1 El algoritmo es un algoritmo de intercambio múltiple que utiliza multiplicadores Lagrange y condiciones Kuhn-Tucker en cada iteración.

Referencias

[1] Selesnick, I. W., M. Lang, and C. S. Burrus. “Constrained Least Square Design of FIR Filters without Specified Transition Bands.” Proceedings of the 1995 International Conference on Acoustics, Speech, and Signal Processing. Vol. 2, 1995, pp. 1260–1263.

[2] Selesnick, I. W., M. Lang, and C. S. Burrus. “Constrained Least Square Design of FIR Filters without Specified Transition Bands.” IEEE® Transactions on Signal Processing. Vol. 44, Number 8, 1996, pp. 1879–1892.

Capacidades ampliadas

Consulte también

| |

Introducido antes de R2006a