| Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) | 
![]()  | 
	
| 
	 | 
| 		
			
			 | 
		#1 | 
| 
			
			 初级会员 
			
			
			
			注册日期: 2010-03-14 
				
				
				
					帖子: 1
				 
				
				
				声望力: 0 ![]()  | 
	
	
	
		
		
			
			 
			
			请问一个二维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  | 
| 
		 | 
	
	
	
		
		
		
		
			 
		
		
		
		
		
		
		
			
		
		
		
	 |