On 22.10.2010 03:10, Mathieu Bouchard wrote:
On Fri, 22 Oct 2010, Martin Schied wrote:
yeah, but this is often the case when messing things up in pd. I tried rpole~ 1 with sinewaves first which worked as integrator, but already had different results for the output of rpole~ if the wave started at 0 or pi/2 (which is logic, but I didn't think about it first...)
um, yeah, the amount of DC is rather relative to where you start looking, and where you stop (or where you're at so far). That's why I used things like [rpole~ 0.99] to force it to recentre around 0 rather quickly.
I wanted to use a fairly high a < 1 because then the phase for all frequencies is approximately 90° off like for the ideal a=1. Using slightly smaller factors and comparing input / output didn't satisfy my expectations. maybe that would't matter at all - let's experiment...
lop's gain compensation = 1 - 0.999 = 0.001 rpole's gain to compensate for = 1/0.001 = 1000 cutoff frequency = 0.001*44100/2π = 7.019 therefore use [lop~ 7.019] with [*~ 1000] (in any order)
I thought about lop~ doing similar things too, but didn't know what lop~ is doing and I'm sure I wouldn't have figured it out in any reasonable time this morning. thanks!
Ah, I also think that you'll like to know that the total weight of an input sample in [rpole~ a] can be written like this :
k = a^0 + a^1 + a^2 + a^3 + a^4 + ... but a*k = a^1 + a^2 + a^3 + a^4 + ... therefore k-a*k = a^0 = 1 k*(1-a) = 1 k = 1/(1-a) is how the gain of [rpole~] is computed above.
that's indeed interesting. So the gain is defined for a constant signal having the same input and output samples (or in other words DC having no amplification) if I understood it correctly.
I attached my [lop2~] abstraction, which is a rpole~-version of [lop~], with a signal-rate right-inlet. I posted it some time ago.
I remember it now, and already saved it in my mail archives :)
cheers Martin