scipy.signal.
tf2sos#
- scipy.signal.tf2sos(b, a, pairing=None, *, analog=False)[源代码]#
从传递函数表示返回二阶节
- 参数:
- barray_like
分子多项式系数。
- aarray_like
分母多项式系数。
- pairing{None, ‘nearest’, ‘keep_odd’, ‘minimal’}, 可选
将极点和零点配对成节的方法。有关 pairing 和 analog 参数的信息和限制,请参阅
zpk2sos
。- analogbool, 可选
如果为 True,则系统为模拟系统,否则为离散系统。
在版本 1.8.0 中添加。
- 返回:
- sosndarray
二阶滤波器系数数组,形状为
(n_sections, 6)
。有关 SOS 滤波器格式规范,请参阅sosfilt
。
说明
通常不建议从 TF 格式转换为 SOS 格式,因为这样做通常不会提高数值精度误差。相反,请考虑以 ZPK 格式设计滤波器并直接转换为 SOS。TF 通过首先转换为 ZPK 格式,然后将 ZPK 转换为 SOS 来转换为 SOS。
在版本 0.16.0 中添加。
示例
使用其多项式表示形式查找传递函数 H(s) 的“sos”(二阶节)。
\[H(s) = \frac{s^2 - 3.5s - 2}{s^4 + 3s^3 - 15s^2 - 19s + 30}\]>>> from scipy.signal import tf2sos >>> tf2sos([1, -3.5, -2], [1, 3, -15, -19, 30], analog=True) array([[ 0. , 0. , 1. , 1. , 2. , -15. ], [ 1. , -3.5, -2. , 1. , 1. , -2. ]])