|
|
Mike Raiford wrote:
>> And WHO SAID that physics is borig, eh? ;-) Seems pretty fun to me...
>>
>> I'll have to throw together a toy for displaying the transfer function
>> in 3D. ;-)
>
> I quite enjoy falstad's Java applets...
Yes, there's some good stuff there! :-D
> Interestingly the IIR filters can also be created with an analog circuit
> (using the very same poles and zeros, in fact).
Yes. That's where the whole IIR design theory comes from in the first
place, from *long* before we had electronic computers...
Of course, it's not quite the same. With electronics, you have to
remember that your "10 Ohm" resisters are actually 10 Ohm +/- 10%. ;-)
And also, it seems you cannot make a digital IIR with *exactly* the same
frequency response as the corresponding analogue IIR - although it's a
pretty close match. But analogue IIRs are designed in the s-domain,
which is a different "shape" to the z-domain. It's quite easy to map
coordinates from one domain to the other, but the resulting function
doesn't behave in exactly the same way.
> I think I seriously
> annoyed my wife with the filtering applet. ;)
Oh yeah - you have a wife, don't you?
[I'm not jelous. Much.]
> Its kind of nice knowing enough to predict what will happen when moving
> a pole or a zero on the chart (Custom IIR)
I tried to build a unit for Reaktor that does this, but without much
success. (Again, the mathematics isn't "hard", it's just fiddly. And
Reaktor isn't terrifically flexible...)
> Interestingly modern computers are fast enough to run an arbitrary FIR
> filter with little (actually no) trouble.
Yes, the DSP guide talks about using IIRs to avoid needing slow FIRs,
but today computers are that much faster that even a Java applet running
on a JVM emulator runs easily fast enough to do a naive 2,000-point
convolution directly. If you wanted faster, an FFT-convulation should
easily give it to you.
> Though I imagine the reason
> the MT32 emulator went IIR is twofold: 1. It approximates rather closely
> the original analog filter in the real device, 2. 32 channels of audio
> need to be filtered simultaneously in real time. IIR is vastly faster.
Yes.
If you want a digital filter to precisely disect a signal (e.g., for
technical analysts), you want the most accurate filter you can get. But
if you just want to make interesting noises, precision is not important.
Indeed, resonance, ripple, and other "artifacts" that are usually to be
avoided suddenly become useful and interesting! :-D
Ever heard of the Kurplus-Strong algorithm?
Post a reply to this message
|
|