当前位置:   article > 正文

N阶Butterworth滤波器的频率响应(Python实现)_python如何绘制滤波器的频率响应图

python如何绘制滤波器的频率响应图

Butterworth滤波器最先由英国工程师Stephen Butterworth于1930年发表在英国《无线电工程》期刊的名为“On the Theory of Filter Amplifiers”论文中提出。来自90余年前的古老智慧。

巴特沃斯滤波器在通带的频率响应曲线最平滑,其|H(jω)|^2在ω=0点的1至2N-1阶导数值为0,所以巴特沃斯滤波器也被称为也被称作最大平坦滤波器。

巴特沃斯低通滤波器的振幅平方对频率的公式为
Butterworth低通滤波器的振幅平方
使用Python做出不同阶数的Butterworth滤波器的频率响应如下图所示。阶数N=2,4,8,截止频率均为2。Butterworth模拟低通滤波器的频率响应(左:幅频响应,右:相频响应)
Butterworth模拟低通滤波器的频率响应

容易见得,Butterworth滤波器的阶数越高,幅频响应越陡峭,滤波效果越优越。

我采用了Python(v3.7.7)实现Butterworth模拟低通滤波器。具体采用了scipy(v1.6.0)的第三方包,来进行信号与系统的基本运算;采用了matplotlib(v3.3.3)作图。代码如下。

import matplotlib.pyplot as plt
import numpy as np
import scipy.signal as signal

w = 2*np.pi*np.linspace(0, 1, 10000)

system2 = signal.butter(2, 2, btype='low', analog=True, output='ba')
w2, H
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/78310
推荐阅读
相关标签
  

闽ICP备14008679号