2
據瞭解,MATLAB在for循環中運行速度慢。我試圖矢量化下面的代碼,但沒有成功。也許我對實現有誤。代碼的簡單加速
for I = NS2:-1:1
A = 0;
for J=1:8
A = A + KS2(J,I)*FA(J);
end
S2 = S2 + (SS2(1,I)*sin(A) + SS2(2,I)*cos(A));
end
其中: FA =矩陣的1x8
KS2 =矩陣8X25
SS2 =矩陣2×25
A =標量
S2 =標量
我嘗試以這種方式改進它:
A = 0;
J = 1:8;
for I = NS2:-1:1
A = FA(1,J)*KS2(J,I);
S2 = S2 + (SS2(1,I)*sin(A) + SS2(2,I)*cos(A));
end
但是,此改進的運行時間與原始代碼類似。
非常感謝你爲你的快速答覆。 – julian