問題タブ [matlab-app-designer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
534 参照

matlab - parsim の実行を中止する

MATLAB GUI を使用して並列シミュレーションを中止できるユース ケースでは、ユーザーが [停止] ボタンを押した後、スケジュールされたすべてのシミュレーションを停止したいと考えています。すべてのシミュレーションは、parsimコマンドを使用して一度に送信されるため、GUI 変数 (App Designer) へのコールバックのようなものが最も望ましいソリューションです。

私が検討したアプローチは、望ましい解決策を正確には提供していませんでした:

  • シミュレーション マネージャーは、独自のインターフェイスを使用してシミュレーションを閉じる機能を提供します。コードしかない場合は、停止ボタンが実行されます...
  • parsimSimulink.SimulationInputクラスを入力として使用してシミュレーションを実行しpreSimFcn、各シミュレーションの開始時に を変更できるようにします。これまでのところ、意図的にエラーをスローする以外に、初期化フェーズでシミュレーションを「スキップ」する方法は見つかりませんでした。

ご協力ありがとうございました!


更新 1 : を使用しpreSimFcnて終了時間を開始時間と等しく設定すると、シミュレーション時間が大幅に短縮されます。しかし、最初のステップはまだ計算されているため、より良い解決策が必要です。


更新 2 : の実行中に意図的にエラーをスローします。preSimFcnたとえば、次のように設定します。

これまでのところ、私にとって最短の終了時間を提供します。ErrorMessageただし、オブジェクトのエラーをキャッチして特定する必要がありSimulink.SimulationOutputます。これはまさに私が避けたかった「醜い」実装であるため、問題はまだアクティブです。