Julius Smith <jos@...> writes:

> 
> 
> When digitizing analog filters using the bilinear transform
> and similar methods, we often have to deal with "delay-free
> loops" that arise (the Moog VCF is a classic example).  This is
> generally done via algebraic manipulations on the transfer function to
> eliminate the delay-free loops, since they are not computable. If the

I've never quite understood the history around this, isn't the delay-free
loop directly computable? It seems that many of the old designs insert
an extra delay, but perhaps that was a misunderstanding about the
computability?

It is just a linear set of equations and should be solvable directly, this
is what Raph's python notebook  does (posted below by Timo), along
with Vadim's paper (although he takes a much more fiddly
block-diagram based approach).

I've worked through both approaches (the bilinear transform directly
on the State Space Representation, and Vadim's TPT approach) for a
Moog ladder filter, and they both lead to a set of directly computable
formulas without an additional delay in the feedback path.

One set of linear "zero delay" formulas for the Moog ladder derived
from either Raph's or Vadim's approach is:

s0..s3: state variables, u: input, y3: output

w = g / (1 + g);
G = w*w*w*w;
S = (w*w*w*s0 + w*w*s1 + w*s2 + s3) / (1 + g);
u0 = (u - k*S)/(1 + k*G);  // Solve feedback
v0 = (u0 - s0)*g/(1 + g);
y0 = v0 + s0;  // 1st 1-pole output
s0 = y0 + v0;  // 1st 1-pole state
v1 = (y0 - s1)*g/(1 + g);
y1 = v1 + s1;  // 2nd 1-pole output
s1 = y1 + v1;  // 2nd 1-pole state
v2 = (y1 - s2)*g/(1 + g);
y2 = v2 + s2;  // 3rd 1-pole output
s2 = y2 + v2;  // 3rd 1-pole state
v3 = (y2 - s3)*g/(1 + g);
y3 = v3 + s3;  // 4th 1-pole output
s3 = y3 + v3;  // 4th 1-pole state

> original structure must be preserved at all costs, then we insert an ad
> hoc delay anywhere in the loop and use a sufficiently high sampling rate,
> etc. - Julius



------------------------------------------------------------------------------
Start Your Social Network Today - Download eXo Platform
Build your Enterprise Intranet with eXo Platform Software
Java Based Open Source Intranet - Social, Extensible, Cloud Ready
Get Started Now And Turn Your Intranet Into A Collaboration Platform
http://p.sf.net/sfu/ExoPlatform
_______________________________________________
Faudiostream-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/faudiostream-users

Reply via email to