MATLAB:fir1命令是不兼容的fir2命令

时间:2015-04-19 15:31:02

标签: matlab filter coefficients

MATLAB表示“fir2功能还设计了窗口FIR滤波器,但具有任意形状的分段线性频率响应。 这与fir1相反,后者仅采用标准低通,高通,带通和带阻配置设计滤波器。“

我用fir1命令找到了fir滤波器系数,并使用freqz获得频率响应,如下所示

b1=fir1(M,wn,'high') % b1:highpass FIR filter coefficients

hd=freqz(b1,1,w) %FIR filter frequency responses with respect to b1

然后我将此频率响应(hd)传递给fir2,如下所示

b2=fir2(M,w,hd) % get FIR filter coefficient from same frequency samples(w) and frequency responses(hd)
根据MATLAB,

b1必须等于b2 但对于13阶的FIR滤波器 这是结果:

b1 = 0.0042 0.0063 -0.0000 -0.0403 -0.1221 -0.2103 0.7470 -0.2103 -0.1221 -0.0403 -0.0000 0.0063 0.0042

b2 = 0.0017 -0.0044 0.0180 -0.0937 0.2075 -0.1097 -0.0012 0.0105 -0.0081 0.0050 -0.0025 0.0010 -0.0005

b1不等于b2。理论上这应该是正确的。我不明白什么是错的。

0 个答案:

没有答案