AW: VC delay module ideas?

Harvey Devoe Thornburg harv23 at leland.Stanford.EDU
Sat Oct 31 21:18:54 CET 1998


> 
> Juergen --
> 
> This is very exciting. I think it would be great to develop analog PM
> technology. Please keep us posted on your progress.
> 
> I've been thinking about this problem also, but along somewhat different
> lines. To me, Karplus-Strong and the Stanford delay-line implementation
> of PM are convenient but rather unphysical representations of the real
> world.  So I hope to avoid: a crude analog implementation of ... a crude
> digital implementation ... of an analog (physical) model. I'd rather try
> to make a direct, if crude, analog implementation of the physics without
> the delay-line approach. 

But the delay aspect of the model comes straight from the physics.
It is not something you can avoid. In the simplest case you are 
simulating the ideal wave equation, which defines solutions over time 
and space.  These solutions *must* be in the form of traveling waves; 
eg. f1(t + x/v), f2(t - x/v).  Looking at this in the time dimension 
yields pure time delays dependent on wave velocity and spatial 
coordinates.  Boundary conditions force the waves to reflect at 
the endpoints. This gives you a delay system with feedback.  
If you like, you can ignore the math and imagine a wave on a string 
bouncing between two endpoints.

I believe that Juergen's idea was not to move everything to the digital
world -- he just wanted to avoid tuning errors for the feedback filter
(is this correct?)  You need a linear phase filter to do so, which is 
harder to do with analog filters (IIRC, Bessel filters might be appropriate 
for the task).  The phase response of a linear phase filter resembles 
a pure time delay.

> In other words, an analog computer for the
> one-dimensional nonlinear differential equation. So far I haven't made
> much progress. My approach would be to simply use a sawtooth VCO to
> provide the necessary delay and timing information. The VCO would then
> in some sense be a pilot or guide to the nonlinear relaxation
> oscillator. I think I can see how to implement the necessary nonlinear
> functions. (Your interpolating scanner would be the ultimate method,of
> course.) Where I'm stuck is with how to implement or approximate the
> convolution integral that appears in the theory. 

Convolution is the same as filtering with a predefined impulse response.
Only specific filters are easy to do in analog domain (those with
exponential/sinusoidal/polynomial response).  I suppose you could take
the Fourier transform of the impulse response inside the convolution
integral, and then figure out some way to approximate this with a 
bank of bandpass filters (but you'd have to get both magnitude *and*
phase right as well).   


> The delay-line approach
> sidesteps this issue by doing a kind of folding as it goes along, but
> it's not exactly the same thing. 

If the impulse response is bandlimited, it *is* the same thing, given
appropriate sampling and reconstruction filters.  Look 
up "impulse invariant transform" in your favorite DSP book (eg. 
Oppenheim and Schaefer).  This is why it is so much easier to do 
arbitrary convolutions in the digital domain.

> 
> A good reference for the physical models is this review: "On the
> oscillations of musical instruments", McIntyre, Schumaker, Woodhouse, J.
> Acoust. Soc. Am. v. 74,p. 1325, 1983.
> 
>   Ian
>

-Harvey



More information about the Synth-diy mailing list