-1

入力変数に対して 5 つの関数のカスケードを実行する単一の M ファイルがあります。各ステップには約 1 分かかります。4 番目のステップには 20 分かかります。私はそれをスピードアップするために常に4番目の機能をいじっています。ただし、m ファイルを実行するたびに、最初の 3 つの関数が実行されるまで 3 分間待たなければなりません。何か問題が発生したときに 3 番目のステップの最後に戻り続けることができるように、ブレークポイントを設定することは可能ですか。

3 番目の関数の出力を保存し、関数 4 で m ファイルを作成するだけでよいことはわかっていますが、カスケードへの入力を常に変更したいので、これは避けたいと思います。

4

1 に答える 1

1

おそらく、これはあなたに適したワークフローです。

で区切られたセルを含むスクリプトを作成します%%

%% Specify inputs
in = ['something'];
%% Run function 1
a = f1(in, param1_1, param1_2, param1_n);
%% Run function 2
b = f2(a, param2_1, param2_2, param2_n);
%% Run function 3
c = f3(b, param3_1, param3_2, param3_n);
%% Run function 4
out = f4(c, 0.0001); %0.0001 is the tolerance

次に、カーソルをセル 1 に置き、 を押しCtrl Shift Enterてセルを実行し、次のセルに進みます (同じことを行うツールバー ボタンがあります)。セル 2 と 3 についても同じことを行います。

0.0001セル 4 に到達したら、エディターでカーソルを使用して公差 (私の例では ) を選択します。

プレス:

  • Ctrl Numpad +許容値に 1 を追加してセルを実行するには
  • Ctrl Numpad -許容値から 1 を減算し、セルを実行します。
  • Ctrl Numpad *許容値を 0.1 倍してセルを実行するには
  • Ctrl Numpad /許容値を 0.1 で割り、セルを実行します。

ここでも、同じことを行うためのツールバー ボタンと、増分と係数を変更するためのツールバー編集ボックスがあります。

a、などの中間変数を変更する必要がある場合はbc前のセルのいずれかをもう一度実行してください。

于 2013-06-11T10:16:30.223 に答える