声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2564|回复: 7

[编程技巧] 一样的语句不一样的结果

[复制链接]
发表于 2007-5-12 21:43 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
大家帮忙看下面的程序:
%FFT方法消噪演示程序
>> n=1024;
>> t=1:n;
>> x=rand(size(t));
>> Y=fft(x,n);
>> Y(200:824)=zeros(size(1:625));
>> z=ifft(Y,n);
>> for i=1:n
t=i/n;
t1=(t-1/8)^2;t3=(t-3/8)^2;
t4=(t-4/8)^2;t6=(t-6/8)^2;
t7=(t-7/8)^2;m=640*pi;
k(i)=i;
s(i)=cos(2*pi*280*t)*(exp(-m*t1)+exp(-m*t3)+exp(-m*t4)+exp(-m*t6)+exp(-m*t7));
end
>> y=s+z;
>> subplot(3,2,1);
>> plot(k,s);axis([0,1024,-2,2]);xlabel('t');
>> s1=fft(s,n);
>> subplot(3,2,2);
>> plot(k,s1);axis([0,500,-100,100]);xlabel('f');
>> subplot(3,2,3);
>> plot(k,y);axis([0,1024,-2,2]);xlabel('t');
>> s2=fft(y,n);
>> subplot(3,2,4);
>> plot(k,s2);axis([0,500,-100,100]);xlabel('f');
>> subplot(3,2,5);
>> plot(k,s);axis([0,1024,-2,2]);xlabel('t');
>> subplot(3,2,6);
>> plot(k,s1);axis([0,500,-100,100]);xlabel('f');
由于图片太大没法上传,请大家自己运行一下吧,但大家注意一下结果
后面两句画图命令和上面的两句

plot(k,s);axis([0,1024,-2,2]);xlabel('t');
plot(k,s1);axis([0,500,-100,100]);xlabel('f');
是一样的,但画出来的图却有些不一样,这是为什么呢?这之间k,s,s1的值并没有改变啊.
回复
分享到:

使用道具 举报

发表于 2007-5-13 11:00 | 显示全部楼层
原帖由 zhxcumt 于 2007-5-12 21:43 发表
大家帮忙看下面的程序:
%用FFT方法消噪演示程序
>> n=1024;
>> t=1:n;
>> x=rand(size(t));
>> Y=fft(x,n);
>> Y(200:824)=zeros(size(1:625));
>> z=ifft(Y,n);
>> for i=1:n
t=i/n;
t1=(t-1/8)^2;t ...



已测试,不存在你说的问题
untitled.bmp
 楼主| 发表于 2007-5-13 17:23 | 显示全部楼层
是直接粘贴运行的吗?我怎么运行是这种结果:
未命名.bmp
 楼主| 发表于 2007-5-13 17:24 | 显示全部楼层
最后一辐图的X轴有波动
发表于 2007-5-13 20:09 | 显示全部楼层
显示问题,放大了看波动的地方也等于零
我估计是各自电脑的显卡不同
发表于 2007-5-14 00:03 | 显示全部楼层
原帖由 zhxcumt 于 2007-5-13 17:23 发表
是直接粘贴运行的吗?我怎么运行是这种结果:
25562



我附上的图片是直接运行后粘贴过来的
 楼主| 发表于 2007-5-14 09:04 | 显示全部楼层
那这个程序为什么起名FFT的消噪呢,这可是教材上的原程序啊,画图语句根本就没变,怎么能说明消噪过程呢?十分疑惑……
发表于 2007-5-23 11:20 | 显示全部楼层
我说呢 看了半天没看出个消噪声来
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-12-13 16:08 , Processed in 0.068398 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表