问题: 我正在尝试使用以下脉冲响应/内核分析 FIR 滤波器的行为:
使用Matlab的函数grpdelay(myKernel,length(myKernel)),得到下图:
根据我有限的知识,该图不正确,因为它包含负值。我的理解正确吗?如果是,我怎样才能获得更准确的群延迟图?
代码:
onePulseRun20 = dlmread("C:\Users\agusfrpa\Pictures\singlePulseRun20.txt");
twoPulseRun21 = dlmread("C:\Users\agusfrpa\Pictures\twoPulseRun21.txt");
%twoPulseRun22 = dlmread("C:\Users\agusfrpa\Pictures\twoPulseRun22.txt");
%y is averaged one pulse data
y = mean(onePulseRun20,1);
pulse = twoPulseRun21(1,:);
myFilter = conj(fft(y))./(abs(fft(y)).^2+.3);
myKernel = real(ifft(myFilter));
myKernel = myKernel(4700:5250);
grpdelay(myKernel, length(myKernel));
我将在评论中发布数据链接。