FIR_Filter Kaiser

4 ビュー (過去 30 日間)
Kervin Aranzado
Kervin Aranzado 2022 年 9 月 22 日
回答済み: Star Strider 2022 年 9 月 22 日
I need to decrease the filter order n by 1
fsamp = 12000; %sampling rate
fcuts = [1800 2000]; %indicate frequency cutoffs
mags = [1 0]; %desired magnitudes per band
devs = [0.0114469 0.01778279]; %amplitude deviation per band
[n,Wn,beta,ftype] = kaiserord(fcuts,mags,devs,fsamp);...
%Use Kaiser window estimation
hh = fir1(n,Wn,ftype,kaiser(n+1,beta),'noscale'); %design FIR filter
freqz(hh) %plot response

採用された回答

Star Strider
Star Strider 2022 年 9 月 22 日
I am not certain what the problem is.
Try something like this —
fsamp = 12000; %sampling rate
fcuts = [1800 2000]; %indicate frequency cutoffs
mags = [1 0]; %desired magnitudes per band
devs = [0.0114469 0.01778279]; %amplitude deviation per band
[n,Wn,beta,ftype] = kaiserord(fcuts,mags,devs,fsamp);
n = n-1; % <— ADDED
%Use Kaiser window estimation
hh = fir1(n,Wn,ftype,kaiser(n+1,beta),'noscale'); %design FIR filter
figure
freqz(hh,1,2^16,fsamp) %plot response
Changing the filter order by 1 likely changes nothing significant about the filter behaviour, at least for FIR filters.
.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeKaiser についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by