python - 频率响应:Matlab Vs Python

标签 python matlab numpy scipy

我正在尝试用 Python 实现 Matlab 代码。但是我在设计过滤器时遇到问题

Matlab代码:

d=fdesign.lowpass('N,Fc',10,40,1600);

Hd = design(d);

freqz(Hd)

frequecy response of low pass filter in Matlab

Python 代码:

 N=10
 Fc=40
 Fs=1600
 d=firwin(numtaps=N,cutoff=40,nyq=Fs/2)
 Hd=lfilter( d, 1.0, demod_1)
 w,h=freqz(d)
semilogy(w, np.abs(h), 'b')
grid(True)
ylabel('Amplitude (dB)', color='b')
xlabel('Frequency (rad/sample)')

frequecny response in Python

为什么Python中的滤波器没有精确的频率响应

最佳答案

是一样的。请注意,Matlab 中的 x 轴包含“pi”,而 Python 中则不包含。 Python 中的 y 轴以自然单位标记:10^-1 对应于 -20 dB,10^-2 对应于 -40 等

关于python - 频率响应:Matlab Vs Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17928595/

相关文章:

numpy - 如何正确使用 anaconda 加速 GPU

python - 索引错误 : shape mismatch: indexing arrays could not be broadcast together with shapes (2, ) (3,)

Python - 使用乘法运算符创建列表中对象的副本

python - 使用第二个矩阵选择三维元素,将 3D 数组展平为 2D 数组

matlab - 根据两行从矩阵中提取元素并获取它们的平均值

matlab - "RETURN"使用 "CurrentCharacter"按键返回空字符串

python - 如何将数组转换为列表?

python - 更改矩形的 X 值实际上并不会在 GUI 中移动它

matlab - 等同符号系数

python - 如何在 mac 上安装 numpy