我目前正在构建一个需要适合 DSP 的混响。我正在使用此链接https://ccrma.stanford.edu/~jos/pasp/Freeverb.html中提出的模型。
它涉及创建一些具有高阶(超过 1000 个)的反馈梳状滤波器。为此,我使用了集成在我的 DSP 中的二阶部分 IIR 滤波器 (IIRSOS)。我正在使用 Matlab 函数“tf2sos”,它采用期望滤波器的传递函数 (TF) 的分子和分母,并创建二阶部分 (SOS) 系数的矩阵。有了这个系数,我可以做出我想要的。
问题:对于高阶滤波器(大约 200 阶),“tf2sos”函数似乎完全不稳定。然而,名为 dsp.IIRFilter 的 Matlab 对象也使用二阶部分 IIR 似乎可以处理它:
订单的脉冲响应 = 200 :订单
的脉冲响应 = 1500 :

在第二张图片中,您可以看到带有 tf2sos 系数的滤波器完全出错了。有人知道我如何获得像 1500 这样的订单的函数系数矩阵吗?
谢谢你。