You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

双二阶(Biquad)峰值滤波器实现出现稳定性问题求助

转置直接II型Biquad峰值滤波器实现稳定性问题

我正尝试采用**Direct 2 Transposed(转置直接II型)**结构实现音频范围内的Biquad峰值滤波器,已确认a、b参数与EarLevel Engineering Biquad Calculator v3生成的一致。以下是处理差分方程的代码(忽略FType 1和3):

function TFrmFilters.Filter(SignalIn: double; FType: integer): double;
begin
  case FType of
    1:                             // AllPass (no filter)
      Result := SignalIn;
    2:                             // Biquad Peak
    begin
      Yn := SignalIn + S1n_1;
      S1n := S2n_1 + b1 * SignalIn - a1 * Yn;
      S2n := b2 * SignalIn - a2 * Yn;
      S1n_1 := S1n;
      S2n_1 := S2n;
      Result := Yn;
    end;
    3:                             // Resonator  (not implemented)
      Result := SignalIn;
  end;
end;  

输入信号为440Hz正弦波,计算采用Double数据类型。该滤波器在增益、Q值及输入信号频率的宽范围内均表现出不稳定性,推测差分方程处理存在问题。

内容的提问来源于stack exchange,提问作者Jon G.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 20:12:31