matlab中for循环优化

for i=1:3000000
Feps(edof8(:,i)) = Feps(edof8(:,i)) + Feps_1(:,i);
end
Feps为60070021的矩阵,edof8为83000000 的矩阵,矩阵中的每列8个数值表示了Feps中的8个位置,每循环一次,将Feps_1中的一列值放入Feps对应的8个位置当中,由于edof8中有重复的数字,所以,需要叠加运算,不能使用parfor,如何改写能提升运行速度。

img

img

如果这个循环不需要在另一个循环中使用,就不需要考虑运行时间,如果需要可以考虑提前计算不变的量,然后在循环中使用,可以大大减少计算时间