Simulation Centerツール—方程式ブラウザ
Simulation Centerはエクスペリメントやシミュレーション結果を操作するための多数のツールを提供している.
完全なリストはツールガイドを参照されたい.
方程式ブラウザ
Simulation Centerで方程式ブラウザを開く方法には以下のようなものがある.
概要
方程式ブラウザは少なくとも3つのタブで構成されており,それぞれのタブはシミュレーションで問題のある部分に対応している.
方程式ブロックと方程式系
方程式で変数が現れることを出現という.ブロックブラウザの下部に示されているブロック構造を見付けるためには,基本的な出現情報しか必要ない(インシデンス情報を参照).この情報はすべての方程式および変数について収集され,その結果2部で構成される大域的な発生率グラフになる.その後二部グラフを方程式の依存性グラフに変換するために(変数-方程式)のマッチングが使われる.方程式の依存性グラフの強力なコンポーネントは方程式ブロックと呼ばれるものである.強力なコンポーネントを位相的にソートすることで,ブロックブラウザで見られる下三角構造が現れる.
それぞれの方程式ブロックは,ブロック内の方程式にマッチした変数に関連付けられている.
ブロックの方程式を解くために,方程式と変数は1つあるいは複数の方程式系に構成される.ここで,方程式の構造の変化が扱われ,それにより方程式はさまざまな仮定のもとで簡約されることが可能になる.この結果,木のノードで仮定を簡約し,葉に方程式系を持ち,それぞれの方程式または変数が1つ以上の方程式系の一部である可能性のある,木構造になる.
分類
方程式ブラウザの分類はいくつかのレベルで見られる.それぞれにレベルは,このセクションで変数からブロックレベルの順に説明する.
変数の分類
方程式ブラウザでは,分類は値のある変数だけを扱う.つまり,外部オブジェクトの変数は考慮されない.残りのスカラー変数はすべて, 値の領域および時間のばらつきに従って,3つの分類のうちの一つに属す.それぞれのカテゴリーには独自のシンボルがある.
離散時間変数はイベントにおいてのみ値が変更できる.離散値変数は離散集合からの値だけを取ることができる.連続時間変数はイベントとイベントの間で連続的に値を変更することができ(それゆえ離散値ではない),イベントにおいて不連続となることが許されている.クロック変数は,関連する時計のクロック単位の値だけを変更することができる.可能な組合せは,Modelicaのスカラータイプと可変性の制限に直接対応している.
インシデンス情報
アプリケーションによって,出現には異なるレベルの詳細情報が関連付けられていることがある.
基本的なインシデンス情報
ブロック構造を見付けるために使われる基本的なインシデンス情報は以下のいずれかとしての分類で構成されている.
混合値のブロックの離散部分に対する基本的なインシデンス情報,従属インシデンスは塗り潰されたシンボル(離散値変数の場合常に円)で,i独立インシデンスは空の円で記されている.
発生率グラフでは,独立インシデンスは空の円で,従属インシデンスは塗り潰されたシンボル(常に円とは限らない)で示される.
離散値変数の出現はそれ以上分類されることはないが,連続値変数の出現は,現れる系の種類によってそれ以上分類されることがある.
高度なインシデンス情報
連続値変数についてより詳しいインシデンス分類が必要な場合は方程式系のコンテキストで起こる.変数についての方程式の剰余の偏微分は以下のいずれかとして優勢度の低い順に分類される.
これは高度なインシデンス情報と呼ばれる.発生率グラフでは,発生率グラフの凡例で説明されているように,情報は塗り潰された出現シンボルの色と形状(線形系の出現可変性に使われる)を使って示される.方程式系の外側では,発生率グラフは基本的なインシデンス情報だけを表示する.
方程式系の分類
方程式系は,解く対象となる変数の値の領域によって分類される.
方程式系の大きさは方程式の合計の階数で測定される.これは通常解く対象の変数の数と一致する.テアリングが適用されると,分裂した系の大きさは,テアリング分割の内部の三角系における方程式を数えずに定義される.
ブロックの分類とホモトピー構造
最後に,値の領域,時間の可変性,方程式系のクラスが,ブロックの方程式系からブロック全体に伝播される.
ブロックの大きさの特徴の場合は,ブロックの中の方程式の合計の階数ではなく,方程式系の最大のサイズが使われる.
ブロックブラウザで表示されるブロック構造の上で,初期問題のブロックがホモとピー初期化にリンクされていることもある.この構造は現在は方程式ブラウザでは見えない.
ブロックブラウザ
ブロックブラウザはシミュレーション問題(初期化/積分/出力/クロックパーティションN)の選択した部分に属す方程式ブロックを,解かれる順に示す.ブロックは対角線上に配置され,ブロックとブロックの間の依存性リンクは対角線の左側の点で示される.位置(i,i)のブロックが(j,j)のブロックに依存する場合,(i,j)に依存性リンクの点が付く.依存性リンクの点をクリックすると,依存するブロックと依存されるブロックとの間をジャンプすることができる.依存性リンクのツールチップは依存されるブロックによって解かれ,依存するブロックで使われる変数を表示する.
ブロックに関する情報がもっと得たい場合は,ブロックをクリックして選ぶとそのブロックに関する情報が右側のブロックビューに表示される.ブロックが選ばれると,依存されたり依存したりする関係を表すリンクがすべてハイライトされる.
ブロックが対角線上に配置され,対角線の左側に依存性リンクが示されている方程式ブロック
色スキーム
各分類軸にはユーザが選べる色スキームがあり,特定のクラスをすぐに見付けるのに使うことができる.選ばれた色スキームは,ブロックのまとめの系および発生率グラフのインシデンスにおけるブロックブラウザのブロックの方程式ブラウザ全体に適用される.
フィルタリング
系のクラス,値の領域,時間の可変性の3つの分類軸によってブロックにフィルタリングを施すこともできる.フィルタリングを施す項目が選ばれていない場合,他のフィルタ軸によって選ばれた部分集合内にそのクラスのブロックがいくつあるかをカッコ内に表示する.つまり,特定のブロックを見付けることに加え,ブロックフィルタだけを使って以下のような大域的なモデルの統計値を得ることができるのである.
ブロックの中の最大の方程式系の大きさでフィルタリングすることも可能である.トーンサイズを使用がチェックされていると,テアリングの後の最大の方程式系の大きさがフィルタリングに使われる.大きさのボタンには,最大の方程式系の大きさのブロックがいくつあるかを示すツールチップが付いている.フィルタによって現在選ばれているブロックの部分集合に存在する大きさは太字で示される.
混合値領域を持つブロックと,線形系が3つあることを示すブロックフィルタ
フィルタが適用されたブロックは,方程式ブロックビューでは小さい灰色のブロックとして表される.フィルタが適用されたブロックを拡張したり,フィルタが適用されたブロックの1グループに対するフィルタリング効果を取り消したりするためには,そのブロックを右クリックしてブロックを拡張を選ぶ.拡張されたブロックを折りたたむには,方程式ブロックビューの任意の場所を右クリックして,拡張したブロックをたたむを選ぶ.
ブロックビュー
ブロックブラウザでブロックが選ばれているときは,方程式ブラウザの右側のブロックビューに,より詳細に表示される.
ハイライトされた方程式系,インシデンスとそれに対応する方程式および変数の選択肢を表示するブロックビュー
ブロックのまとめ
ブロックのまとめは3つの異なる分類軸に沿って選ばれたブロックの分類の他,テアリングの前と後の最大の方程式系の大きさを表示する.下部には,葉に方程式系を持つ木構造がある.木の枝にあるチェックボックスは,when節,if式,if方程式の条件等,仮定の簡約化のアクティブな選択肢を示す.仮定の簡約化の完全な選択肢は常に存在する.つまり木で選択された分岐ノードはどれもその下にアクティブな選択肢があるということである.これは,重複しないアクティブな方程式系が常に存在するということを意味する.アクティブな集合では,1つの方程式が,その系に属する方程式,変数,接続で注目度が上がったものに対してハイライトされることがある.そのシステムに対して生成されたコードに行く等のシステム特有のアクションを行うボタンをクリックする.条件推定値の計算が有効な場合,現在のブロックが積分タブか出力タブにあれば,そのシステムの条件推定をプロットすることもできる.初期化タブにあるときは,システムのリンクのツールチップとして,初期化の前と後の条件推定が利用できる.
ブロックのまとめのアクションボタンをクリックしてそのシステムに対する条件推定をプロットする等のシステム特有のアクションを行ったり,システムに対して生成されたコードを見たりする.
発生率グラフ
発生率グラフは現在選択されているブロックの中のアクティブな方程式の接続グラフを表示する.行はブロック中の等式にリストされている方程式に対応し,列はブロックで解かれた変数にリストされている変数に対応する.ブロック中の等式で方程式が選ばれると,発生率グラフで対応する行も選ばれ,ブロックで解かれた変数で変数が選ばれると,対応する列も選ばれる.
発生率グラフは,高度なインシデンス情報とサブブロックへの可能な分割の両方が表示される.灰色の直線で示された分割は,方程式系のテアリングに対応する.黄色い背景で示された分割は,混合された方程式のグループ化に相当する.
ブロック中の等式
現在選択されているブロックの方程式はブロック中の等式にリストされる.選択されたブロックに属する変数は太字でマークされる.青で示される変数をクリックすると,方程式ブラウザで関連した場所へのリンクを含むメニューが現れる.方程式のすべての変数に対するリンクを含む,方程式のコンテキストメニューもある.
ブロックで解かれた変数
選択されたブロックで解かれた変数はブロックで解かれた変数にリストされる.シミュレーション結果で利用できない変数は,無効なものとして表示される.変数は,現在の出力設定のため,保存されていない内部的なヘルプ変数であるため,またはモデルがまだシミュレーションされていないため,欠損している可能性がある.
開始属性の列は,変数の初期値がどのように使われるか,および実際の初期値を示す.ここで直接初期値を変更することも可能である.初期値は次の3つの方法のいずれかで使われる.
—他の変数から直接計算される.初期値は初期化には影響しない.
初期化の列は初期値の後の実際の値を示す(その変数に対するシミュレーションの結果が利用可能な場合).
プロット
モデルのシミュレーションが実行されると,シミュレーション結果で利用可能な変数すべての横にチェックボックスが付く.チェックボックスをクリックすると,現在アクティブなプロットでその変数がプロットされる.新規のプロットウィンドウあるいはサブプロットを生成する方法についての情報は,プロットウィンドウをご覧いただきたい.
類似した変数構造を持つ複数のエクスペリメントがある場合は,その変数が存在する別のエクスペリメントを選んで,それから自動プロットを行うことができる.他のエクスペリメントからのプロットを設定するためには,Plot fromラベルでエクスペリメント名をクリックして,プロットの元となるエクスペリメントを選ぶ.