POV-Ray : Newsgroups : povray.off-topic : FFT Toy : Re: FFT Toy Server Time
6 Sep 2024 13:17:37 EDT (-0400)
  Re: FFT Toy  
From: Mike Raiford
Date: 2 Feb 2009 09:20:53
Message: <49870145@news.povray.org>
Invisible wrote:
> Of course, it's not quite the same. With electronics, you have to 
> remember that your "10 Ohm" resisters are actually 10 Ohm +/- 10%. ;-)

Right, unless you have 1% resistors.

> 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.

That was one of things that threw me, if you look at poles and zeros 
diagrams, many of them are in the s domain, so you have to remember to 
wrap them around a unit circle. when you look at them.

>> 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.]
> 

Oh, don't be. I have a son, too. :) He's getting to the "human parrot" 
stage, now.. Gotta watch myself. He's great fun now. Can't wait till 
he's old enough to take an interest in some of the things I do.

>> 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...)
> 

I thought about downloading the demo to play around with. What was 
interesting was dragging a pole ever so slightly out of the unit circle 
at certain angles (frequency) would cause it to give a screeching 
feedback then go unstable. Of course a pole beyond the unit circle is 
obviously not a stable configuration. It was interesting to see just how 
far I could push it before the applet would decide not to render.

>> 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.
>

The JVM has come a long way, too. If I understand correctly much of the 
code in the VM gets translated to native machine code for the platform 
its on. CLR is much the same way.

>> 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

Of course. Much like guitarists discovered an interesting artifact of 
their amplifiers. Turn up the gain so the signal starts clipping makes 
the guitar sound much more interesting. :)

Dunno why, synthesizers have always fascinated me. More the 
waveform-based, rather than sample-based. Twisting tones into 
instruments is just cool. :)

> Ever heard of the Kurplus-Strong algorithm?

Nope :) I'm sure wikipedia has. It has, and looks like I read the 
article, so Yes. :)

Very much the IIR plucked string in the applet.

-- 
~Mike


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.