## Nonlinear Elements

Many musical instrument models require nonlinear elements, such as

- Amplifier distortion (electric guitar)
- Reed model (woodwinds)
- Bowed string contact friction

*expands signal bandwidth*, it can cause

*aliasing*in a discrete-time implementation. In the above examples, the nonlinearity also appears inside a

*feedback loop*. This means the bandwidth expansion

*compounds*over time, causing more and more aliasing.

The topic of nonlinear systems analysis is vast, in part because there
is no single analytical approach which is comprehensive. The
situation is somewhat analogous to an attempt to characterize ``all
non-bacterial life''. As a result, the only practical approach is to
identify useful *classes* of nonlinear systems which are amenable
to certain kinds of analysis and characterization. In this chapter,
we will look at certain classes of *memoryless* and
*passive* nonlinear elements which are often used in digital
waveguide modeling.

It is important to keep in mind that a nonlinear element may not be characterized by its impulse response, frequency response, transfer function, or the like. These concepts are only defined, in general, for linear time-invariant systems. However, it is possible to generalize these notions for nonlinear systems using constructs such as Volterra series expansions [52]. However, rather than getting involved with fairly general analysis tools, we will focus instead on approaching each class of nonlinear elements in the manner that best fits that class, with the main goal being to understand its audible effects on discrete-time signals.

### Memoryless Nonlinearities

*Memoryless* or *instantaneous* nonlinearities form the
simplest and most commonly implemented form of nonlinear element.
Furthermore, many complex nonlinear systems can be broken down into a
linear system containing a memoryless nonlinearity.

Given a sampled input signal , the output of any memoryless nonlinearity can be written as

*linear gain*of .

The fact that a *function* may be used to describe the
nonlinearity implies that each input value is mapped to a unique
output value. If it is also true that each output value is mapped to
a unique input value, then the function is said to be
*one-to-one*, and the mapping is *invertible*.
If the function is instead ``many-to-one,'' then the inverse is
*ambiguous*, with more than one input value corresponding to the same
output value.

#### Clipping Nonlinearity

A simple example of a *noninvertible* (many-to-one) memoryless
nonlinearity is the *clipping* nonlinearity, well known to anyone
who records or synthesizes audio signals. In normalized form, the
clipping nonlinearity is defined by

Since the clipping nonlinearity abruptly transitions from linear to
hard-clipped in a non-invertible, heavily aliasing manner, it is
usually desirable to use some form of *soft-clipping* before
entering the hard-clipping range.

#### Arctangent Nonlinearity

A simple example of an *invertible* (one-to-one) memoryless
nonlinearity is the arctangent mapping:

#### Cubic Soft Clipper

In §9.1.6, we used the cubic soft-clipper to simulate amplifier distortion:

#### Series Expansions

Any ``smooth'' function can be expanded as a Taylor series expansion:

where ``smooth'' means that derivatives of all orders must exist over the range of validity. Derivatives of all orders are obviously needed at by the above expansion, and for the expansion to be valid everywhere, the function must be smooth for all .

#### Arctangent Series Expansion

For example, the arctangent function used above can be expanded as

*odd functions*,

*i.e.*, functions satisfying . For any smooth function, the odd-order terms of its Taylor expansion comprise the odd part of the function, while the even-order terms comprise the

*even part*. The original function is clearly given by the sum of its odd and even parts.

^{7.17}

The clipping nonlinearity in Eq.(6.17) is not so amenable to a series expansion. In fact, it is its own series expansion! Since it is not differentiable at , it must be represented as three separate series over the intervals , , and , and the result obtained over these intervals is precisely the definition of in Eq.(6.17).

#### Spectrum of a Memoryless Nonlinearities

The series expansion of a memoryless nonlinearity is a useful tool for
quantifying the *aliasing* caused by that nonlinear mapping when
introduced into the signal path of a discrete-time system.

#### Square Law Series Expansion

When viewed as a Taylor series expansion such as Eq.(6.18), the
simplest nonlinearity is clearly the *square law nonlinearity*:

^{7.18}

Consider a simple signal processing system consisting only of the square-law nonlinearity:

^{7.19}

*double*that of .

#### Power Law Spectrum

More generally,

In summary, the spectrum at the output of the square-law nonlinearity can be written as

^{7.20}

#### Arctangent Spectrum

Since the series expansion of the arctangent nonlinearity is

*infinite*(in continuous time). Thus, we expect problems with

*aliasing*.

#### Cubic Soft-Clipper Spectrum

The cubic soft-clipper, like any polynomial nonlinearity, is defined directly by its series expansion:

In the absence of hard-clipping ( ), bandwidth expansion is limited to a factor of

*three*. This is the slowest aliasing rate obtainable for an

*odd*nonlinearity. Note that smoothing the ``corner'' in the clipping nonlinearity can reduce the severe bandwidth expansion associated with hard-clipping.

#### Stability of Nonlinear Feedback Loops

In general, placing a memoryless nonlinearity in a stable
feedback loop preserves stability provided the gain of the
nonlinearity is less than one, *i.e.*,
. A simple proof
for the case of a loop consisting of a continuous-time delay-line and
memoryless-nonlinearity is as follows.

The delay line can be interpreted as a waveguide model of an ideal
string or acoustic pipe having wave impedance and a noninverting
reflection at its midpoint. A memoryless nonlinearity is a special
case of an arbitrary time-varying gain [449]. By hypothesis,
this gain has magnitude less than one. By routing the output of the
delay line back to its input, the gain plays the role of a reflectance
at the ``other end'' of the ideal string or acoustic pipe. We can
imagine, for example, a terminating dashpot with randomly varying
positive resistance . The set of all corresponds to
the set of real reflection coefficients
in the
open interval . Thus, each instantaneous nonlinearity-gain
corresponds to some instantaneously positive resistance
. The whole system is therefore passive, even as
changes arbitrarily (while remaining positive). (It is perhaps easier
to ponder a charged capacitor terminated on a randomly varying
resistor .) This proof method immediately extends to nonlinear
feedback around any transfer function that can be interpreted as the
reflectance of a passive physical system, *i.e.*, any transfer function
for which the gain is bounded by 1 at each frequency, *viz.*,
.

The finite-sampling-rate case can be embedded in a passive infinite-sampling-rate case by replacing each sample with a constant pulse lasting seconds (in the delay line). The continuous-time memoryless nonlinearity is similarly a held version of the discrete-time case . Since the discrete-time case is a simple sampling of the (passive) continuous-time case, we are done.

#### Practical Advice

In summary, the following pointers can be offered regarding nonlinear elements in a digital waveguide model:

- Verify that aliasing can be heard and sounds bad before working
to get rid of it.
- Aliasing (bandwidth expansion) is reduced by smoothing
``corners'' in the nonlinearity.
- Consider an
*oversampling factor*for nonlinear subsystems sufficient to accommodate the bandwidth expansion caused by the nonlinearity. - Make sure there is adequate lowpass filtering in a feedback loop
containing a nonlinearity.

*no aliasing*at low levels (

*i.e.*, at levels below hard clipping) provided we use

- oversampling, and
- a lowpass filter to after the nonlinearity.

Another variation is to oversample by *two*, in which case there
is aliasing, but that aliasing does not reach the ``base band.''
Therefore, a half-band lowpass filter rejects both the second spectral
image and the third, which is aliased onto the second.

**Next Section:**

Impedance

**Previous Section:**

String Coupling Effects