このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
impulseplot
インパルス応答をプロットし、プロット ハンドルを返す
構文
impulseplot(sys)
impulseplot(sys,Tfinal)
impulseplot(sys,t)
impulseplot(sys1,sys2,...,sysN)
impulseplot(sys1,sys2,...,sysN,Tfinal)
impulseplot(sys1,sys2,...,sysN,t)
impulseplot(AX,...)
impulseplot(..., plotoptions)
h = impulseplot(...)
説明
impulseplot は動的システム モデル sys のインパルス応答をプロットします。多入力モデルについては、個々の impulse コマンドを各入力チャネルに適用します。時間範囲と計算点数は、自動的に選択されます。直達をもつ連続システムは、t=0 での無限大の パルスが無視されます。impulseplot はプロット ハンドル、h も返すことができます。getoptions と setoptions コマンドを使ってこのハンドルを使用し、プロットをカスタマイズすることができます。次のように入力すると
help timeoptions
使用できるプロット オプションの一覧が得られます。
impulseplot(sys) はプロット ハンドルを返さずに、LTI モデルのインパルス応答をプロットします。
impulseplot(sys,Tfinal) は、t = 0 から最終時間 t
= Tfinal までのインパルス応答をシミュレーションします。システム時間単位で Tfinal を表し、sys の TimeUnit プロパティで指定されます。サンプル時間を指定しない離散時間システム (Ts = -1) では、impulseplot は Tfinal を、シミュレートするサンプリング間隔の数として解釈します。
impulseplot(sys,t) は、シミュレーションのためにユーザーが指定した時間ベクトル t を使用します。システム時間単位で t を表し、sys の TimeUnit プロパティで指定されます。離散時間モデルでは、t は Ti:Ts:Tf の形式です。ここで、Ts はサンプル時間です。連続時間モデルでは、t は Ti:dt:Tf の形式を取ります。ここで、dt は連続システムに対する離散近似のサンプル時間となります (impulse を参照してください)。impulseplot コマンドは、Ti に関係なく、常に t=0 でインパルスを適用します。
1 つのプロットで複数の LTI モデル sys1,..., sys2 のインパルス応答をプロットするには、次の構文を使用します。
impulseplot(sys1,sys2,...,sysN)
impulseplot(sys1,sys2,...,sysN,Tfinal)
impulseplot(sys1,sys2,...,sysN,t)
システムごとに次のように、色、ラインスタイル、およびマーカーを指定することもできます。
impulseplot(sys1,'r',sys2,'y--',sys3,'gx')
impulseplot(AX,...) は、ハンドル AX をもつ座標軸内にプロットします。
impulseplot(..., plotoptions) は、plotoptions で指定されたオプションでインパルス応答をプロットします。次のように入力すると
help timeoptions
詳細が得られます。
h = impulseplot(...) はインパルス応答をプロットし、プロット ハンドル h を返します。
例
例 1
3 次システムのインパルス応答を正規化します。
sys = rss(3); h = impulseplot(sys); % Normalize responses setoptions(h,'Normalize','on');
例 2
同定された線形システムのインパルス応答と対応する 1 標準 "零点間隔" をプロットします。
load(fullfile(matlabroot, 'toolbox', 'ident', 'iddemos', 'data', 'dcmotordata'));
z = iddata(y, u, 0.1, 'Name', 'DC-motor');
set(z, 'InputName', 'Voltage', 'InputUnit', 'V');
set(z, 'OutputName', {'Angular position', 'Angular velocity'});
set(z, 'OutputUnit', {'rad', 'rad/s'});
set(z, 'Tstart', 0, 'TimeUnit', 's');
model = n4sid(z,4,n4sidOptions('Focus', 'simulation'));
h = impulseplot(model,2);
showConfidence(h);ヒント
単位などのプロットのプロパティを変更することができます。プロットのプロパティの変更方法の詳細については、を参照してください。
バージョン履歴
R2012a で導入