Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

tf2zpk

伝達関数のフィルター パラメーターの零点-極-ゲイン形式への変換

説明

[z,p,k] = tf2zpk(b,a) では、伝達関数パラメーター ba から零点の行列 z、極のベクトル p、ゲインに関連付けられたベクトル k が求められます。この関数は、単入力多出力 (SIMO) 離散時間システムの多項式伝達関数表現

H(z)=B(z)A(z)=b1+b2z1+bn1zn+bnzn1a1+a2z1+am1zm+amzm1

を、因数分解された伝達関数型

H(z)=Z(z)P(z)=k(zz1)(zz2)(zzm)(zp1)(zp2)(zpn).

に変換します。

メモ

逆べき乗で表す伝達関数(1 + z–1 + z–2)を扱う場合は、tf2zpk を使用します。同様の関数 tf2zp は、連続時間伝達関数のような正のべき乗表現(s2 + s + 1)を扱う場合に便利です。

すべて折りたたむ

正規化されたカットオフ周波数 0.4π ラジアン/サンプルをもつ 3 次のバタワース フィルターを設計します。このフィルターの極、零点、ゲインを計算します。

[b,a] = butter(3,.4);
[z,p,k] = tf2zpk(b,a)
z = 3×1 complex

  -1.0000 + 0.0000i
  -1.0000 - 0.0000i
  -1.0000 + 0.0000i

p = 3×1 complex

   0.2094 + 0.5582i
   0.2094 - 0.5582i
   0.1584 + 0.0000i

k = 0.0985

極と零点をプロットし、それらが予想された位置にあることを確認します。

fvtool(b,a,'polezero')

{"String":"Figure Figure 1: Pole-Zero Plot contains an axes object. The axes object with title Pole-Zero Plot contains 4 objects of type line, text.","Tex":"Pole-Zero Plot","LaTex":[]}

text(real(z)-0.1,imag(z)-0.1,'\bfZeros','color',[0 0.4 0])
text(real(p)-0.1,imag(p)-0.1,'\bfPoles','color',[0.6 0 0])

Figure contains an axes object. The axes object contains 6 objects of type text.

入力引数

すべて折りたたむ

伝達関数の分子係数。ベクトルまたは行列として指定します。b が行列の場合、b の各行はシステムの出力に対応します。b には、z の降べきの順で係数が含まれます。b の列数は、a の長さと等しくなければなりません。数が異なる場合は、ゼロをパディングすることで等しくします。これを実行するには、関数 eqtflength を使用します。

データ型: single | double

伝達関数の分母係数。ベクトルとして指定します。a には、z の降べきの順で係数が含まれます。

データ型: single | double

出力引数

すべて折りたたむ

システムの零点。行列として返されます。z は、列に分子の零点を含みます。z には、出力と同数の列があります。

システムの極。列ベクトルとして返されます。p は、伝達関数の分母係数の極配置を含みます。

システムのゲイン。列ベクトルとして返されます。k は、各分子伝達関数のゲインを含みます。

拡張機能

バージョン履歴

R2006a より前に導入