DSP, Plug-in and Host development discussion.
CurryPaste
KVRist
37 posts since 7 Jul, 2012
---LR8---
SVF2pole1(in,R1 -> hp2,bp2,lp2)
SVF2pole2(lp2,R2 -> lp2hp2,lp2bp2,lp4)
SVF2pole3(lp4,R1 -> lp6)
SVF2pole4(lp4,R2 -> lp8)
ap4 = m0 hp2 + m1 bp2 + m3 lp2hp2 + m4 lp2bp2 + m5 lp4
hp8 = ap4 - lp8
Thank you for this!

I think there is a typo: SVF2pole4(lp4,R2 -> lp8) should have input lp6, right?

And a question: R1 and R2 are damping factors? So R1 and R2 should both be sqrt(2)/2 for butterworth?

andy-cytomic
KVRAF
2195 posts since 3 Dec, 2008
CurryPaste wrote: Thank you for this!

I think there is a typo: SVF2pole4(lp4,R2 -> lp8) should have input lp6, right?

And a question: R1 and R2 are damping factors? So R1 and R2 should both be sqrt(2)/2 for butterworth?
Yep, should be lp6. I'll leave it for you to work out what R1 and R1 are.
The Glue, The Drop - www.cytomic.com

mystran
KVRAF
5032 posts since 12 Feb, 2006 from Helsinki, Finland
CurryPaste wrote: And a question: R1 and R2 are damping factors? So R1 and R2 should both be sqrt(2)/2 for butterworth?
The answer to this question can be found in the previous pages.
If you'd like Signaldust to return, please ask Katinka Tuisku to resign.

Z1202
KVRian
978 posts since 12 Apr, 2002
Was a bit unhappy with the asymmetric nature of mystran's allpass trick, where one of the bands is obtained by subtracting the other one from the allpass signal.

Just occurred to me, that a single generalized SVF (controllable canonical form) could probably be the simplest L-R implementation in respect to modal mixing coefficients, as we simply would need to pick up the first ("highpass") and the last ("lowpass") outputs. If this form turns out numerically stable enough.

The fully parallel implementation could be made using real Jordan normal form with real Jordan cells of 4x4 size for (duplicated) complex poles, or, probably one could equivalently use parallel chains of double serial SVFs.

The compensating allpass of course can be implemented using only half the order, but since we anyway need the full order for at least one of the band signals...

mystran
KVRAF
5032 posts since 12 Feb, 2006 from Helsinki, Finland
Z1202 wrote:Was a bit unhappy with the asymmetric nature of mystran's allpass trick, where one of the bands is obtained by subtracting the other one from the allpass signal.
Why would the asymmetry matter?
If you'd like Signaldust to return, please ask Katinka Tuisku to resign.

Z1202
KVRian
978 posts since 12 Apr, 2002
mystran wrote:
Z1202 wrote:Was a bit unhappy with the asymmetric nature of mystran's allpass trick, where one of the bands is obtained by subtracting the other one from the allpass signal.
Why would the asymmetry matter?
Probably it doesn't. Although there is some kind of scientific culture which prefers symmetric things. We have been taught in university to prefer symmetric things whenever possible if there are no reasons for the contrary. Dunno. Often the symmetry can "tell" you something. Things could be easier to analyze, you have additional means of verification. E.g. recently I had to find a maximum of x/(1+x^2) (I don't know it off the top of my head ). By converting it to the symmetric form (x+1/x)^-1 one can immediately see that the maximum is at 1. Of course in this case it doesn't matter much (although it spared me taking the derivative or having to use a CAS), but sometimes you could simply miss something important, which would be otherwise well visible in a symmetric form.

Also the signals are treated "kind of" equally, which means that one would expect similar precision losses and such. Although in the particular case of the hp and lp outputs of "SVF" they are still somewhat asymmetric. But it kind of feels better.

There's actually one more symmetric possibility. Besides the SVF and paraller forms, one could use cascaded form of 2-pole SVFs, using the modal pickup features as I suggested earlier in this thread. Off the top of my head if we used the bandpass signals as the ones fed into the next SVF, the things would be as symmetric as possible.

Edit: so in the end it's just a habit: always look for a symmetric solution. Maybe it won't be found or for whatever reasons won't be taken, but at least look for it and see if it gives any further insights.