Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#2 |
初级会员
注册日期: 2008-06-09
年龄: 37
帖子: 12
声望力: 17 ![]() |
![]()
N=11;a=(N-1)/2;
m=0:N-1;W1=(2*pi/N)*m; Hideal=[0.01,ones(1,3),0.2,zeros(1,6)];%此处为插值 k1=0:floor((N-1)/2);k2=(floor((N-1)/2)+1):N-1; angH=[-a*2*pi*k1/N,a*2*pi*(N-k2)/N]; H=Hideal.*exp(j*angH); h=ifft(H,N);%此处不必取实数 [H2,w]=freqz(h,1); figure(1); subplot(3,1,1); plot(W1(1:5)/pi,Hideal(1:5),'o',Wd,Hdr); axis([0,1,-0.2,1.2]);title('频率样本'); xlabel('频率(单位pi)');ylabel('Hideal(k)'); figure(2); subplot(3,1,2); stem(m,h);title('单位脉冲响应'); xlabel('n');ylabel('h(n)'); figure(3); subplot(3,1,3); A=max(abs(H2)); plot(w/pi,20*log10(abs(H2)/A)); axis([0,1,-100,10]);grid; title('幅度响应');xlabel('频率(单位pi)');ylabel('dB'); 你的程序中要注意抽样点,H(k)的选择原则是通带内为1,阻带内为0,另外在插值时最好不要从0直接跳变到1 |
![]() |
![]() |
|
|
![]() |
||||
主题 | 主题作者 | 版面 | 回复 | 最后发表 |
求三圆交点问题 | ysjxj | MATLAB论坛 | 1 | 2008-08-14 13:53 |
[分享]MATHCAD2001资源中心汉化第四部分 | zpz11111 | MathCAD论坛 | 0 | 2008-07-04 17:52 |
matlab编写板卡驱动 | emirlee | MATLAB论坛 | 2 | 2008-04-18 09:16 |
【求助】如何产生随机解 | zhailiangjun | MATLAB论坛 | 2 | 2008-03-07 16:12 |
[求助]如何用matlab编写代码直接读取一个软件采集到的数据 | guhuayong | MATLAB论坛 | 0 | 2008-02-28 11:13 |