Why are IIR Filters designed in the Filter Design Toolbox more stable than those in the Signal Processing Toolbox?

Illustration
Wyatt - 2021-03-24T10:05:26+00:00
Question: Why are IIR Filters designed in the Filter Design Toolbox more stable than those in the Signal Processing Toolbox?

When designing filters you need normalized coefficients, and when they get very close or abut to 0 or 1, IIR goes unstable with the Signal Processing  Toolbox. This effect is magnified for higher orders of the filter.   The IIR filters designed in Filter Design Toolbox are more stable.

Expert Answer

Profile picture of Kshitij Singh Kshitij Singh answered . 2025-11-20

The behavior observed is an expected behavior. This is a result of using the Transfer Function versus the Zeros and Poles of the filter generated by the BUTTER function in the Signal Processing Toolbox. They are identical mathematically but numerically the Zeros and Poles are more stable.
 
This limitation is mentioned in the  documentation for the BUTTER function in Signal Processing Toolbox 6.9 (R2008a).
 
The resolution is illustrated below:
 
 
[b,a] = butter(6 , [25e6 29e6]/500e6 , 'bandpass') % bad design 

[z, p, k] = butter(6 , [25e6 29e6]/500e6 , 'bandpass'); % good design 

[sos,g] = zp2sos(z,p,k); 

Hd = dfilt.df2tsos(sos,g); 

fvtool(b,a,Hd, 'Fs', 500e6*2)


Not satisfied with the answer ?? ASK NOW

Get a Free Consultation or a Sample Assignment Review!