scipy.signal.ZerosPolesGain

class scipy.signal.ZerosPolesGain(*system, **kwargs)[源代码]

线性时间不变系统类,零点,极点,增益形式。

将系统表示为连续或离散时间传递函数 \(H(s)=k \prod_i (s - z[i]) / \prod_j (s - p[j])\) ,在哪里 \(k\) 是不是 gain\(z\) 是不是 zeros\(p\) 是不是 polesZerosPolesGain 系统从 lti ,分别在 dlti 类,具体取决于使用的系统表示形式。

参数
*system论据

这个 ZerosPolesGain 类可以用1个或3个参数实例化。下面给出了输入参数的数量及其解释:

DT:浮点,可选

采样时间 [s] 离散时间系统。默认为 None (连续时间)。必须指定为关键字参数,例如, dt=0.1

注意事项

更改不属于 ZerosPolesGain 系统表示形式(如 ABCD 状态空间矩阵)是非常低效的,并且可能导致数值不准确。最好先转换为特定的系统表示。例如,调用 sys = sys.to_ss() 在访问/改变A、B、C、D系统矩阵之前。

示例

构造传递函数 \(H(s) = \frac{{5(s - 1)(s - 2)}}{{(s - 3)(s - 4)}}\)

>>> from scipy import signal
>>> signal.ZerosPolesGain([1, 2], [3, 4], 5)
ZerosPolesGainContinuous(
array([1, 2]),
array([3, 4]),
5,
dt: None
)

构造传递函数 \(H(z) = \frac{{5(z - 1)(z - 2)}}{{(z - 3)(z - 4)}}\) 采样时间为0.1秒时:

>>> signal.ZerosPolesGain([1, 2], [3, 4], 5, dt=0.1)
ZerosPolesGainDiscrete(
array([1, 2]),
array([3, 4]),
5,
dt: 0.1
)
属性
dt

返回系统的采样时间, Nonelti 系统。

gain

的收益 ZerosPolesGain 系统。

poles

地球的两极 ZerosPolesGain 系统。

zeros

的零点 ZerosPolesGain 系统。

方法:

to_ss \()

将系统表示形式转换为 StateSpace

to_tf \()

将系统表示形式转换为 TransferFunction

to_zpk \()

返回当前“ZerosPolesGain”系统的副本。