![]() |
请问一个二维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 |
所有时间均为北京时间。现在的时间是 03:24。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.