Main Content

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

tzero

線形システムの不変零点

    説明

    z = tzero(sys) は、MIMO 動的システム sys不変零点を返します。sys が最小実現の場合、不変零点は sys伝達零点と一致します。

    z = tzero(A,B,C,D,E) は、行列 A、B、C、D、および E で記述された状態空間モデルの不変零点を返します。

    z = tzero(___,tol) は、上記の構文のいずれかで、ランク決定を制御する相対許容誤差を指定します。

    [z,nrank] = tzero(___) は、sys の伝達関数または伝達関数 H(s) = D + C(sE – A)–1B の通常のランクを返します。

    すべて折りたたむ

    MIMO 伝達関数を作成し、その不変零点を見つけます。

    s = tf('s'); 
    H = [1/(s+1) 1/(s+2);1/(s+3) 2/(s+4)];
    z = tzero(H)
    z = 2×1 complex
    
      -2.5000 + 1.3229i
      -2.5000 - 1.3229i
    
    

    出力は、H の不変零点の場所を一覧表示する列ベクトルになります。この出力では、H に不変零点の複素数のペアがあることが示されています。不変零点が伝達零点と一致することを確認します。

    最初の不変零点が H の伝達零点かどうかを確認します。

    z(1) が H の伝達零点であれば、Hs = z(1) でランクを下げます。

    H1 = evalfr(H,z(1));
    svd(H1)
    ans = 2×1
    
        1.5000
        0.0000
    
    

    H1 は、s = z(1) で評価された伝達関数 H です。H1 の特異値はゼロなので、Hs のこの値でランクを下げます。したがって、z(1)H の伝達零点です。

    同様の解析では、z(2) も伝達零点であることが示されます。

    MIMO モデルを取得します。

    load ltiexamples gasf
    size(gasf)
    State-space model with 4 outputs, 6 inputs, and 25 states.
    

    gasf は、非可制御状態や不可観測状態が含まれている可能性のある MIMO モデルです。

    gasf の不可観測モードと非可制御モードを特定するには、モデルの状態空間行列 ABC、および D が必要です。tzero は状態空間行列をスケーリングしません。したがって、prescalessdata で使用して、gasf の状態空間行列をスケーリングします。

    [A,B,C,D] = ssdata(prescale(gasf));

    gasf の非可制御状態を特定します。

     uncon = tzero(A,B,[],[])
    uncon = 6×1
    
       -0.0568
       -0.0568
       -0.0568
       -0.0568
       -0.0568
       -0.0568
    
    

    tzero に行列 A と行列 B を提供し、行列 C と行列 D は指定しないと、gasf の非可制御モードの固有値が返されます。出力から、6 つの退化した非可制御モードがあることがわかります。

    gasf の不可観測状態を特定します。

    unobs = tzero(A,[],C,[])
    unobs =
    
      0x1 empty double column vector
    

    行列 A と行列 C を提供し、行列 B と行列 D は指定しないと、不可観測モードの固有値が返されます。空の結果は、gasf に不可観測状態がないことを示します。

    入力引数

    すべて折りたたむ

    MIMO 動的システム。次の動的システム モデルのいずれかとして指定します。

    • tfzpkss モデルなどの連続時間または離散時間の数値 LTI モデル。

    • genssuss (Robust Control Toolbox) モデルなどの一般化された、あるいは不確かさをもつ LTI モデル。(不確かさをもつモデルを使用するには Robust Control Toolbox™ ソフトウェアが必要です。)

    • frd モデルなどの周波数応答データ モデル。

    • idtf (System Identification Toolbox)idss (System Identification Toolbox)idproc (System Identification Toolbox) モデルなどの同定された LTI モデル。(同定されたモデルを使用するには System Identification Toolbox™ ソフトウェアが必要です。)

    sys が状態空間モデルでない場合、tzerotzero(ss(sys)) を計算します。

    以下の線形システムについて記述した状態空間行列。

    Edxdt=Ax+Buy=Cx+Du.

    この構文を使用した場合、tzero は状態空間行列をスケーリングしません。tzero を使用する前に行列をスケーリングするには、prescale を使用します。

    陽的な状態空間モデル (E = I) では E を省略します。

    ランク決定を制御する相対許容誤差。正のスカラー値として指定します。許容誤差を増やすと、非最小状態モードが検出され、多くのゼロ (無限に近づく) が排除されます。ただし、許容誤差を大きくすると、伝達零点の数が人為的に増える可能性があります。

    出力引数

    すべて折りたたむ

    sys不変零点または A,B,C,D,E で記述された状態空間モデルが含まれる列ベクトル。

    sys の伝達関数または伝達関数 H(s) = D + C(sE – A)–1B の通常のランク。"通常のランク" は、伝達零点以外の s の値のランクです。

    nrank の有意な結果を得るには、行列 s*E-A は正 (s のほとんどの値では可逆) でなければなりません。言い換えれば、sys または A,B,C,D,E で記述されるシステムの極数は有限でなければなりません。

    詳細

    すべて折りたたむ

    不変零点

    MIMO 状態空間モデルに対して

    Edxdt=Ax+Buy=Cx+Du,

    不変零点は、s の複素数値で、次のシステム行列

    [AsEBCD]

    のランクが通常の値から下がります。(陽的な状態空間モデルの場合は、E = I)。

    伝達零点

    MIMO 状態空間モデルに対して

    Edxdt=Ax+Buy=Cx+Du,

    "伝達零点" は s の複素数値で、等価の伝達関数 H(s) = D + C(sE – A)–1B のランクが通常の値から下がります (陽的な状態空間モデルの場合は、E = I)。

    伝達零点は、不変零点のサブセットです。最小実現の場合、伝達零点と不変零点は同じです。

    ヒント

    • 構文 z = tzero(A,B,C,D,E) を使用して、状態空間モデルの非可制御または不可観測モードを見つけます。C および D が空または零点の場合、tzero(A-sE,B) の非可制御を返します。同様に、B および D が空または零点の場合、tzero(C,A-sE) の不可観測モードを返します。例については、MIMO モデルの不可観測モードと非可制御モードの特定を参照してください。

    アルゴリズム

    tzero は SLICOT ルーチン AB08ND、AB08NZ、AG08BD および AG08BZ に基づいています。tzero[1]および[2]に記述されているアルゴリズムを実装します。

    参照

    [1] Emami-Naeini, A. and P. Van Dooren, "Computation of Zeros of Linear Multivariable Systems," Automatica, 18 (1982), pp. 415–430.

    [2] Misra, P, P. Van Dooren, and A. Varga, "Computation of Structural Invariants of Generalized State-Space Systems," Automatica, 30 (1994), pp. 1921-1936.

    バージョン履歴

    R2012a で導入

    参考