# [PD] overdriven speaker

Martin Schied crinimal at gmx.net
Fri Oct 22 01:42:28 CEST 2010

```  Hi!

On 21.10.2010 07:17, Mathieu Bouchard wrote:
> On Thu, 21 Oct 2010, Martin Schied wrote:
>
>> It shouldn't be too hard to do this integration with basic pole /
>> zero objects. A problem using integration only is the lack of
>> mechanical damping. A real speaker goes back to x=0 if no signal is
>> present. A simple integrator doesn't
>
> right. That's why you can't just use [rpole~ 1]. Then, any [rpole~]
> with a value between 0 and 1 will act as a convolution with an
> exponential decay function. An integral is a convolution with a
> constant function, such as exp(0*t).
nice way to look at it. I used the formulation y[n] = x[n]+ a[n] *
y[n-1] in the help files and some semi-knowledge about filters...
>
> Because the integral of the exponential decay function is bigger than
> 1, the result of [rpole~] will have some amount of gain.
>
>> - so the 'simulated' cone would just fly away slowly.
>
> That's only in the case where the signal has a DC.
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...)
>
>> [rpole~ 0.999] does it very well...
>
> Note that [rpole~] is dependent on sampling rate. So, assuming you
> have a sampling rate of 44100 Hz, the rate-independent way to do it is :
>
>   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!

cheers
Martin

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20101022/3ec21063/attachment-0001.htm>
```