作者k0939620064 (skan)
看板MATLAB
标题[问题]是否有更快的做法?
时间Wed Apr 30 17:59:24 2014
各位大大
小弟目前遇上一个问题就是用for回圈做讯号处理时,往往都要跑个1.20分钟以上
想请问各位大大是否有更快的方法?
以下是小弟的程式码
for m=1:4
for n=1:500000
signal_square(n,m)=sum(sig((n-1)+1:n,m).^2);
% 将收到的讯号平方
phase_noise(n,m) = angle(signal_square(n,m))./2;
% 将平方的讯号取角度後除2 = phase noise
phase_sig((n-1)+1:n,m) = (((angle(sig((n-1)+1:n,m)))- phase_noise(n,m)));
% 原始讯号= arg(收下来的讯号)-phase noise
phase_comp((n-1)+1:n,m) = exp(j*phase_sig((n-1)+1:n,m));
% 原始讯号
end
end
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.117.163.74
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/MATLAB/M.1398851967.A.95F.html
1F:→ celestialgod:写MEX or 用GPU 04/30 18:58
2F:推 sunev:(n-1)+1:n ? 04/30 19:29
3F:推 tomichy:直觉上 两个回圈可以废了.... 07/03 14:34