查看完整版本: 請問MATLAB 帶通濾波器
頁: [1]

wwrr1234 發表於 2015-6-9 01:07 PM

請問MATLAB 帶通濾波器

題目是利用Parks-McClellan演算法設計帶通濾波器
參數 通帶 通帶連波Rp=0.1dB 阻帶和 阻帶衰減As=60dB
以下是我打的 請幫我看看 謝謝!!
w1p=0.35*pi;
w2p=0.65*pi;
w1s=0,0.2*pi;
w2s=0.8*pi,pi;
Rp=0.1;
As=60;
delta_w=2*pi/1000;
w1pi=w1p/delta_w+1;
w1si=w1s/delta_w+1;
w2pi=w2p/delta_w+1;
w2si=w2s/delta_w+1;
deltal=(1-10^(-Rp/20))/(1+10^(-Rp/20));
delta2=(1+deltal)*(10^(-As/20));
weights=;
df=(w2s-w1p)/(2*pi);
tr_width=(w1p-w1s)/(2*pi);
M=ceil((As-7.95)/(14.36*tr_width))+1
f=;
m=;
h=remez(M-1,f,m,weights);
=freqz_m(h,,1000);
Asd=-max(db(1:w1si))
Rpd=max(abs(db(w1pi:w2pi)))
=Amp_Res(h);
subplot(2,2,1);
stem(h);
axis()
subplot(2,2,2);
plot(w/pi,db);
axis();
subplot(2,2,3);
plot(w/pi,mag);
axis();
subplot(2,2,4);
plot(w(1:w1si)/pi,H(1:w1si));
hold on;
plot(w(w1pi:w1si)/pi,H(w1pi:w2pi)-1);
plot(w(w2si:end)/pi,H(w2si:end));
hold off;
axis();

...<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div><div></div>

rayford 發表於 2015-6-18 05:37 PM

{:48:}

直接找算法包啦,哈哈,matlab哪里用得上那麼多源碼了

TT8787785 發表於 2022-12-18 11:46 PM

這 code 裡面的 freqz_m 不是預設的matlab function

好像 matlab 在至少 2021b 版本後,有個直接for 'Parks–McClellan algorithm' 的功能

firgr
'Parks-McClellan FIR filter'

TT8787785 發表於 2022-12-18 11:58 PM

TT8787785 發表於 2022-12-18 11:46 PM static/image/common/back.gif
這 code 裡面的 freqz_m 不是預設的matlab function

好像 matlab 在至少 2021b 版本後,有個直接for 'Park ...

哦。。。

資訊有誤,在 Matlab 2011a 就有導入 firgr 的功能
如果考試目的是自己寫一個,那可能需要一些數學來源的資訊幫助思考。
...<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div>

kkaguo 發表於 2023-1-13 11:53 AM

thank you very!!!!

so nice!!!!{:46:}<br><br><br><br><br><div></div>
頁: [1]