for ループを 1000 のバッチで実行する必要があります。しかし、最初の実行時に 'cc' が 100 に達しない場合は、cc が 100 に達するまで 1000 のバッチをさらに実行する必要があります。
これは while ループを使用して実行できることはわかっていますが、並列ツールボックスparfor
(おそらく GPU も) を使用する必要があり、知る限り、while ループはサポートされていません。
基本的に、if ループ内の for ループ インデックスを変更 (リセット) する必要があります。ただし、MATLAB の for ループは、ループ内でインデックス (この場合は 'i') を変更できないように設計されているようです。これを回避する方法はありますか?while ループを使用せずにこれを行うには、よりスマートな方法が必要です。助言がありますか?
for i=1:1000
if (abs(i) <= gamma)
% etc..
cc = cc + 1;
end
if cc < 100
i = 1;
end
end