長時間の FOR ループを途中で停止し、再スタートするにはどのようにすればよいですか?
12 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
MATLAB のプログラムにおいて、長時間の FOR ループを途中で停止し、再スタートする方法を教えてください。たとえば、以下のようなプログラムの場合について教えてください。
<Beginning Code>
for x = 1:1000000
<Iterative Code>
end
<Final Code>
FOR 文内の処理を繰り返し実行中に一時停止し、別の処理を行ってから、続きを再スタートする場合についてです。
Réponse acceptée
MathWorks Support Team
le 6 Fév 2013
以下のような手順で行います。プログラムは以下の通りです。
<Beginning Code>
for x = 1:1000000
<Iterative Code>
end
<Final Code>
FOR文実行中に Ctrl + C により、一旦プログラムを終了させます。もし、CPU の負荷が高く、Ctrl + C が効かない場合は、FOR 文内に DRAWNOW コマンドを入れます。これにより、FOR 文実行中にも Ctrl + C を認識しやすくなります。
FOR ループが停止したら、以下のコマンドを実行します。
save TempData
これにより、停止した時点の状態の変数が MAT-ファイル に保存されます。この状態でその他の処理を行ったり、MATLAB を一旦終了することも可能です。
再開するためには、以下のように MAT-ファイル をロードし、FOR 文の開始位置を N に合わせてからてから FOR 文を再開します。
load TempData
N = x;
for x = N:1000000
<Iterative Code>
end
<Final Code>
0 commentaires
Plus de réponses (0)
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!