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


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


本文简要介绍 python 语言中 scipy.signal.freqresp 的用法。

用法:

scipy.signal.freqresp(system, w=None, n=10000)#

计算continuous-time 系统的频率响应。

参数

system lti 类的实例或说明系统的元组。

下面给出元组中元素的数量和解释:

  • 1 (instance of lti)

  • 2 (num, den)

  • 3 (zeros, poles, gain)

  • 4 (A, B, C, D)

w 数组,可选

频率数组(以弧度/秒为单位)。为该数组中的每个值计算幅度和相位数据。如果没有给出,将计算一个合理的集合。

n 整数,可选

如果未给出 w,则要计算的频点数。 n 个频率以对数方式隔开,间隔选择包括系统极点和零点的影响。

返回

w 一维ndarray

频率阵列 [rad/s]

H 一维ndarray

复数幅度值数组

注意

如果 (num, den) 为 system 传入,则分子和分母的系数应按 index 降序指定(例如 s^2 + 3s + 5 将表示为 [1, 3, 5] )。

例子

生成传递函数的奈奎斯特图

>>> from scipy import signal
>>> import matplotlib.pyplot as plt

构造传递函数

>>> s1 = signal.ZerosPolesGain([], [1, 1, 1], [5])
>>> w, H = signal.freqresp(s1)
>>> plt.figure()
>>> plt.plot(H.real, H.imag, "b")
>>> plt.plot(H.real, -H.imag, "r")
>>> plt.show()
scipy-signal-freqresp-1.png

相关用法


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