isstable
動的システム モデルが安定であるかどうかの判定
説明
は、動的システム モデル B
= isstable(sys
)sys
が安定したダイナミクスをもつ場合に 1
(true
) の logical 値を返し、それ以外の場合は 0
(false
) の logical 値を返します。sys
がモデル配列の場合、関数は、sys
のすべてのモデルが安定である場合にのみ 1
を返します。
次の場合、isstable
は動的システムの安定性について logical 値 1
(true
) を返します。
連続時間システムでは、すべての極が複素平面の左開半平面内にある。
離散時間システムでは、すべての極が単位開円板内にある。
isstable
は、有限個の極をもつ解析モデルでのみサポートされます。
例
離散時間伝達関数モデルの安定性の判別
0.1
秒のサンプル時間をもつこの離散時間 SISO 伝達関数モデルの安定性を判別します。
離散時間伝達関数モデルを作成します。
sys = tf([2,0],[4,0,3,-1],0.1);
システムの極を調べます。
P = abs(pole(sys))
P = 3×1
0.9159
0.9159
0.2980
伝達関数モデルのすべての極は 1
より小さい振幅をもつため、すべての極は単位開円板内にあり、システムは安定です。
isstable
を使用してモデルの安定性を確認します。
B = isstable(sys)
B = logical
1
システム sys
は安定です。
連続時間零点-極-ゲイン モデルの安定性の判別
この連続時間零点-極-ゲイン モデルの安定性を判別します。
零点、極、ゲインを指定してモデルを zpk
モデル オブジェクトとして作成します。
sys = zpk([],[-2-3*j,-2+3*j,0.5],2);
モデルの 1 つの極が複素平面の右半平面内にあるため、システムは不安定です。
isstable
を使用してモデルの不安定性を確認します。
B = isstable(sys)
B = logical
0
システム sys
は不安定です。
モデル配列内のモデルの安定性の判定
-2
から 2
まで変動する極をもつ SISO 伝達関数モデルの配列の安定性を判別します。
配列を作成するには、まずゼロ値の SISO 伝達関数をもつ次元 [length(a),1]
の配列を初期化します。
a = [-2:2]; sys = tf(zeros(1,1,length(a)));
その配列に 1/(s-a)
形式の伝達関数を設定します。
for j = 1:length(a) sys(1,1,j) = tf(1,[1 -a(j)]); end
isstable
によって、モデル配列内のすべてのモデルが安定か、または各個別のモデルが安定かを判定できます。
モデル配列の安定性を検証します。
B_all = isstable(sys)
B_all = logical
0
既定では、isstable
は配列内のすべてのモデルが安定な場合にのみ 1
(true
) となる単一の logical 値を返します。sys
には、安定でない非負の極をもついくつかのモデルが含まれています。したがって、isstable
は配列全体について 0
(false
) を返します。
'elem'
フラグを使用して配列内の各モデルの安定性を検証します。
B_elem = isstable(sys,'elem')
B_elem = 5x1 logical array
1
1
0
0
0
この関数は、モデル配列内の対応するエントリの安定性を示す logical 値の配列を返します。たとえば、B_elem(2)
は 1
です。これは、配列の 2 番目のモデル sys(1,1,2)
が安定であることを示しています。これは、sys(1,1,2)
が -1
に極をもつためです。
入力引数
sys
— 動的システム
動的システム モデル | モデル配列
動的システム。SISO または MIMO 動的システム モデル、あるいは SISO または MIMO 動的システム モデルの配列として指定します。使用できる動的システムには、tf
、zpk
、ss
モデルなどの連続時間または離散時間の数値 LTI モデルが含まれます。
sys
が一般化状態空間モデル genss
または不確かさをもつ状態空間モデル uss
(Robust Control Toolbox) である場合、isstable
は、sys
の現在の値またはノミナル値の安定性を確認します。
sys
がモデルの配列である場合、isstable
は配列内のすべてのモデルの安定性を確認します。
B = isstable(sys)
を使用する場合、配列内のすべてのモデルが安定である場合にのみ、出力は1
(true
) です。B = isstable(sys,'elem')
を使用する場合、出力は logical 配列であり、そのエントリは、モデル配列内の対応するエントリの安定性を示しています。
モデル配列の詳細については、モデル配列を参照してください。
出力引数
B
— True または false の結果
1
| 0
| logical 配列
True または false の結果。安定モデルの場合 1
、または不安定モデルの場合 0
として返されます。
'elem'
フラグによって isstable
はモデル配列と同じ次元をもつ logical 値の配列を返します。配列の値は、モデル配列の対応するエントリの安定性を示しています。
バージョン履歴
R2012a で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- 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)