ss2ss
状態空間モデルの状態座標変換
説明
ss2ss は、状態空間モデルの状態ベクトル x に対して相似変換 z = Tx を実行します。詳細については、アルゴリズムを参照してください。
例
状態空間モデルの相似変換を実行します。
ランダムな状態空間モデルと変換行列を生成します。
rng(0) sys = rss(5); t = randn(5);
変換を実行して、両方のモデルの周波数応答をプロットします。
tsys = ss2ss(sys,t); bode(sys,'b',tsys,'r--') legend

両方のモデルの応答が厳密に一致します。
ss2ss は、状態変換を、一般化モデルの数値部分の状態ベクトルにのみ適用します。
genss モデルを作成します。
sys = rss(2,2,2) * tunableSS('a',2,2,3) + tunableGain('b',2,3)
Generalized continuous-time state-space model with 2 outputs, 3 inputs, 4 states, and the following blocks: a: Tunable 2x3 state-space model, 2 states, 1 occurrences. b: Tunable 2x3 gain, 1 occurrences. Model Properties Type "ss(sys)" to see the current value and "sys.Blocks" to interact with the blocks.
変換行列を指定して、変換を取得します。
T = [1 -2;3 5]; tsys = ss2ss(sys,T)
Generalized continuous-time state-space model with 2 outputs, 3 inputs, 4 states, and the following blocks: a: Tunable 2x3 state-space model, 2 states, 1 occurrences. b: Tunable 2x3 gain, 1 occurrences. Model Properties Type "ss(tsys)" to see the current value and "tsys.Blocks" to interact with the blocks.
両方のモデルを分解します。
[H,B,~,~] = getLFTModel(sys); [H1,B1,~,~] = getLFTModel(tsys);
分解された sys からのモデルで個別に変換を取得します。
H2 = ss2ss(H,T);
この変換されたモデルを、分解された tsys からのモデルと比較します。
isequal(H1,H2)
ans = logical
   1
両方のモデルは等価です。
ファイル icEngine.mat には、サンプリング レート 0.04 秒で収集した 1500 の入力/出力サンプルによる 1 つのデータセットが含まれます。入力 u(t) は、By-Pass Idle Air Valve (BPAV) を制御する電圧 (V) で、出力 y(t) は、エンジン速度 (RPM/100) です。
icEngine.mat のデータを使用して、同定可能なパラメーターをもつ状態空間モデルを作成します。
load icEngine.mat z = iddata(y,u,0.04); sys = n4sid(z,4,'InputDelay',2);
ランダムな変換行列を指定します。
T = randn(4);
変換を取得します。
sysT = ss2ss(sys,T);
周波数応答を比較します。
bode(sys,'b',sysT,'r--') legend

応答は厳密に一致します。
ss2ss を使用して、複素係数をもつモデルの相似変換も実行できます。
この例では、複素係数をもつランダムな状態空間モデルを生成します。
rng(0) sys = ss(randn(5)+1i*randn(5),randn(5,3),randn(2,5)+1i*randn(2,5),0,.1);
複素数データを含む変換行列を指定します。
T = randn(5)+1i*randn(5);
変換を取得します。
sysT = ss2ss(sys,T);
周波数応答の特異値を比較します。
sigma(sys,'b',sysT,'r--') legend

応答は両方の分岐で厳密に一致します。
入力引数
動的システム。SISO または MIMO 動的システム モデルとして指定します。使用できる動的システムには次のようなものがあります。
- genssや- uss(Robust Control Toolbox) モデルなどの一般化された、あるいは不確かさをもつ LTI モデル。(不確かさをもつモデルを使用するには Robust Control Toolbox™ ソフトウェアが必要です。)- このようなモデルでは、状態変換は、モデルの数値部分の状態ベクトルにのみ適用されます。これらのモデルの分解の詳細については、 - getLFTModelと一般化モデルの内部構造を参照してください。
- 同定された状態空間 - idss(System Identification Toolbox) モデル (同定されたモデルを使用するには System Identification Toolbox™ ソフトウェアが必要です。)
sys が状態空間モデルの配列である場合、ss2ss は変換 T を配列内の各個別モデルに適用します。
アルゴリズム
ss2ss は、状態空間モデルの状態ベクトル x に対して相似変換  を実行します。
各モデル形式について ss2ss で返される変換を次の表にまとめます。
| 入力モデル | 変換後のモデル | 
|---|---|
| 次の形式の陽的な状態空間モデル: |  | 
| 次の形式の記述子 (陰的な) 状態空間モデル: |  | 
| 次の形式の同定された状態空間 ( |  | 
バージョン履歴
R2006a より前に導入記述子状態空間モデルの場合
ss2ss は以下を返します。
以前は、以下の変換が返されていました。
ss2ss ではスパース 2 次 (mechss) モデルはサポートされなくなりました。mechss モデルで相似変換を実行すると、対称性が破棄され、明確な一般形式はありません。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- 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)