[music-dsp] time varying IIR filter smoothing

Erik de Castro Lopo erikd-music-dsp at mega-nerd.com
Thu Dec 11 12:34:00 EST 2003

On Thu, 11 Dec 2003 11:15:00 -0800
James McCartney <asynth at io.com> wrote:

> On Dec 11, 2003, at 1:50 AM, Yaakov Stein wrote:
> > 2)  Changing the positions of the poles and zeroes
> >     is certainly better than changing coefficients,
> >     and it allows you to directly check for stability.
> no it is unecessary, because stability is guaranteed if you are 
> linearly interpolating coefficients between two stable filters.

This may well be theoretically correct but may well be incorrect
in practice.

The original poster was talking about IIR filter with 100 poles/zeros.
With IIR filters with poles (or is it zeros?) near 1+j0, the numerator
polynomial gets to be VERY sensitive to coefficient rounding even in
double floating point. The problem is due to the magnitude of the 
largest coefficient being many orders of magnitude greater than the
smallest (as an example, try implementing an order 30 Chebyshev LPF
with a cuttoff at 0.01 of the sample rate as a single filter).

In cases like these it is very easy for a filter to be stable in theory
but highly unstable in practice. Obviously, these particular problems
disappear if the filter is implemented as a cascade of 2nd order

  Erik de Castro Lopo  nospam at mega-nerd.com (Yes it's valid)
"I would rather spend 10 hours reading someone else's source
code than 10 minutes listening to Musak waiting for technical
support which isn't."
   - Dr. Greg Wettstein, Roger Maris Cancer Center

More information about the music-dsp mailing list