Vectorize loop to speed up
조회 수: 2 (최근 30일)
이전 댓글 표시
Hi,
This segment of code takes 13 seconds to run and as it runs hundreds of times it needs to be drastically speed optimized. Wonder if it can be done. Parallelizing the loop doesn't seem to help much.
Parameters are:
tau is a cell array of 384 each a matrix of 202 x 202 double elements.
FFT is a cell array of 384 each a vector of 5000 double elements.
omega is a vector of doubles of length 5000.
the outer loop 'flow' to 'fhigh' is 1:1:150
Converting cell arrays to arrays helps only slightly.
Thanks in advance.
P=zeros(size(tau{1}));
for k=flow:fhigh
F=zeros(size(tau{1}));
for j=1:nchan
F=F+FFT{j}(k)*exp(i*omega(k)*tau{j});
end
F=F.*conj(F);
P=P+F;
end
댓글 수: 5
답변 (2개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!