OpenModelicaの使い方 User’s Guide解読_20

OpenModelica

引き続きUser’s Guide(Release v1.22.1)を読んでいきます。
103ページからの内容となります。
前回の記事はこちら

チャプター7はデバッグについての内容です。
変換デバッガとアルゴリズムデバッガの2種類があるようです。
まずは数式デバッガについて説明します。
使い方はツール>オプション>シミュレーションで-d=infoXmlOperationsのオプションを設定するか、ツール>オプション>デバガで「操作を作る」のチェックボックスをONにします。
「操作を作る」は英語版では「Generate operations in the info xml」となっていますが、翻訳がいまいちですね。。。

変換デバッガ設定箇所

早速使ってみます。
サンプルモデルとして[インストールフォルダ]\share\doc\omc\testmodelsに「Debugging.mo」というモデルがあるのでこれを使います。
Debugging.moを開き、ChatteringEvents1というモデルを実行します。
すると、50%程度進んだところでシミュレーションが進まなくなります。
メッセージブラウザにゼロクロッシングを検出しステップサイズが短くなっていると出力されています。

ChatteringEvents1実行時のメッセージ

Debug moreのリンクをクリックすると変換デバッガが開きます。
モデル内の変数や数式をまとめて表示してくれます。
具体的にはどうしたらエラーがなくせるかはまだわかりませんが、ソースを追うよりはわかりやすそうです。

変換デバッガ

次はアルゴリズムデバッガです。
こちらはソースコードにブレイクポイントを設定し、デバッグする機能です。
テキストビューにし、行数の左の部分をクリックするとブレイクポイントを設定できます。
ブレイクポイントを設定すると赤い丸が付きます。

デバッグを開始するにはいくつか方法がありそうですが、「アルゴリズムデバガでシミュレート」で実行するとデバッガが起動し、ブレイクポイントで実行が停止します。

ここまででチャプター7終了となります。

コメント

タイトルとURLをコピーしました