Lookup Table Dynamic
動的テーブルを使用した 1 次元関数の近似
ライブラリ:
Simulink /
Lookup Tables
説明
他の Lookup Table ブロックとの違い
Lookup Table Dynamic ブロックは、xdat
ベクトルおよび ydat
ベクトルを使用して関数 y = f(x)
に対する近似を計算します。このルックアップ手法は、内挿、外挿、または入力の元の値を使用できます。
Lookup Table Dynamic ブロックを使用すると、シミュレーションを停止せずにテーブル データを変更できます。たとえば、シミュレーション中の物理システムに変更があった場合、新しいテーブル データを組み込むことができます。
ブレークポイントとテーブル データの入力
xdat
ベクトルは、ブレークポイント データで、"厳密に単調増加" している必要があります。固定小数点データ型への変換後は、ベクトル内の次の要素の値は、前の要素の値よりも大きくなければなりません。量子化により、xdat
は、浮動小数点データ型で厳密に単調増加させることができますが、固定小数点データ型への変換後は、それができません。
ydat
ベクトルは、ブレークポイント値での関数の評価あるテーブル データです。
メモ
xdat
および ydat
にスカラー値 (1 要素配列) は入力できません。どちらか一方にスカラー値を入力した場合、シミュレーション時にエラーが示されます。xdat
および ydat
の両方に 1 行 n 列のベクトルを入力してください。
Lookup Table の定義
ルックアップ テーブルは、xdat
および ydat
を 1 行 n 列ベクトルとしてこのブロックに入力することにより、定義します。このブロックの生成コードが使用する ROM を削減するには、xdat
と ydat
に異なるデータ型を使用します。
ヒント
ブレークポイントを均等な間隔で配置すると、Simulink® Coder™ で生成されたコードに除算が使用されません。詳細については、Simulink ドキュメンテーションの fixpt_evenspace_cleanup
および Simulink Coder ドキュメンテーションの問題のある固定小数点演算を特定 (Embedded Coder)を参照してください。
ブロックでの出力の生成方法
このブロックは、[ルックアップ手法] に選択した方法を使用して、入力値に基づいて出力を生成します。
ルックアップ手法 | ブロック アクション |
---|---|
内挿 - 外挿 | 入力の線形内挿と外挿を実行します。
メモ このルックアップ手法を選択すると、Simulink Coder ソフトウェアではこのブロックのコードを生成できません。 |
[内挿 - 最後の値を使用] (既定の設定) | 線形内挿を実行しますが、ブレークポイント データの両端のポイントの外では外挿しません。代わりに最後の値を使用します。 |
入力の最近傍を使用 | 現在の入力に最も近い |
入力の下の値を使用 | 現在の入力の下でそれに最も近い |
入力の上の値を使用 | 現在の入力の上でそれに最も近い |
メモ:
[入力の最近傍を使用
]、[入力の下の値を使用
]、および [入力の上の値を使用
] の方法では、入力 x
がブレークポイント値に一致すると、同じアクションが実行されます。
ソルバーの中には、シミュレーション時間をメジャー タイム ステップとマイナー タイム ステップに細かく分けるものがあります。マイナー タイム ステップは、メジャー タイム ステップの下位区分です。ソルバーは、各メジャー タイム ステップでの結果を生成し、マイナー タイム ステップでの結果を使ってメジャー タイム ステップでの結果の精度を向上させます。連続ソルバーでは、不正確な結果が生成されないように信号がマイナー タイム ステップで固定されるため、Lookup Table Dynamic ブロックの出力の外観は階段状になります。ブロック出力に対するソルバーの影響の詳細は、Simulink ドキュメンテーションのソルバーの比較を参照してください。
例
端子
入力
出力
パラメーター
ブロックの特性
データ型 |
|
直達 |
|
多次元信号 |
|
可変サイズの信号 |
|
ゼロクロッシング検出 |
|
拡張機能
バージョン履歴
R2006a より前に導入