Simulink.sdi.getRun
シミュレーション データ インスペクターの実行のデータにアクセス
説明
は、run
= Simulink.sdi.getRun(runID
)runID
に対応する実行内のデータへのアクセスを提供する Simulink.sdi.Run
オブジェクトを返します。シミュレーション データ インスペクターは実行の作成時に実行 ID を割り当てます。実行用の実行 ID は Simulink.sdi.getAllRunIDs
または Simulink.sdi.getRunIDByIndex
を使用して取得できます。
例
シミュレーション データ インスペクターの実行へのアクセス
シミュレーション データ インスペクターのプログラムによるインターフェイスを使用して実行された多くのタスクは、まず解析するログ データまたはインポートされたデータに対応する Simulink.sdi.Run
オブジェクトにアクセスします。たとえば、Run
オブジェクトを使用して、実行内の個々の信号に対応する Simulink.sdi.Signal
オブジェクトにアクセスできます。
この例では、関数 Simulink.sdi.Run.getLatest
、関数 Simulink.sdi.getCurrentSimulationRun
、または関数 Simulink.sdi.getRun
を使用して Run
オブジェクトにアクセスする方法を示します。
実行の作成
モデル sldemo_fuelsys
はログ作成用に構成済みです。モデルのシミュレーションを実行するときに、シミュレーション データ インスペクターは自動的に実行を作成し、実行 ID を割り当てます。
load_system('sldemo_fuelsys') sim('sldemo_fuelsys')
Simulink.sdi.Run.getLatest
を使用した実行オブジェクトの取得
この例では、モデルをシミュレートしたときに作成された実行がシミュレーション データ インスペクターで最後に作成された実行です。最後に作成された実行にアクセスする場合は、関数 Simulink.sdi.Run.getLatest
を使用します。
fuelsysRun = Simulink.sdi.Run.getLatest;
Simulink.sdi.getCurrentSimulationRun
を使用した実行オブジェクトの取得
アクセスする実行は、シミュレーション データ インスペクターで最後に作成された実行ではない可能性があります。実行がモデルの最新のシミュレーションに対応する場合、関数 Simulink.sdi.getCurrentSimulationRun
を使用して Run
オブジェクトにアクセスできます。シミュレーションによってデータがシミュレーション データ インスペクターにストリーミングされるときに、関数 Simulink.sdi.getCurrentSimulationRun
を使用して進行中のシミュレーションのデータにアクセスすることもできます。この関数は、複数のモデルを操作している場合に便利です。
この例では、モデルをシミュレートしたときに作成された実行が sldemo_fuelsys
モデルの現在のシミュレーション実行です。
fuelsysRun = Simulink.sdi.getCurrentSimulationRun('sldemo_fuelsys');
実行 ID からの実行オブジェクトの取得
タスクにも実行 ID が必要である場合、関数 Simulink.sdi.getRun
を使用して、実行データとメタデータが含まれる対応する Simulink.sdi.Run
オブジェクトを取得できます。
runIDs = Simulink.sdi.getAllRunIDs; runID = runIDs(end); fuelsysRun = Simulink.sdi.getRun(runID);
シミュレーション実行からの信号のプロット
この例では、信号を記録して作成されたシミュレーション データ インスペクター実行の Simulink.sdi.Run
オブジェクトにアクセスする方法を示します。Simulink.sdi.Run
オブジェクトから、ログに記録された信号データとメタデータが含まれる Simulink.sdi.Signal
オブジェクトを取得できます。Signal
オブジェクトと関数 plotOnSubPlot
を使用して、データをシミュレーション データ インスペクターにプロットできます。
シミュレーション実行の作成および Run
オブジェクトへのアクセス
ex_vdp
モデルは 2 つの信号を記録します。ログ データが含まれるシミュレーション実行を作成するには、モデルのシミュレーションを実行します。
sim('ex_vdp');
シミュレーション データ インスペクターは、シミュレーションで作成された各実行に一意の数値実行 ID を割り当てるか、データをインポートするか、セッションを開くことによって実行を追跡します。直前に実行したシミュレーションの実行オブジェクトにアクセスするには、関数 Simulink.sdi.getAllRunIDs
を使用して、返されるベクトルで最後の実行 ID を取ります。
runIDs = Simulink.sdi.getAllRunIDs; runID = runIDs(end);
実行の実行 ID を取得すると、関数 Simulink.sdi.getRun
を使用して実行に対応する Simulink.sdi.Run
オブジェクトを取得できます。Run
オブジェクトを使用して、実行内の信号の数など、実行に関連付けられているメタデータをチェックできます。
vdpRun = Simulink.sdi.getRun(runID); vdpRun.SignalCount
ans = int32
2
Signal
オブジェクトを使用したデータのプロット
関数 getSignalByIndex
を使用して、Run
オブジェクト vdpRun
から信号にアクセスします。
signal1 = getSignalByIndex(vdpRun,1); signal2 = getSignalByIndex(vdpRun,2);
関数 Simulink.sdi.setSubPlotLayout
を使用して 2 行 1 列のレイアウトを指定します。
Simulink.sdi.setSubPlotLayout(2,1)
データをプロットする前に、既にプロットされている任意のデータを関数 Simulink.sdi.clearAllSubPlots
を使用して消去します。
Simulink.sdi.clearAllSubPlots
サブプロットごとに 1 つの信号をプロットします。最初のサブプロットで信号をプロットするために、信号の checked
プロパティを設定できます。最初のサブプロット以外のサブプロットで信号をプロットするには、関数 plotOnSubPlot
を使用します。
signal1.Checked = true; plotOnSubPlot(signal2,2,1,true);
プロットされたデータの表示
直前に作成したプロットを表示するには、関数 Simulink.sdi.view
を使用してシミュレーション データ インスペクターを開きます。
入力引数
runID
— 数値実行識別子
スカラー
Simulink.sdi.Run
オブジェクトを必要としている実行の実行 ID。シミュレーション データ インスペクターは実行の作成時に実行 ID を割り当てます。実行用の実行 ID は、Simulink.sdi.getAllRunIDs
または Simulink.sdi.getRunIDByIndex
を使用して取得できます。
出力引数
run
— Simulink.sdi.Run
オブジェクト
'Simulink.sdi.Run
'
実行 ID に対応する実行の Simulink.sdi.Run
オブジェクト。
バージョン履歴
R2011b で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)