## Book: The Art of VA Filter Design 2.1.0

DSP, Plug-in and Host development discussion.
Z1202
KVRian
978 posts since 12 Apr, 2002
1eqinfinity wrote:Funny thing, If I boldly solve for (Hlp^2 + Hhp^2)^2 I get a peak mode with some beareable freq response distortion to the right of the f.
i.e H = (1+s^2)^2 / (1+s)^4
Not sure what you're referring to. (1+s)^2/(1+s)^4 is a notch.

Edit: the notch is (1+s^2)^2/(1+s)^4, it was a typo
Last edited by Z1202 on Wed Mar 07, 2018 4:25 am, edited 1 time in total.

1eqinfinity
KVRist
202 posts since 29 Apr, 2012
Z1202 wrote:Also I'm not sure why you referred to the unit circle...
I was just making things clearer for myself because for a moment I was surprised by the appearance of the infinity
Z1202 wrote:Not sure what you're referring to. (1+s)^2/(1+s)^4 is a notch.
Yes, but if the numerator (1+s^2)^2 then I get the following (the upper one is this "peak" and the lower is the notch we discussed in the beginning):

Edit: the coeffs are 1, 0, 2, 0, 1.

Z1202
KVRian
978 posts since 12 Apr, 2002
1eqinfinity wrote:
Z1202 wrote:Also I'm not sure why you referred to the unit circle...
I was just making things clearer for myself because for a moment I was surprised by the appearance of the infinity
Z1202 wrote:Not sure what you're referring to. (1+s)^2/(1+s)^4 is a notch.
Yes, but if the numerator (1+s^2)^2 then I get the following (the upper one is this "peak" and the lower is the notch we discussed in the beginning):

Edit: the coeffs are 1, 0, 2, 0, 1.
What is your picture with the feedback set to 0? Because it must be a pure notch. There was a typo, I meant (1+s^2)^2/(1+s^4), apparently you are already using that.

Edit: Maybe there is some bug somewhere else, because your filter also explodes at k=3.1 and the explosion is frequency-dependent. That shouldn't happen.

1eqinfinity
KVRist
202 posts since 29 Apr, 2012
Both pics are with nonzero fb.

Yes, I thought there's a mistake in my implementation. I should look for a bug more carefully, thanks!

Z1202
KVRian
978 posts since 12 Apr, 2002
1eqinfinity wrote:Edit: the coeffs are 1, 0, 2, 0, 1.
What is easy to forget here is that the mixing coefficients are not the polynomial coefficients in terms of s. You need a polynomial in terms of (s+1), which gives (q-1)^4+2(q-1)^2+1=q^4-4q^3+8q^2-8q+4, where s+1=q, s=q-1. Almost fell for the same trap myself

1eqinfinity
KVRist
202 posts since 29 Apr, 2012
Emmm, I'm confused
Correct me if I'm wrong, but after we drop off the common denominator and write down only numerators as parts of a new equation, algebraically we have a right to apply any linear operation to the parameter as long as we apply it to all of the parameter instances in the equation. So when you make a slick s - 1, it doesn't really change anything.

To put it straight, are these a0 ... a4 coefficients those that I can use for u, y1, ... y4 signals?

Edit: but if you say the linear ladder with k < 4 shouldn't explode then I definitely have an error somewhere else too, since even in LP mode it explodes.

Z1202
KVRian
978 posts since 12 Apr, 2002
1eqinfinity wrote:Emmm, I'm confused
Correct me if I'm wrong, but after we drop off the common denominator and write down only numerators as parts of a new equation, algebraically we have a right to apply any linear operation to the parameter as long as we apply it to all of the parameter instances in the equation. So when you make a slick s - 1, it doesn't really change anything.
We write the numerator as a polynomial relative to s. But the modal outputs of the ladder do not produce the powers of s. They produce the powers of (s+1). That's the reason for this formal replacement to s-1 in the book.

Z1202
KVRian
978 posts since 12 Apr, 2002
1eqinfinity wrote:Edit: but if you say the linear ladder with k < 4 shouldn't explode then I definitely have an error somewhere else too, since even in LP mode it explodes.
Make sure you completely removed the shaper. A bug in a shaper can make the filter explode. Also I think that a 1-pole HP shaper shouldn't make the filter more unstable, but I never had a formal proof of that.

