Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2010-05-04, 21:00   #1
ppyy
初级会员
 
注册日期: 2010-03-14
帖子: 1
声望力: 0
ppyy 正向着好的方向发展
默认 请问一个二维DTFT符号运算的问题

请问一个二维DTFT符号运算的问题
本人在做信号处理的实验中自已写了一个DTFT的运算Script,先用符号运算得到对应Omiga1 和 Omiga2的一个符号式,再
用meshgrid 得到坐标和用 eval计算各个点的值,最后再画图surf,

注明:如果直接用meshgrid 再用 surf 画图的话,只有一个Omiga有效,另一个总是不被计算,不知道为什么?
所以加了两重循环体来计算各个点,下策。

但是这样的话这个Script运行的时间非常长,大概两个小时左右,很郁闷。

本人的机子:1.83G 双核 1G内存 Matlab 2007a 运行时 CPU在50%左右

是否有什么优化的方法,请指教。非常感谢,下面是一些代码参考:

syms omgxsym1 omgxsym2
dtft2Dspeget=dtft2DFliter(data,'pars',omgxsym1,omgxsym2)
I=j;
datadtft2Dspeget=zeros(51);
for omgxsym1=0:0.01:0.5
for omgxsym2=0:0.01:0.5
datadtft2Dspeget(floor(omgxsym1/0.01)+1,floor(omgxsym2/0.01)+1)=eval(abs(dtft2Dspeget));
end
end
figure(9)
[omgxsym1,omgxsym2]=meshgrid(0:0.01:0.5, 0:0.01:0.5);
surf(omgxsym1,omgxsym2,datadtft2Dspeget),shading flat
ppyy 当前离线   回复时引用此帖
回复

主题工具
显示模式

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

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



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


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