<div dir="ltr">By the way, forgot to mention that I dug through our list's history and it seems Jurgen Haible observed something similar, questioning if the SSM2040 is symmetric after all....<div><div><div><a href="https://synth-diy.org/pipermail/synth-diy/1996-April/035864.html">https://synth-diy.org/pipermail/synth-diy/1996-April/035864.html</a><br></div></div></div><div><br></div><div>Also, the clipping effect that I see at higher levels seems much different between the implementation of Jurgen Haible and that of Rene Schmitz: <a href="https://www.schmitzbits.de/rs2040.html">https://www.schmitzbits.de/rs2040.html</a>. If it is crucial for the character of the SSM2040, these two implementations should sound very differently, unless I'm mistaken?</div><div><br></div><div>Finally, I'm hoping that Andrew Simper will chime in, as I love his digital implementation of the SSM2040! Of course I'm also understanding in case you cannot share too many details, Andrew :).</div><div><br></div><div>Regards,</div><div><br></div><div>Rutger</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Op zo 8 sep 2024 om 12:34 schreef Rutger Vlek <<a href="mailto:rutgervlek@gmail.com">rutgervlek@gmail.com</a>>:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Dear all,<div><br></div><div>In the sparse moments between day time job and fatherhood I'm trying to push forward with an idea I've had for a long time. I'm trying to capture the variation in favourable non-linear characteristics from well-known filters (read SSM2040 and Moog Ladder) and implement them in a more modern topology (read SSI2164). Would also be great to be able to select between them, while using the same filter core. I'm not necessarily aiming for perfectly cloning the response of vintage filters, but rather hope to take inspiration from them and perhaps to discover other pleasant non-linearities.</div><div><br></div><div>I've been approaching this with Spice as well as with mathematical modelling in Python, using a multi-dimensional Newton-Raphson solver with the system of equations needed to describe the various filters.</div><div><br></div><div>Right now I'm trying to understand the character of the SSM2040, and am a bit puzzled. I am familiar with the inverting cascaded topology of this filter. And with the typical math that describes the non-linearities of an OTA-based filter: </div><div>Vout = g * tanh(Vin-Vout).</div><div><br></div><div>I have been reading across the internet about the asymmetrical saturation of this filter, most notably in the application notes for making filters with the SSI2164: <a href="https://www.soundsemiconductor.com/downloads/AN701.pdf" target="_blank">https://www.soundsemiconductor.com/downloads/AN701.pdf</a>. Based on this information, I had assumed that the tanh only operates in one direction, something like this:</div><div>y = tanh(x) if x < 0</div><div>y =x if x > 0</div><div><br></div><div>However, in Spice, when simulating the internals of the SSM2040 using Jurgen Haible's schematic (<a href="http://jhaible.com/legacy/tonline_stuff/jh2040.gif" target="_blank">http://jhaible.com/legacy/tonline_stuff/jh2040.gif</a>), I don't see that happening. Instead, I see tanh distortion in both directions.</div><div><br></div><div>Only when I push the input harder (beyond 1Vpp), I see one side of the output clipping much sooner than the other. This seems in line with the effect described in AN701, but is the SSM2040 really driven that hard in real world applications, and is it really *this* additional effect, on top of the already present tanh distortion, that explains the SSM2040's character? And if so... how would one model it mathematically?</div><div><br></div><div>Rutger</div></div>
</blockquote></div>