私はこのコードを持っています:
Result = {};
% parfor k=1:1:3
for k=1:1:3
% parfor j=1:1:10
for j=1:1:10
time = 1000*j;
[A, B, C] = test (time,k,j);
Result = cat(1,Result,{k,j,time,A,B,C});
end
end
関数「test」は重いため、各「k」反復には約 20 分かかります。ご覧のとおり、変数 'Result' はセル マトリックスであり、各行には関数の結果と他の変数が含まれています。
'parfor' の最初の 'for ループ' を変更すると、結果は最初に警告 (警告: 一時変数 Result は、parfor ループの各反復の開始時にクリアされます) になり、最後にエラー (クリアされた変数への参照) になります。結果)。
追加データとして、「テスト」機能が独立しているため、2 つのループを並行して実行できます。問題は、結果を保存することです。
これを解決するにはどうしますか?