hpcheb.m
来自「本人提交的用matlab的关于滤波器设计的作业」· M 代码 · 共 38 行
M
38 行
%----------------------------------------------------------------------------
% exa060703_1.m , for example 6.7.3;
% to test cheb1ord,cheb1ap,
% to design a Chebyshev-I Bandpass DF.
%----------------------------------------------------------------------------
clear all;
fp=400;fs=300;
rp=3;rs=35;
Fs=1000;
%
wp=2*pi*fp/Fs;
ws=2*pi*fs/Fs;
%
% Firstly to finish frequency prewarping;
wap=2*Fs*tan(wp/2);
was=2*Fs*tan(ws/2);
[n,wn]=cheb1ord(wap,was,rp,rs,'s');
% Note: 's'!
[z,p,k]=cheb1ap(n,rp);
[bp,ap]=zp2tf(z,p,k);
[bs,as]=lp2hp(bp,ap,wap);
%
% Note: z=(2/Ts)(z-1)/(z+1);
[bz,az]=bilinear(bs,as,Fs)
[h,w]=freqz(bz,az,256,Fs);
figure(1);
plot(w,20*log10(abs(h)));
xlabel(' Hz');
ylabel('幅频响应');
grid on;
figure(2);
hphase=angle(h);
hphase=unwrap(hphase);
plot(w,hphase);
xlabel(' Hz');
ylabel('相频响应');
grid on;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?