メインコンテンツ

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

シミュレーション データ インスペクターでデータを比較する方法

シミュレーション データ インスペクターによる比較プロセスは、要件に適合するよう複数の方法でカスタマイズできます。実行を比較する場合、シミュレーション データ インスペクターは次を行います。

  1. [整列] 設定に基づいて、[ベースライン] の実行と [比較対象] の実行内の信号のペアを整列します。

    シミュレーション データ インスペクターは整列できない信号は比較しません。

  2. 指定した [同期方法] に従って、整列された信号のペアを同期します。

    同期で追加された時間点の値は、[ベースライン] 信号に指定された [内挿法] に従って内挿されます。

  3. 信号のペアの差分を計算します。

    比較のため、ソフトウェアは double 以外のすべての信号データ型のデータを double にアップキャストします。

  4. 差分結果を指定した許容誤差と比較します。

比較実行が完了すると、比較の結果がナビゲーション ペインに表示されます。

ステータス比較結果

差分が指定した許容誤差の範囲内にある。

差分が指定した許容誤差に違反する。

信号が、[比較対象] 実行からの信号と整列していない。

時間間隔が異なる信号を比較する場合、シミュレーション データ インスペクターはオーバーラップする間隔で信号を比較します。

信号の整列

整列ステップにおいて、シミュレーション データ インスペクターは、[ベースライン] 実行での特定の信号と組み合わせる信号を、[比較対象] 実行で決定します。シミュレーション データ インスペクターを使用して信号を比較する場合、[ベースライン] の信号と [比較対象] の信号を選択して整列ステップを完了します。

シミュレーション データ インスペクターは、[データ ソース]、[パス]、[SID]、[信号名] の各プロパティの組み合わせを使用して、信号を整列します。

プロパティ説明
データ ソースMATLAB® ワークスペース内の変数の名前
パスモデル内のデータのソース用ブロック パス
SID

自動的に割り当てられた Simulink® 識別子

信号名モデル内の信号の名前

既定の整列設定では、シミュレーション データ インスペクターはこのフロー チャートに従って信号を実行間で整列します。

Flow chart of how the Simulation Data Inspector aligns signals.

整列に使用する信号の各プロパティの優先順位を、シミュレーション データ インスペクターの [基本設定] で指定できます。[配置の基準] フィールドは、信号の整列に使用する優先順位の最も高いプロパティを指定します。優先順位は後続の [次の基準] フィールドごとに下がります。[配置の基準] フィールドには最優先の整列プロパティを指定しなければなりませんが、任意の数の [次の基準] フィールドを [なし] に指定することができます。

同期

比較する信号が完全に同一の時間点を含んでいないことがあります。シミュレーション データ インスペクターの比較の同期ステップでは、信号の時間ベクトルの不一致を解決します。同期方法として、union または intersection を選択できます。

union 同期を指定すると、シミュレーション データ インスペクターにより 2 つの信号間のすべてのサンプル時間を含む時間ベクトルが構築されます。どちらの信号内にも元々存在しない各サンプル時間について、シミュレーション データ インスペクターは値を内挿します。図の 2 番目のグラフは union 同期のプロセスを示しています。ここで、シミュレーション データ インスペクターは、各信号に追加されるサンプルを特定し、塗り潰されていない円で表します。最後のプロットは、シミュレーション データ インスペクターが追加された時間点の値を内挿した後の信号を示しています。シミュレーション データ インスペクターは最後のグラフの信号を使用して差分を計算するため、計算された差分の信号には、交差する時間領域にわたって信号間にあるすべてのデータ点が含まれます。

When you compare two signals and specify union synchronization, the Simulation Data Inspector interpolates the value for any sample time not originally present in either signal.

intersection 同期を指定すると、シミュレーション データ インスペクターは比較で両方の信号に存在するサンプル時間のみを使用します。2 番目のグラフでは、シミュレーション データ インスペクターは比較するための対応するサンプルがないサンプルを特定し、塗り潰されていない円で示されています。最後のグラフでは、比較に使用される信号を、2 番目のグラフで特定されたサンプルなしで示しています。

When you compare two signals and specify intersection synchronization, the Simulation Data Inspector uses only values from the sample times present in both sample times.

union 同期ではより正確な結果が得られるため、これを使用することをお勧めします。intersection 同期を使用すると、シミュレーション データ インスペクターで差分を計算するデータ点が少なくなり、内挿しないため、比較はすぐに完了します。ただし、intersection 同期では一部のデータは破棄され、精度が失われます。

