MATLAB 帮助中心
将传递函数滤波器参数转换为零极点增益形式
[z,p,k] = tf2zp(b,a)
[z,p,k] = tf2zp(b,a) 从传递函数参数 b 和 a 中找到零点矩阵 z、极点向量 p 和相关联的增益向量 k。该函数将一个单输入/多输出 (SIMO) 连续时间系统的多项式传递函数表示
z
p
k
b
a
H(s)=B(s)A(s)=b1sn−1+⋯+bn−1s+bna1sm−1+⋯+am−1s+am
转换为分解传递函数形式
H(s)=Z(s)P(s)=k(s−z1)(s−z2)⋯(s−zm)(s−p1)(s−p2)⋯(s−pn).
注意
在处理 s 的幂时(例如在连续时间传递函数中),请使用 tf2zp。类似的函数 tf2zpk 在处理以 z–1 的幂表示的传递函数时更有用。
tf2zp
tf2zpk
示例
全部折叠
生成具有以下传递函数的系统。
H(s)=2s2+3ss2+12s+14=2(s-0)(s-(-32))(s--122(1-j))(s--122(1+j))
查找系统的零点、极点和增益。使用 eqtflength 以确保分子和分母具有相同的长度。
eqtflength
b = [2 3]; a = [1 1/sqrt(2) 1/4]; [b,a] = eqtflength(b,a); [z,p,k] = tf2zp(b,a)
z = 2×1 0 -1.5000
p = 2×1 complex -0.3536 + 0.3536i -0.3536 - 0.3536i
k = 2
绘制零极点以验证它们位于预期位置。
zplane(b,a) text(real(z)+0.1,imag(z),"Zero") text(real(p)+0.1,imag(p),"Pole")
传递函数分子系数,指定为向量或矩阵。如果 b 是矩阵,则 b 的每行对应于系统的一个输出。b 包含 s 的降幂排序的系数。b 的列数必须小于或等于 a 的长度。
数据类型: single | double
single
double
传递函数分母系数,指定为向量。a 包含 s 的降幂排序的系数。
系统的零点,以矩阵形式返回。z 包含其列中的分子零点。z 的列数与输出的列数相同。
系统的极点,以列向量形式返回。p 包含传递函数的分母系数的极点位置。
系统的增益,以列向量形式返回。k 包含每个分子传递函数的增益。
全部展开
用法说明和限制:
输出 z 和 k 的复/实性在 MATLAB® 和生成代码中可能不同。
输出 z 和 p 的顺序在 MATLAB 和生成代码中可能不同。
在 R2006a 之前推出
sos2zp | ss2zp | tf2sos | tf2ss | tf2zpk | zp2tf
sos2zp
ss2zp
tf2sos
tf2ss
zp2tf
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
欧洲
亚太
联系您当地的办事处