主要内容

本页翻译不是最新的。点击此处可查看最新英文版本。

zp2tf

将零极点增益滤波器参数转换为传递函数形式

说明

[b,a] = zp2tf(z,p,k) 将一个单输入/多输出 (SIMO) 系统的分解传递函数表示

H(s)=Z(s)P(s)=k(sz1)(sz2)(szm)(sp1)(sp2)(spn)

转换为多项式传递函数表示

B(s)A(s)=b1s(n1)++b(n1)s+bna1s(m1)++a(m1)s+am.

示例

示例

全部折叠

计算遵守微分方程的阻尼质量-弹簧系统的传递函数

w¨+0.01w˙+w=u(t).

可测量的数量为加速度 y=w¨u(t) 为驱动力。在拉普拉斯空间中,系统由下式表示:

Y(s)=s2U(s)s2+0.01s+1.

系统具有单位增益、一个位于 s=0 的双重零点以及两个复共轭极点。

k = 1;
z = [0 0]';
p = roots([1 0.01 1])
p = 2×1 complex

  -0.0050 + 1.0000i
  -0.0050 - 1.0000i

使用 zp2tf 求出传递函数。

[b,a] = zp2tf(z,p,k)
b = 1×3

     1     0     0

a = 1×3

    1.0000    0.0100    1.0000

输入参数

全部折叠

系统的零点,指定为列向量或矩阵。z 的列数与输出的列数相同。零点必须为实数或以复共轭对组形式出现。如果某些列的零点数少于其他列,请使用 Inf 值作为 z 中的占位符。

示例: [1 (1+1j)/2 (1-1j)/2]'

数据类型: single | double
复数支持:

系统的极点,指定为列向量。极点必须为实数或以复共轭对组形式出现。

示例: [1 (1+1j)/2 (1-1j)/2]'

数据类型: single | double
复数支持:

系统的增益,指定为列向量。

示例: [1 2 3]'

数据类型: single | double

输出参量

全部折叠

传递函数分子系数,以行向量或矩阵形式返回。如果 b 是矩阵,则其行数等于 z 的列数。

传递函数分母系数,以行向量形式返回。

算法

使用 polyp 以及 z 的列将系统转换为传递函数形式。

扩展功能

全部展开

C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。

版本历史记录

在 R2006a 之前推出

另请参阅

| | | | |