5
私はMatlabを初めて使うので、これが可能かどうかはわかりません。私は、単純を有するforループ:A.xとB.xは、長さnの二つのベクトルであり、およびindexBはB.x.にA.xの要素から適切なマッピングを含む長さnのベクトルであるカスタムインデックスを使用してforループをベクトル化する方法
for i=1:n
B.x(indexB(i)) += A.x(i);
end
このループをベクトル化できますか?
私はこの例に続いて、そう思う
AとBの両方が同じ長さでない場合でもこれは機能しますか? –
はい、ただし、左右のインデックス間に1対1のマッピングが必要です。この場合、B.xに使用されるインデックスベクトル 'indexB'とA.xに使用されるインデックスベクトル' [1:n] 'が必要です。そして明らかに、指数が参照する要素は、存在する必要があります。 – Maurits