parfor に変換したいネストされた for ループがあります。
row = 1;
for i = 5 : 0.2 : 5.4
col = 1;
for j = 2 : 0.5 : 2.5
matrx(row, col) = i * j;
col = col + 1;
end
row = row + 1;
end
これが可能になる方法はありますか?
parfor に変換したいネストされた for ループがあります。
row = 1;
for i = 5 : 0.2 : 5.4
col = 1;
for j = 2 : 0.5 : 2.5
matrx(row, col) = i * j;
col = col + 1;
end
row = row + 1;
end
これが可能になる方法はありますか?
非常に単純化されたバージョンのコードのみを表示していることを願っていますが、とにかく、parfor の秘密は、Matlab の多数のメッセージを聞いたり、ドキュメントを読んだりすることで見つけることができます。適切な Matlab コーディング プラクティスを学習することから始め、Matlab がparfor
ループで必要とするデータにデータを適合させるような方法でコードを合理化します。
注意事項:
最終的なアプリケーションによって異なりますが、これは私が行う 1 つの方法です。
iVal = 5 : 0.2 : 5.4;
jVal = 2 : 0.5 : 2.5;
iLen = length(iVal);
jLen = length(jVal);
matrx = zeros(iLen, jLen);
parfor i = 1:iLen
dummy = zeros(1, jLen);
for j = 1:jLen
dummy(j) = iVal(i) * jVal(j);
end
matrx(i,:) = dummy;
end