scipy.signal.freqs_zpk

scipy.signal.freqs_zpk(z, p, k, worN=200)[源代码]

计算模拟过滤的频率响应。

在给定零的情况下 z ,电线杆 p ,和增益 k 对于过滤,计算其频率响应:

           (jw-z[0]) * (jw-z[1]) * ... * (jw-z[-1])
H(w) = k * ----------------------------------------
           (jw-p[0]) * (jw-p[1]) * ... * (jw-p[-1])
参数
zarray_like

线性过滤的零点

parray_like

直线过滤的两极

k标量

线性过滤的增益

worN{NONE,INT,ARRAY_LIKE},可选

如果没有,则在响应曲线的有趣部分(由零极点位置确定)周围计算200个频率。如果是单个整数,则以如此多的频率进行计算。否则,以中给出的角频率(例如,rad/s)计算响应 worN

退货
wndarray

它所处的角频率 h 是经过计算的。

hndarray

频率响应。

参见

freqs

用TF形式计算模拟过滤的频率响应

freqz

用TF形式计算数字过滤的频率响应

freqz_zpk

用ZPK形式计算数字过滤的频率响应

注意事项

0.19.0 新版功能.

示例

>>> from scipy.signal import freqs_zpk, iirfilter
>>> z, p, k = iirfilter(4, [1, 10], 1, 60, analog=True, ftype='cheby1',
...                     output='zpk')
>>> w, h = freqs_zpk(z, p, k, worN=np.logspace(-1, 2, 1000))
>>> import matplotlib.pyplot as plt
>>> plt.semilogx(w, 20 * np.log10(abs(h)))
>>> plt.xlabel('Frequency')
>>> plt.ylabel('Amplitude response [dB]')
>>> plt.grid()
>>> plt.show()
../../_images/scipy-signal-freqs_zpk-1.png