Signal Processing Toolbox    
tf2sos

ディジタルフィルタ伝達関数から2次型への変換

表示

詳細

tf2sosは、与えられたディジタルフィルタの伝達関数表現を等価な2次型表現にします。

[sos,g] = tf2sos(b,a) は、伝達関数係数ベクトルabで表現されるディジタルフィルタに等価なゲインgをもつ2次型行列sosを出力します。

sosは、L行6列の行列です。

この行は、H(z)の2次型の分子と分母の係数bikaik を含んでいます。

[sos,g] = tf2sos(b,a,'order') は、sosの中の行の順番を設定することができます。ここで、orderは、つぎのオプションを設定することができます。

[sos,g] = tf2sos(b,a,'order','scale') は、ゲインとすべての2次型の分母の係数をスケーリングします。ここで、scaleは、つぎのオプションを設定することができます。

up順序で配置して無限大ノルムスケーリングを使うことにより、実現の中で、オーバフローの可能性を最小にします。また、down順序で配置したものに2ノルムスケーリングを使うことにより、ピークの丸めノイズを最小化します。

sos = tf2sos(...) は、最初のセクションH1(z)に全体のシステムゲインgを埋め込みます。すなわち、つぎのようにします。

アルゴリズム

tf2sos は、4ステップのアルゴリズムを使って、入力した伝達関数システムに対して、2次型断面を決定します。

  1. ba で設定されたシステムの極と零点を検出します。
  2. 関数 cplxpair を使って、零点と極を複素共役の組にまずグループ分けし、その結果について、関数 zp2sos を使って、行います。そして、zp2sos は、つぎのルールに従って、極と零点の組を一致させることにより、2次型断面を作成します。
    1. 極をその極に最も近い零点に関連した単位円に一致させる。
    2. つぎに単位円に近い極を、それに対応する零点に一致させる。
    3. すべての極と零点が一致するまで、この作業を続ける。

    tf2sos は、実数極を、その絶対値で、それらに最も近い実数極をもつ断面にグループ分けします。

  1. 断面を、単位円への極の組の近似に従って、並べます。tf2sos は、通常、単位円に最も近い極をもつ断面をカスケードに並べます。tf2sos に、オプションのフラッグ 'down' を設定することで、逆の順に並べることができます。
  2. tf2sos は、'scale' 引数に設定したノルムを使って、断面をスケーリングします。任意の H() に対して、スケーリングされたものは、つぎのように設定されます。

    ここで、p は、 、または、2です。スケーリングに関する詳細は、リファレンスを参照してください。このスケーリングは、固定小数点フィルタ実現において、オーバフローを最小化したり、丸め誤差を最小にしたりしようとします。

参考
cplxpair
複素数を共役複素数の組み合わせで並べ替える
sos2tf
2次型から伝達関数型への変換
ss2sos
ディジタルフィルタの状態空間(State space)型から2次型への変換
tf2ss
伝達関数フィルタパラメータから状態空間(State space)型への変換
tf2zp
伝達関数型から零点-極-ゲイン型への変換
zp2sos
ディジタルフィルタの零点-極-ゲイン型から2次型への変換

参考文献

[1] Jackson, L.B., Digital Filters and Signal Processing, 3rd ed., Kluwer Academic Publishers, Boston, 1996, Chapter 11.

[2] Mitra, S.K., Digital Signal Processing: A Computer-Based Approach, McGraw-Hill, New York, 1998, Chapter 9.

[3] Vaidyanathan, P.P., "Robust Digital Filter Structures," Handbook for Digital Signal Processing, S.K. Mitra and J.F. Kaiser, ed., John Wiley & Sons, New York, 1993, Chapter 7.


 tf2latc tf2ss