假设我有一个传递函数,例如:
如何计算脉冲响应?
(这只是一个例子,重要的是它是封闭的符号形式!)
如果我理解正确,如果我可以将中的某个多项式(通过使用泰勒展开式),我就可以读出系数。
但是还有其他方法吗?
假设我有一个传递函数,例如:
如何计算脉冲响应?
(这只是一个例子,重要的是它是封闭的符号形式!)
如果我理解正确,如果我可以将中的某个多项式(通过使用泰勒展开式),我就可以读出系数。
但是还有其他方法吗?
您的过滤器是全极 IIR,这简化了一些事情。通常你可以编写如下形式的传递函数:
回到离散时域,您将得到:
因此,在您的情况下,它是:
可以通过将 Kronecker delta 输入系统([1 0 0 0 0 0 0 ...] 信号)来计算特定值。基本上,您会观察到每 30 个样本就会发生一些事情;)您可以在 MATLAB/Octave 中轻松生成绘图,只需记住您的滤波器具有以下系数:
b=[1]
a=[1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.1]
通过调用impz(b,a)函数,您将获得类似的图(前 100 个样本):

如果您的问题实际上是关于实现此传递函数,那么您不想使用它的脉冲响应。只需执行 jolek 答案中正确给出的差分方程:
只有 FIR 滤波器通常直接使用它们的(有限)脉冲响应来实现。IIR 滤波器通过递归实现,如 (1) 所示。