ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

stmcb

スティグリッツ・マクブライド反復法を使用した線形モデルの計算

構文

[b,a] = stmcb(h,nb,na)
[b,a] = stmcb(y,x,nb,na)
[b,a] = stmcb(h,nb,na,niter)
[b,a] = stmcb(y,x,nb,na,niter)
[b,a] = stmcb(h,nb,na,niter,ai)
[b,a] = stmcb(y,x,nb,na,niter,ai)

説明

スティグリッツ・マクブライド反復法は、定められた時間領域インパルス応答をもつ IIR フィルターを求めるためのアルゴリズムです。この反復法は、フィルター設計とシステム同定 (パラメトリック モデリング) に適用できます。

[b,a] = stmcb(h,nb,na) では、インパルス応答の近似値 h、零点の数の厳密値 nb、極の数の厳密値 na を使用して、システム b(z)/a(z) の係数 ba が求められます。

[b,a] = stmcb(y,x,nb,na) では、入力として x が与えられ、出力として y をもつシステムのシステム係数 b および a が求められます。xy は、同じ長さでなければなりません。

[b,a] = stmcb(h,nb,na,niter) および

[b,a] = stmcb(y,x,nb,na,niter) では niter 反復が使用されます。niter の既定値は 5 です。

[b,a] = stmcb(h,nb,na,niter,ai) および

[b,a] = stmcb(y,x,nb,na,niter,ai) では、分母係数の初期推定値としてベクトル ai が使用されます。ai を指定しない場合、stmcb では、[b,ai] = prony(h,0,na) の出力引数がベクトル ai として使用されます。

stmcb では、IIR フィルターの係数が長さ nb+1na+1 の行ベクトル b および a に返されます。フィルター係数は、以下のように z の次数の降順で順序付けられます。

H(z)=B(z)A(z)=b(1)+b(2)z1++b(nb+1)znba(1)+a(2)z1++a(na+1)zna

すべて折りたたむ

IIR フィルターのインパルス応答を、より低次のシステムで近似します。

正規化された 3 dB の周波数 0.2π ラジアン/サンプルをもつ 6 次のバタワース フィルターを指定します。

d = designfilt('lowpassiir','FilterOrder',6, ...
    'HalfPowerFrequency',0.2,'DesignMethod','butter');

スティグリッツ・マクブライド反復法を使用して、フィルターを 4 次のシステムで近似します。

h = impz(d);
[bb,aa] = stmcb(h,4,4);

2 つのシステムの周波数応答をプロットします。

hfvt = fvtool(d,bb,aa,'Analysis','freq');
legend(hfvt,'Butterworth','Steiglitz-McBride')

診断

xy の長さが異なる場合、stmcb では以下のエラー メッセージが表示されます。

入力信号 X と出力信号 Y は同じ長さでなければなりません。

アルゴリズム

stmcb では、b(z)/a(z) のインパルス応答 h と入力信号 x との間の二乗誤差が最小化されます。

mina,bi=0|x(i)h(i)|2

stmcb は、以下の 2 つのステップを反復します。

  1. 1/a(z) を使用して、h および x にあらかじめフィルターをかけます。

  2. \ を使用して、ba の線形方程式系を解きます。

stmcb では、このプロセスが niter 回繰り返されます。b および a の係数が niter 回の反復より前に収束したかどうかのチェックは行われません。

参考文献

[1] Steiglitz, K., and L. E. McBride. “A Technique for the Identification of Linear Systems.” IEEE® Transactions on Automatic Control. Vol. AC-10, 1965, pp. 461–464.

[2] Ljung, Lennart. System Identification: Theory for the User. 2nd Edition. Upper Saddle River, NJ: Prentice Hall, 1999, p. 354.

参考

| | |

R2006a より前に導入