Window Design of Digital Filters
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Kamal Premaratne
le 14 Avr 2020
Commenté : Star Strider
le 14 Avr 2020
Hi. I am calling the fir1 function to design an FIR filter. One argument of fir1 is the type of window that is to be used, e.g., hann, hamming, etc. However, the type of window depends on the stopband attentuation that one requires. So, I have an if ... else ... end conditional prior to callng fir1. it looks like
if deltadB_max <= 21
FixedWindow = 'rectwin';
else
FixedWindow = 'bartlett';
end
Now, when I invoke fir1, how can pass the variable FixedWindow into the arguments of fir1? Thank you.
0 commentaires
Réponse acceptée
Star Strider
le 14 Avr 2020
Both the rectwin and bartlett functions have a single length argument. That simplifies this considerably.
if deltadB_max <= 21
FixedWindow = @(L) rectwin(L);
else
FixedWindow = @(L) bartlett(L);
end
L = 35;
b = fir1(34,0.48,FixedWindow(L)); % Test Design
freqz(b,1)
That ran without error and gave the appropriate result when I ran it (R2020a) with different values for ‘deltadB_max’.
For windows that require more parameters or different parameters, this would need to be changed appropriately. I leave that to you.
.
2 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Floating-Point to Fixed-Point Conversion dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!