I'm trying to understand how diode circuits are implemented in wave digital filters, particularly for clippers. The research papers and other sources I've looked at use the equation

$$I(V) = 2I_s \sinh\left(\frac{V}{V_t}\right)$$

for two reverse-polarity diodes in parallel, then transform to the wave domain using

\begin{align} V &= \frac{a+b}{2}\\ I &= \frac{a-b}{2R_p} \end{align}

Where $R_p$ is the port resistance, $a$ is the incident wave and $b$ is the reflected wave:

$$ \frac{a-b}{2R_p} = 2I_s\sinh\left(\frac{a+b}{2V_t}\right)$$

I'm not the best with WDFs, but my understanding is that the incident wave a is propagated from the rest of the circuit up to the root (the nonlinearity, in this case the diodes), and then b is computed and reflected back down through the circuit. So a is the given in the above equation. But this is still not a trivial equation to solve, and has multiple solutions if I'm not mistaken.

None of the resources I've found actually show the solution to this equation, and instead just express it as b = f(a). This paper briefly mentions using a Lambert function?

This paper is the closest I've found to being helpful, but even here the conditions seem rather arbitrary? (What are G0, Gv or Gn for a diode??)

The last source I've looked at is this one which has some MATLAB code for a circuit with a singular diode. Don't know if anybody knows more about this stuff than I do, but if you have any pointers it would help a lot.

EDIT: after re-visiting the MATLAB code it looks like they're using a combination of the relationship between b and a for linear resistances:

b = a(R-Rp)/(R+Rp)

and substituting R for the nonlinear diode resistance, which according to this source is

R = Vt/I

I'm not 100% sure that's what's happening there, but it's the closest I've found to a tangible solution thus far

  • 1
    $\begingroup$ Examine this code for real-time implementations of virtual analog circuit models using wave digital filters on github: github.com/jatinchowdhury18/WaveDigitalFilters , it may be of interest for you. The README.md in the DiodeClipper folder gives two refs relevant to your question: researchgate.net/publication/… and dafx.de/paper-archive/2019/DAFx2019_paper_5.pdf. $\endgroup$
    – V.V.T
    Commented Feb 10, 2021 at 9:32
  • 2
    $\begingroup$ Funny story: I got my first signals & systems class from the guy who invented WDFs: Super smart and nice, he spoke 6 languages! Still almost 40 years later I haven't found much use for them in the real world. Unless you absolutely HAVE to model a specific analog limiter, just design the digital one that best fits your requirements. $\endgroup$
    – Hilmar
    Commented Feb 10, 2021 at 12:54
  • $\begingroup$ @Hilmar it’s funny you say that, because the reason I’m researching WDF diode clippers is someone else told me an arbitrary digital limiter would not be sufficient to model the circuit I’m looking at (soft clipper op amp with parallel capacitor and pot in feedback) $\endgroup$
    – Nick Nagy
    Commented Feb 11, 2021 at 2:37
  • $\begingroup$ Hey, that was me! $\endgroup$
    – Dan Szabo
    Commented Feb 11, 2021 at 3:11
  • $\begingroup$ Haha! Small world :) $\endgroup$
    – Nick Nagy
    Commented Feb 11, 2021 at 3:18


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.