| サブシステムの抽出と変更 | ![]() |
サブシステムは、システムの入力と出力の部分的な繋がりを示すものです。サブシステムの伝達行列は、システムの伝達行列のサブ行列になります。たとえば、sysが2入力、3出力、I/O関係
従って、行列のサブインデックスのようなものを使って、このサブシステムを抽出します。
SubSys = sys(3,1)
結果のサブシステムSubSysは、sysから継承するサンプル時間、むだ時間、I/O名とI/Oグループプロパティ値をもつ、sysと同じタイプのLTIモデルです。
たとえば、sysは、1、2、3のチャンネルからなるcontrolsと名付けられた入力グループをもっている場合、SubSysは、最初のチャンネルをもつcontrolsと名付けた入力グループになります。
sysが行列a, b, c, dをもつ状態空間モデルの場合、サブシステムsys(3,1)は、データa, b(:,1), c(3,:), d(3,1)をもつ状態空間モデルです。
sys(3,1)と言う表現において、最初のインデックスは、出力チャンネルで、2番目のインデックスは入力チャンネルを選択します。sminrealを使って、サブシステム内の不必要な状態を削除してください。LTIモデルsysを変更するときも、上と同じ構文を使います。たとえば、
sys(3,1) = NewSubSys
は、NewSubSysがSISO LTIモデルの場合、最初の入力と3番目の出力間のI/O関係を再定義します。
sysは、NewSubSysのモデルタイプに拘わらず、オリジナルモデルのタイプ(TF,ZPK,SS,FRDのいずれか)のままです。NewSubSysがFRDモデルの場合、sysもFRDモデルでなければいけません。さらに、周波数もお互い一致します。他の標準的な行列サブインデックスが、LTIオブジェクトに拡張されます。たとえば、
sys(3,1:2)
は、最初の2つの入力を3番目の出力に射影したサブシステムを抽出します。また、
sys(:,1)
sys([1 3],:)
は、すべての入力と最初と3番目の出力をもつサブシステムを抽出します。
このシステムから最初の入力から最初の出力までの伝達関数
を抽出するには、つぎのように入力してください。
T(1,1)
Transfer function:
1
-------
s + 0.1
つぎに、
を
に再度代入し、つぎのようにして、Tの2番目の入力チャンネルを変更します。
T(1,1) = tf(1,[1 0.5]);
T(:,2) = [ 1 ; tf(0.4,[1 0]) ]
Transfer function from input 1 to output...
1
#1: -------
s + 0.5
s - 1
#2: -------------
s^2 + 2 s + 2
Transfer function from input 2 to output...
#1: 1
0.4
#2: ---
s
| 優先順位とプロパティの継承 | 周波数をベースにしたFRDモデルの参照 | ![]() |