Transforming IIR filters to have larger feedback step

DSP, Plug-in and Host development discussion.
KVRist
41 posts since 5 Jul, 2018 from Cambridge, UK

Post Sun Apr 11, 2021 12:10 am

Hi! Say I have an IIR filter, like:

Code: Select all

y[n] = b0*x[n] + b1*x[n-1] + ...
       - a1*y[n-1] - a2*y[n-2] - ...
If I then produce a filter with the same frequency response, but where the feedback is at 2-sample intervals, like:

Code: Select all

y[n] = b0m*x[n] + b1m*x[n-1] ...
       - a1m*y[n-2] - a2m*y[n-4] - ...
What's the name for this? Is there a writeup which explores the impact on numerical accuracy and stuff?
Last edited by signalsmith on Sun Apr 11, 2021 10:34 pm, edited 4 times in total.

KVRAF
6318 posts since 12 Feb, 2006 from Helsinki, Finland

Post Sun Apr 11, 2021 4:40 am

Not sure what it would be called (and the interesting papers for the polyphase IIR half-band filters and what not that use these types of schemes are nearly ungoogleable unless you remember the exact title)...

But rougly, what happens is that you'll get a second set of poles as reflection across the z-plane imaginary axis, like the filter response was aliasing at fs/4. From the point of view of numerical accuracy, since you're essentially switching between two "regular" filters evaluated at alternating samples, the numerical accuracy should be about the same (ie. crapping if you're using direct forms, but this should not make things significantly worse as far as I can think of).
Preferred pronouns would be "it/it" because according to this country, I'm a piece of human trash.

KVRist

Topic Starter

41 posts since 5 Jul, 2018 from Cambridge, UK

Post Sun Apr 11, 2021 12:15 pm

Yeah - I'm writing up something else, and hoped to find a neat resource to link to and say "read this, then come back".

I think this is slightly different from the polyphase IIR half-bands because the odd/even filters are different in that case, whereas I'm taking an existing filter and producing another single filter just with different feedback-spacing.

(The numerical accuracy is going to suck though, because I can't think of a way of avoiding the direct form for my particular use-case.)

KVRAF
6318 posts since 12 Feb, 2006 from Helsinki, Finland

Post Sun Apr 11, 2021 1:14 pm

well the thing is.. using 2-sample delays instead of 1-sample delays replicates the spectrum (of the poles) twice.. using 3-sample delays replicates 3 times.. and so on with every other copy reflected.. if you start with one-pole this gives you the usual comb filter, but you can do it with multiple such delays too.. other than that I'm not sure where you point you...
Preferred pronouns would be "it/it" because according to this country, I'm a piece of human trash.

KVRist

Topic Starter

41 posts since 5 Jul, 2018 from Cambridge, UK

Post Sun Apr 11, 2021 10:24 pm

I can't tell if we've misunderstood each other. I wasn't looking for help understanding, but for help explaining it to other people (especially if there was already a name for it). Maybe that was clear, and you were saying "I don't have a link for it, but just explain it yourself, like this".

I'm also not sure we're discussing exactly the same scheme/transformation - so either I need to work on explaining that better, or I'm asking in the wrong place.

Thanks for the replies, though. 🙂

KVRAF
6318 posts since 12 Feb, 2006 from Helsinki, Finland

Post Sun Apr 11, 2021 10:54 pm

signalsmith wrote:
Sun Apr 11, 2021 10:24 pm
I can't tell if we've misunderstood each other. I wasn't looking for help understanding, but for help explaining it to other people (especially if there was already a name for it). Maybe that was clear, and you were saying "I don't have a link for it, but just explain it yourself, like this".
Fair enough. Well, I'm not aware of any name for this particular scheme, other than I guess "comb filter" even though in this case it's a very short comb-filter. :)
Preferred pronouns would be "it/it" because according to this country, I'm a piece of human trash.

Return to “DSP and Plug-in Development”