内挿

信号の内挿プロパティは、シミュレーション データ インスペクターでの信号の表示方法と、追加のデータ値の同期での計算方法を決定します。2 つの信号を比較する場合、シミュレーション データ インスペクターは、[ベースライン] 信号と [比較対象] 信号の両方に対して、[ベースライン] 信号に指定された [内挿法] を使用します。ゼロ次ホールド (zoh) または線形近似を使用したデータの内挿を選択できます。また、内挿なしを指定することもできます。

Three plots of sine wave. The first plot uses linear interpolation. The second plot uses zero-order hold interpolation. the third plot uses no interpolation.

[内挿法]zoh または none を指定すると、シミュレーション データ インスペクターは内挿されたサンプル時間の以前のサンプルのデータを複製します。linear 内挿を指定すると、シミュレーション データ インスペクターは内挿点のいずれかの側のサンプルを使用して、内挿された値を線形に近似します。通常、離散信号は zoh 内挿を使用し、連続信号は linear 内挿を使用します。信号について、信号のプロパティで [内挿法] を指定できます。

許容誤差の指定

シミュレーション データ インスペクターで、信号についての許容誤差のスコープと値を指定できます。絶対許容誤差、相対許容誤差、および時間の許容誤差の値の任意の組み合わせを使用して、許容誤差帯域を定義することができ、指定された許容誤差が個別の信号に適用されるか、実行内のすべての信号に適用されるかを指定できます。

許容誤差のスコープ

シミュレーション データ インスペクターでは、許容誤差をデータに対してグローバルに指定することも、個別の信号に対して指定することもできます。グローバル許容誤差値は、実行内で [グローバル許容誤差オーバーライド]yes に設定されていないすべての信号に適用されます。データに対するグローバル許容誤差値は、[比較] ビューのグラフィカルな表示領域の最上位で指定できます。信号固有の許容誤差値を指定するには、信号のプロパティを編集して、[グローバル許容誤差オーバーライド] プロパティが yes に設定されていることを確認します。

許容誤差の計算

シミュレーション データ インスペクターで、実行に対する許容誤差帯域を指定したり、絶対許容誤差、相対許容誤差および時間の許容誤差の値の組み合わせを使用する信号を指定したりできます。実行に対する許容誤差を指定する、または複数の種類の許容誤差を使用する信号を指定する場合、各許容誤差は各点での許容誤差について異なる答えを出す可能性があります。シミュレーション データ インスペクターは、各データ点に対して最も緩い許容誤差の結果を選択することで、許容誤差帯域全体を計算します。

絶対許容誤差プロパティと相対許容誤差プロパティのみを使用して許容誤差を定義すると、シミュレーション データ インスペクターは各点の許容誤差を単純な最大値として計算します。

tolerance = max(absoluteTolerance,relativeTolerance*abs(baselineData));

許容誤差帯域の上限は tolerance[ベースライン] 信号に追加することで形成されます。同様に、シミュレーション データ インスペクターは許容誤差帯域の下限を、tolerance[ベースライン] 信号から差し引くことで計算します。

時間の許容誤差を指定すると、シミュレーション データ インスペクターは、まず各サンプルについて [(tsamp-tol), (tsamp+tol)] として定義された時間間隔に対して時間の許容誤差を評価します。シミュレーション データ インスペクターは、各サンプルについて、間隔の最小の点を選択することで、下限の許容誤差帯域を構築します。同様に、間隔の最大の点によって、各サンプルの上限の許容誤差が定義されます。

The Simulation Data Inspector uses the maximum and minimum value present in the specified time interval to define the upper and lower tolerance, respectively.

時間の許容誤差に加えて、絶対許容誤差または相対許容誤差を使用して許容誤差帯域を指定する場合、シミュレーション データ インスペクターは最初に時間の許容誤差を適用し、次に絶対許容誤差と相対許容誤差を時間の許容誤差で選択された最大の点および最小の点に適用します。

When you specify an absolute or relative tolerance in addition to a time tolerance, the tolerance band increases.

upperTolerance = max + max(absoluteTolerance,relativeTolerance*max)

lowerTolerance = min - max(absoluteTolerance,relativeTolerance*min)

制限

シミュレーション データ インスペクターでは、以下の比較はサポートされません。

  • 可変サイズ信号。

参考

トピック