scipy.signal.

lp2hp_zpk#

scipy.signal.lp2hp_zpk(z, p, k, wo=1.0)[源代码]#

将低通滤波器原型转换为高通滤波器。

使用零点、极点和增益(‘zpk’)表示法,从截止频率为 1 的模拟低通滤波器原型返回一个截止频率为 wo 的模拟高通滤波器。

参数
zarray_like

模拟滤波器传递函数的零点。

parray_like

模拟滤波器传递函数的极点。

kfloat

模拟滤波器传递函数的系统增益。

wofloat

所需的截止频率,以角频率(例如,弧度/秒)表示。默认为不更改。

返回
zndarray

转换后的高通滤波器传递函数的零点。

pndarray

转换后的高通滤波器传递函数的极点。

kfloat

转换后的高通滤波器的系统增益。

注释

这是从 s 平面替换得出的

\[s \rightarrow \frac{\omega_0}{s}\]

这保持了低通和高通响应在对数刻度上的对称性。

在 1.1.0 版本中添加。

示例

使用低通滤波器的 ‘zpk’(零点-极点-增益)表示将其转换为截止频率为 wo 的高通滤波器。

>>> from scipy.signal import lp2hp_zpk
>>> z   = [ -2 + 3j ,  -0.5 - 0.8j ]
>>> p   = [ -1      ,  -4          ]
>>> k   = 10
>>> wo  = 0.6
>>> lp2hp_zpk(z, p, k, wo)
(   array([-0.09230769-0.13846154j, -0.33707865+0.53932584j]),
    array([-0.6 , -0.15]),
    8.5)