Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
 
 
主题工具 显示模式
旧 2008-06-20, 11:26   #2
baltaM
初级会员
 
注册日期: 2008-06-09
年龄: 37
帖子: 12
声望力: 17
baltaM 正向着好的方向发展
默认

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
baltaM 当前离线   回复时引用此帖
 


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
求三圆交点问题 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


所有时间均为北京时间。现在的时间是 19:58


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.