長時間の FOR ループを途中で停止し​、再スタートするには​どのようにすればよい​ですか?

12 vues (au cours des 30 derniers jours)
MathWorks Support Team
MathWorks Support Team le 6 Fév 2013
MATLAB のプログラムにおいて、長時間の FOR ループを途中で停止し、再スタートする方法を教えてください。たとえば、以下のようなプログラムの場合について教えてください。
<Beginning Code>
for x = 1:1000000
<Iterative Code>
end
<Final Code>
FOR 文内の処理を繰り返し実行中に一時停止し、別の処理を行ってから、続きを再スタートする場合についてです。

Réponse acceptée

MathWorks Support Team
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>

Plus de réponses (0)

Catégories

En savoir plus sur コマンドの入力 dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!