Filtro de magnitudes arbitrarias
Diseñe un filtro FIR con la siguiente respuesta en frecuencia a trozos:
Una sinusoide entre 0 y 0,19 π rad/muestra.
F1 = 0:0.01:0.19; A1 = 0.5+sin(2*pi*7.5*F1)/4;
Una sección lineal a trozos entre 0,2 π rad/muestra y 0,78 π rad/muestra.
F2 = [0.2 0.38 0.4 0.55 0.562 0.585 0.6 0.78]; A2 = [0.5 2.3 1 1 -0.2 -0.2 1 1];
Una sección cuadrática entre 0,79 π rad/muestra y la frecuencia de Nyquist.
F3 = 0.79:0.01:1; A3 = 0.2+18*(1-F3).^2;
Especifique un orden de filtro de 50. Consolide los vectores de frecuencia y amplitud. Para dotar a todas las bandas de la misma ponderación durante el ajuste de optimización, especifique un vector de ponderación de todos los unos. Abra la app Filter Designer.
N = 50; FreqVect = [F1 F2 F3]; AmplVect = [A1 A2 A3]; WghtVect = ones(1,N/2); filterDesigner
Utilice la app para diseñar el filtro.
En Response Type, seleccione el botón situado junto a
Differentiator
. En la lista desplegable, seleccioneArbitrary Magnitude
.Establezca Design Method en
FIR
. En la lista desplegable, seleccioneLeast-squares
.En Filter Order, especifique el orden como la variable
N
.En Frequency and Magnitude Specifications, especifique las variables que ha creado:
Freq. vector:
FreqVect
.Mag. vector:
AmplVect
.Weight vector:
WghtVect
.
Haga clic en Design Filter.
Haga clic con el botón secundario en el eje y de la gráfica y seleccione Magnitude para expresar la respuesta de magnitud en unidades lineales.