我有一个一阶低通滤波器(LPF)在频域,我想数字化它。我比较了测试的频率响应图,但是我得到了奇怪的结果。。。你知道吗
虽然非常基本,但我无法通过阅读^{
num
,den
:S平面上的分子和分母b
,a
:我希望它是b
,a
数字差分方程滤波器(IIR)的系数,形状:Y[n]=a0*X[n]+a1*X[n-1]+。。。-b1*Y[n-1]。。。你知道吗下面是一个代码示例:
Fs = 48000.0
f = 2 * np.logspace(1,4,1024)
num = [0 , 1]
den = [0.001 , 1]
tmp, H = sig.freqs(num, den, worN=1024)
b, a = sig.bilinear(num, den, 1.0)
tmp, Hd = sig.freqz(b,a, worN=1024)
plt.semilogx(f, 20*np.log10(np.abs(H)))
plt.semilogx(f, 20*np.log10(np.abs(Hd)))
我做错什么了?你知道吗
是的,这很有帮助。然后我进入下一步,使两个“w”向量的长度相同,并覆盖所有有趣的采样点,如下所示:
此外,如果曲线图的单位为Hz(不是Rad/Sec0),则w应除以2*PI:
问题是打印时没有在x轴上使用tmp,而且freqz以弧度/采样为单位给出了规格化的tmp向量:
这个代码运行得非常好。希望有帮助。你知道吗
相关问题 更多 >
编程相关推荐