cai5.m

来自「这个是我数字信号处理这门课的课程设计,文件包括用matlab编写的代码和设计报告」· M 代码 · 共 40 行

M
40
字号
Ws=0.6*pi;Wp=0.4*pi;ap=0.5;as=50;T=2;
Us=2*tan(0.5*Ws)/T;
Up=2*tan(0.5*Wp)/T;
Kp=1;Ksp=Us/Up;
ksp=sqrt((10^(0.1*ap)-1)/(10^(0.1*as)-1));
N=-log10(ksp)/log10(Ksp);
N=fix(N)+1;
Uc=Up*(10^(0.1*ap)-1)^(-1/(2*N));
W=linspace(0,1,100)*pi;
s=(2*(1-exp(-j.*W)))./(T*(1+exp(-j.*W)));
Ha=Uc^N;
for i=0:1:N-1;
sk(i+1)=Uc*exp(j*pi*(0.5+(2*i+1)./(2*N)));
Ha=Ha./(s-sk(i+1));
end
H=abs(Ha);
title('幅度特性');
subplot(2,1,1)
plot(W,H)
xlabel('w/rad');ylabel('幅度|H(jw)|');
axis([0,pi,0,1.1])
grid on
m=20*log10(H);
subplot(2,1,2)
plot(W,m)
axis([1,2,-80,0])
xlabel('w/rad');ylabel('增益20log|H(esp(jw))| (dB)');
grid on
figure
y=ifft(Ha);
t=0:T:99*T;
subplot(2,1,1)
plot(t,y)
xlabel('t');ylabel('y');
title('y在平面上的冲击响应')
subplot(2,1,2)
plot(t,abs(y))
xlabel('t');ylabel('绝对值|y|');
title('y的绝对值的图示');

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?