Main Content

Descriptor State-Space

陰的な線形システムをモデル化

R2018b 以降

  • Descriptor State-Space block

ライブラリ:
Simulink / Continuous

説明

Descriptor State-Space ブロックを使用すると、Ex˙=Ax+Bu の形式で表現できる陰的な線形システムをモデル化できます。E はシステムの質量行列です。E が特異でないために可逆である場合は、陽的な x˙=E1Ax+E1Bu の形式でシステムを記述し、State-Space ブロックを使用してモデル化できます。

質量行列 E が特異となるのは、システムの従属変数の微分の 1 つ以上が方程式に存在しない場合です。それらの変数を代数変数と呼びます。そのような代数変数を含む微分方程式を微分代数方程式と呼びます。それらの状態空間表現の形式は次のようになります。

Ex˙=Ax+Buy=Cx+Du

変数の意味は次のとおりです。

  • x は状態ベクトル

  • u は入力ベクトル

  • y は出力ベクトル

端子

入力

すべて展開する

double 型の実数値入力ベクトル。幅は B および D の行列の列数になります。

データ型: double

出力

すべて展開する

double 型の実数値入力ベクトル。幅は C および D の行列の行数になります。

データ型: double

パラメーター

すべて展開する

質量行列 E を実数値の n 行 n 列の行列で指定します。n はシステムの状態数です。EA と同じサイズでなければなりません。E は特異でも非特異でもかまいません。

プログラムでの使用

ブロック パラメーター: E
型: 文字ベクトル、string
値: スカラー | 行列
既定の設定: '1'

行列係数 A を実数値の n 行 n 列の行列で指定します。n はシステムの状態数です。AE と同じサイズでなければなりません。

プログラムでの使用

ブロック パラメーター: A
型: 文字ベクトル、string
値: スカラー | 行列
既定の設定: '1'

行列係数 B を実数値の n 行 m 列の行列で指定します。n はシステムの状態数、m は入力数です。

プログラムでの使用

ブロック パラメーター: B
型: 文字ベクトル、string
値: スカラー | ベクトル | 行列
既定の設定: '1'

行列係数 C を実数値の r 行 n 列の行列で指定します。n はシステムの状態数、r は出力数です。

プログラムでの使用

ブロック パラメーター: C
型: 文字ベクトル、string
値: スカラー | ベクトル | 行列
既定の設定: '1'

行列係数 D を実数値の r 行 m 列の行列で指定します。r はシステムの出力数、m はシステムの入力数です。

プログラムでの使用

ブロック パラメーター: D
型: 文字ベクトル、string
値: スカラー | ベクトル | 行列
既定の設定: '1'

ブロックの状態の初期条件を指定します。最小値および最大値は、[出力の最小値] および [出力の最大値] ブロック パラメーターで制限されます。

ヒント

このブロックの初期状態を、inf または NaN にすることはできません。

依存関係

このパラメーターを有効にするには、[初期条件のソース][内部] に設定します。

プログラムでの使用

ブロック パラメーター: InitialCondition
型: 文字ベクトル、string
値: スカラー | ベクトル | 行列
既定の設定: '0'

ブロックの出力が入力信号に直接依存しているかどうか指定します。このパラメーターは、連続状態が 500 を超えるシステムに対して、シミュレーションを高速化するために使用します。この設定は、連続状態が 500 以下のシステムについては Simulink® で自動的に決定されます。

プログラムでの使用

ブロック パラメーター: DirectFeedthrough
型: 文字ベクトル、string
値: 'True' | 'False'
既定の設定: 'True'

Simulink Control Design™ ワークフローについて、線形化中に Descriptor State-Space ブロックによって表されるシステムをスパース モデルに線形化します。

システムを非スパース明示的状態空間モデルに線形化するには、このパラメーターを無効にします。

ブロックの状態を計算するための絶対許容誤差。正の実数値のスカラーまたはベクトルとして指定します。コンフィギュレーション パラメーターから絶対許容誤差を継承するには、auto または -1 を指定します。

  • 実数のスカラーを入力した場合、ブロックの状態計算における [コンフィギュレーション パラメーター] ダイアログ ボックスの絶対許容誤差は、この値でオーバーライドされます。

  • 実数のベクトルを入力した場合、ベクトルの次元はブロックの連続状態の次元と一致していなければなりません。[コンフィギュレーション パラメーター] ダイアログ ボックスの絶対許容誤差は、これらの値でオーバーライドされます。

  • auto または –1 を入力した場合、Simulink は [コンフィギュレーション パラメーター] ダイアログ ボックス ([ソルバー] ペインを参照) の絶対許容誤差の値を使用してブロックの状態を計算します。

プログラムでの使用

ブロック パラメーター: AbsoluteTolerance
型: 文字ベクトル、string
値: 'auto' | '-1' | 任意の正の実数値のスカラーまたはベクトル
既定の設定: 'auto'

各状態に固有名を割り当てます。このフィールドが空白 (' ') の場合は、名前の割り当ては行われません。

  • 単一の状態に名前を割り当てる場合は、'position' のように一重引用符で囲んで名前を入力します。

  • 複数の状態に名前を割り当てる場合は、中かっこ内にコンマで区切って入力します。たとえば、{'a', 'b', 'c'} のようにします。各名前は固有でなければなりません。

  • MATLAB® ワークスペース内の変数を状態名に割り当てる場合は、引用符なしで変数を入力します。変数には文字ベクトル、string、cell 配列、構造体が使用できます。

制限

  • 状態名は選択されたブロックに対してのみ適用されます。

  • 状態の数は状態名の数で割り切れなければなりません。

  • 指定する名前の数は状態の数より少なくできますが、その逆はできません。

    たとえば、4 つの状態を含むシステムで 2 つの名前を指定することは可能です。最初の名前は最初の 2 つの状態に適用され、2 番目の名前は最後の 2 つの状態に適用されます。

プログラムでの使用

ブロック パラメーター: ContinuousStateAttributes
型: 文字ベクトル、string
値: ' ' | ユーザー定義
既定の設定: ' '

ブロックの特性

データ型

double

直達

はい

多次元信号

いいえ

可変サイズの信号

いいえ

ゼロクロッシング検出

いいえ

拡張機能

バージョン履歴

R2018b で導入