getResultByIndex
信号の比較結果を返す
説明
例
シミュレーション データ インスペクターを使用して、実行した比較で使用する信号の許容誤差値をプログラムによって指定できます。この例では、航空機用縦方向飛行制御システムのモデルをシミュレーションして収集したデータを比較します。各シミュレーションは入力フィルターの時定数に異なる値を使用して、入出力信号をログに記録します。シミュレーション データ インスペクターと信号許容誤差を使用して結果を比較し、時定数の変更の影響を解析します。
まず、シミュレーション データを含むセッション ファイルを読み込みます。
Simulink.sdi.load('AircraftExample.mldatx');
セッション ファイルには 4 つの実行が含まれます。この例では、ファイル内の最初の 2 つの実行からデータを比較します。ファイルから読み込まれた最初の 2 つの実行について、Simulink.sdi.Run
オブジェクトにアクセスします。
runIDs = Simulink.sdi.getAllRunIDs; runIDTs1 = runIDs(end-3); runIDTs2 = runIDs(end-2);
許容誤差を指定しないで 2 つの実行を比較します。
noTolDiffResult = Simulink.sdi.compareRuns(runIDTs1,runIDTs2);
関数 getResultByIndex
を使用して q
信号と alpha
信号の比較結果にアクセスします。
qResult = getResultByIndex(noTolDiffResult,1); alphaResult = getResultByIndex(noTolDiffResult,2);
各信号結果の Status
プロパティをチェックし、比較結果が許容誤差の範囲内であるか範囲外であるかを確認します。
qResult.Status
ans = ComparisonSignalStatus enumeration OutOfTolerance
alphaResult.Status
ans = ComparisonSignalStatus enumeration OutOfTolerance
比較では、すべての許容誤差に 0
の値を使用しているため、OutOfTolerance
の結果は信号が同一でないことを意味します。
信号の許容誤差値を指定して、時定数の影響をさらに解析できます。比較対象の信号に対応する Simulink.sdi.Signal
オブジェクトのプロパティを設定し、許容誤差を指定します。比較ではベースライン信号に対して指定された許容誤差が使用されます。この例では、時間の許容誤差と絶対許容誤差を指定します。
許容誤差を指定するには、最初にベースライン実行から Signal
オブジェクトにアクセスします。
runTs1 = Simulink.sdi.getRun(runIDTs1); qSig = getSignalsByName(runTs1,'q, rad/sec'); alphaSig = getSignalsByName(runTs1,'alpha, rad');
q
信号に対して、それぞれ AbsTol
プロパティと TimeTol
プロパティを使用して、0.1
の絶対許容誤差と 0.6
の時間の許容誤差を指定します。
qSig.AbsTol = 0.1; qSig.TimeTol = 0.6;
alpha
信号に対して、0.2
の絶対許容誤差と 0.8
の時間の許容誤差を指定します。
alphaSig.AbsTol = 0.2; alphaSig.TimeTol = 0.8;
結果を再度比較します。比較の結果にアクセスし、各信号の Status
プロパティをチェックします。
tolDiffResult = Simulink.sdi.compareRuns(runIDTs1,runIDTs2); qResult2 = getResultByIndex(tolDiffResult,1); alphaResult2 = getResultByIndex(tolDiffResult,2); qResult2.Status
ans = ComparisonSignalStatus enumeration WithinTolerance
alphaResult2.Status
ans = ComparisonSignalStatus enumeration WithinTolerance
入力引数
アクセスする信号の結果を含む実行の比較結果。Simulink.sdi.DiffRunResult
オブジェクトとして指定します。
実行の比較結果内の信号のインデックス。整数として指定します。
例: 2
出力引数
指定されたインデックスでの信号の比較結果。Simulink.sdi.DiffSignalResult
オブジェクトとして返されます。
バージョン履歴
R2012b で導入
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- 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)