当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python SciPy signal.freqs_zpk用法及代码示例


本文简要介绍 python 语言中 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])

参数

z array_like

线性滤波器的零点

p array_like

线性滤波器的极点

k 标量

线性滤波器的增益

worN {无,int,数组},可选

如果没有,则计算响应曲线感兴趣部分周围的 200 个频率(由 pole-zero 位置确定)。如果是单个整数,则以那么多频率进行计算。否则,计算工作中给出的角频率(例如,rad/s)的响应。

返回

w ndarray

计算 h 的角频率。

h ndarray

频率响应。

注意

例子

>>> import numpy as np
>>> 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(True)
>>> plt.show()
scipy-signal-freqs_zpk-1.png

相关用法


注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.signal.freqs_zpk。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。