Edit: although, maybe I do. The 1-pole hp shifts the phase response of the 4 LPs up, therefore the phase inversion point is located further to the right than usual. Since the amplitude response of the 4 LPs is not increased by the added shaper, the amplitude response at the inversion point is always lowered by the HP shaper and so the filter is not more unstable

mystran
KVRAF
5032 posts since 12 Feb, 2006 from Helsinki, Finland
1eqinfinity wrote: Edit: but if you say the linear ladder with k < 4 shouldn't explode then I definitely have an error somewhere else too, since even in LP mode it explodes.
The resonance (for a linear 4-pole cascade with equal poles) should be completely independent of the cutoff and reach self-oscillation at exactly k = 4. In fact, I wouldn't bother trying to figure out the zero-responses before you get this right.
If you'd like Signaldust to return, please ask Katinka Tuisku to resign.

1eqinfinity
KVRist
202 posts since 29 Apr, 2012
Hmm, ok. I should think more careful about polynomials.
As to the shaper, I'm getting the same behaviour even with those three lines commented out. Maybe I misinterpreted the expressions for S and G.

mystran
KVRAF
5032 posts since 12 Feb, 2006 from Helsinki, Finland
Z1202 wrote: Edit: although, maybe I do. The 1-pole hp shifts the phase response of the 4 LPs up, therefore the phase inversion point is located further to the right than usual. Since the amplitude response of the 4 LPs is not increased by the added shaper, the amplitude response at the inversion point is always lowered by the HP shaper and so the filter is not more unstable
It's not possible to get instability with less than 3 HP poles in the loop. With only 2 poles, the secondary resonance at low frequency would be at DC and there's two zeroes there so it won't work. With 3 or more HP poles, you can get a low-frequency self-oscillation going if the pole frequencies (of the HP poles) are close enough to each other to get you enough gain the 180 degrees phase-point... although I guess you need a minimum of 4 in a buffered ladder (and the HP poles should be buffered then as well? not sure about this though) if you want this to happen before the high-frequency resonance is self-oscillating (in an unbuffed diode ladder, it's easier to make it go crazy).
If you'd like Signaldust to return, please ask Katinka Tuisku to resign.

1eqinfinity
KVRist
202 posts since 29 Apr, 2012
I did misinterpret G and S. Even though in the book Vadim directly points to the general instanteneous response equation for 1-pole, I missed that point and got confused by the notation used from that moment on. ladder G != g^4, and so on.

I haven't recalculated the multimode stuff yet, but with a correct filter structure and nonzero fb u + 2.0 * y2 + y4 still yields a funny peak. Here's a filtered sawtooth spectrum:

Last edited by 1eqinfinity on Thu Mar 08, 2018 2:05 am, edited 1 time in total.

Z1202
KVRian
978 posts since 12 Apr, 2002
1eqinfinity wrote:I haven't recalculate the multimode stuff yet, but with a correct filter structure and nonzero fb u + 2.0 * y2 + y4 still yields a funny peak.
Z1202 wrote:
1eqinfinity wrote:Edit: the coeffs are 1, 0, 2, 0, 1.
What is easy to forget here is that the mixing coefficients are not the polynomial coefficients in terms of s. You need a polynomial in terms of (s+1), which gives (q-1)^4+2(q-1)^2+1=q^4-4q^3+8q^2-8q+4, where s+1=q, s=q-1. Almost fell for the same trap myself

Z1202
KVRian
978 posts since 12 Apr, 2002
1eqinfinity wrote:I did misinterpret G and S. Even though in the book Vadim directly points to the general instanteneous response equation for 1-pole, I missed that point and got confused by the notation used from that moment on. ladder G != g^4, and so on.
Yes, there are too few letters to choose from, got equally confused by your code OTOH, there's a positive aspect to it, it forces you to really think along and not simply copy the equations

1eqinfinity
KVRist
202 posts since 29 Apr, 2012
Z1202 wrote:
1eqinfinity wrote:OTOH, there's a positive aspect to it, it forces you to really think along and not simply copy the equations
Totally