Scipy tf2zpk 不返回零

信息处理 过滤器 Python 转换功能 零极点 scipy
2022-02-03 23:04:54

我有以下传递函数:

H(z)=αz(z(1α))

我想通过以下方式找到它的零点和极点scipy.signal.tf2zpk

from scipy.signal import tf2zpk

alpha=0.4
(zeros, poles, gain) = tf2zpk([0, alpha], [1, alpha-1])

很明显,传递函数在 处为零z=0,但为什么tf2zpk不输出呢?

2个回答

快速查看文档产量

b 和 a 数组被解释为传递函数变量的正、降幂的系数。

您为分母正确执行了此操作,但您的分子在代码中被反转了。尝试

(zeros, poles, gain) = tf2zpk([alpha, 0], [1, alpha-1])

它将产生正确的结果。

如果您的分子数组是[0, alpha],则相应传递函数的分子多项式是0z1+αz0,这不是你想要的。