[sdiy] Multimode pole-mixing - building notch responses

Richie Burnett rburnett at richieburnett.co.uk
Sun Sep 16 01:08:48 CEST 2018

Hi Tom,

Notch filters have pairs of complex zeros (roots of the transfer function's 
numerator) that pull the frequency response down towards zero.  Visualise a 
rubber sheet suspended above the ground with a pair of tent pegs pinning it 
to the ground at particular points.  (When you walk along the jw axis in 
s-domain the closer you go to a "zero" the deeper the notch is.)

Conversely, resonant filters have pairs of complex poles (roots of the 
transfer function's denominator) that push the magnitude response up. 
Visualise a rubber sheet with tent "poles" pushing it up to great height at 
particular points.  (When you walk along the jw asix in the s-domain the 
closer you get to a pole the more the gain peaks at that frequency due to 

Combinations of poles and zeros allow you to get particular frequency 
responses, and allow you to control things like notch width and depth.

The equations Don posted are s-domain prototype filter equations.  The 
cutoff frequency is 1 rad/s.  In practice the s terms are scaled to move the 
cutoff frequency to an arbitrary number of Hz, rad/s or whatever.  Often 
scaled exponentially with voltage ;-)

The best way to calculate all the transfer functions from that pole-mixing 
arrangement is to first work out what the s-domain transfer function (TF) is 
for each of the taps between the cascaded poles without any global feedback:

A = 1
B = 1 / (s+1)
C = 1 / (s+1)^2
D = 1 / (s+1)^3
E = 1 / (s+1)^4

Then rewrite all of these TFs with a common denominator of (s+1)^4 and 
expand them...

A = (s^4 + 4*s^3 + 6*s^2 + 4*s + 1) / (s^4 + 4*s^3 + 6*s^2 + 4*s + 1)
B = (s^3 + 3*s^2 +3*s + 1) / (s^4 + 4*s^3 + 6*s^2 + 4*s + 1)
C = (s^2 + 2*s + 1) / (s^4 + 4*s^3 + 6*s^2 + 4*s + 1)
D = (s + 1) / (s^4 + 4*s^3 + 6*s^2 + 4*s + 1))
E = 1 / (s^4 + 4*s^3 + 6*s^2 + 4*s + 1)

You can then work out what weightings you need to apply to each of the taps 
when mixing to get whatever TF you want.  I think that's how I did it.

I thought I sent you an Excel sheet with my calculations for this a couple 
of years ago, Tom?


-----Original Message----- 
From: Tom Wiltshire
Sent: Saturday, September 15, 2018 7:44 PM
To: Donald Tillman
Cc: SDIY List
Subject: Re: [sdiy] Multimode pole-mixing - building notch responses

Hi Don,

Sorry, I didn’t explain myself well enough. I’m talking about a pole-mixing 
filter like the Xpander (multimode that way) not a state-variable filter 
(multimode a different way).

State variable I get well enough, but I hadn’t really considered the notch 
response there either, so thanks for the explanation. The S domain maths is 
the same for the pole-mixing case, so I’m looking for  (s^2 + 1) / (s^2 + s 
+ 1) for a 2-pole notch, right?

What does the equation for a 4-pole notch look like? Can you do a 3-pole 
notch? What does that look like?


       Electric Druid
Synth & Stompbox DIY

> On 15 Sep 2018, at 19:24, Donald Tillman <don at till.com> wrote:
>> On Sep 15, 2018, at 10:46 AM, Tom Wiltshire <tom at electricdruid.net> 
>> wrote:
>> Can anyone explain pole-mixing notch responses to me in a way that I can 
>> “get”?
>> Most of the responses from a multimode pole-mixing filter I understand, 
>> but I’m struggling with notches.
>> The bandpass responses, for example, are the same as the highpass 
>> responses, but “shifted right” to effectively make them into a highpass 
>> and a lowpass in series - a bandpass. That’s easy to understand. 
>> Intuitive, even.
> Hey Druid,
> That's not really accurate.  Assuming a 2-pole multimode filter, the 
> lowpass will have a 12dB/oct slope down.  The highpass will have a 
> 12dB/oct slope up.  But the bandpass will have a 6dB/oct slope on each 
> side.
> So it's not like a highpass and lowpass in series.  It's much more like a 
> lowpass tilted counterclockwise with a 6dB/oct boost throughout.
>> I guess the trouble is I don’t really know what a notch filter looks like 
>> in terms of the s-domain equations, so it’s hard to see how the 
>> pole-mixing leads to that result. Even the Allpass responses are easier, 
>> but in that case, I *do* know what the s domain equation is supposed to 
>> look like (s-1/s+1 for the one-pole, s^2-s+1 / s^2+s+1 for the two-pole, 
>> right?).
> The notch function simply adds the lowpass and highpass signals together. 
> The secret is that, at resonance, the lowpass response shifts the phase 90 
> degrees behind, the highpass response shifts the phase 90 degrees forward, 
> leaving a 180 degree difference between them, and adding them together 
> cancels completely
> For the equation, we add the highpass "s^2" term and the lowpass "1" term, 
> and the "s" term isn't used:
>  (s^2 + 1) / (s^2 + s + 1)
> Since "s" is complex frequency, s^2 has a value of -1 at resonance, and 
> the -1 and +1 cancel for the notch.
>  -- Don
> --
> Donald Tillman, Palo Alto, California
> http://www.till.com

Synth-diy mailing list
Synth-diy at synth-diy.org

This email has been checked for viruses by AVG.

More information about the Synth-diy mailing list