Spice is a powerful tool for circuit analysis. But it often surprises users with
. holes in its abilities and strange definitions
. lack of industry-wide standards
. the need for the user to model the physics of their circuit, not just draw the schematic

I hope this blog will educate users and promote discussion in these areas.

### Large Signal versus Small Signal simulation

It is important to keep in mind the difference between “large signal” and “small signal” circuit analysis (simulation).

small signal analysis
first finds the DC operating point of the circuit and then linearizes the non-linear circuit equation matrix at this operating point. The linearized circuit matrix is used in the simulation. AC and Noise are small signal analyses.

The circuit’s input Source(s) have a sine wave output which is swept over the range of frequencies specified by the user. The circuit’s outputs are computed at each of these frequencies. If more than one input Source, all operate at the same frequency. For AC analysis the output is often displayed as a Bode plot of amplitude and phase.

Since the circuit equations are linear, it is as if the analysis is carried out with an infinitely small sine wave applied to the circuit input. There is no indication of any distortion, clipping or other non-linear effects that may occur with a real-world signal applied to the non-linear circuit.

large signal analysis
uses the non-linear circuit equation matrix and numerical integration to find the circuit’s response to its input signals over time. Transient is large signal analysis.

Each of the circuit’s input Sources can have its own waveform and, for sine wave waveform, its own frequency.

The DC operating point is found first, then the integration starts from there (Time = 0). The output looks like an oscilloscope trace. Non-linear circuit distortion and clipping are visible if the circuit has non-linear elements and the waveform is large enough.

### Distortion analysis - it depends on the Spice program

Traditionally Distortion in Spice is small signal. However for many real world nonlinear circuits, small signal results understate the distortion at medium to large waveform amplitudes.

As a result, 5Spice, and perhaps some other Spice programs, implement a large signal Harmonic Distortion analysis where the user specifies the sine wave input amplitude. The calculated distortion depends on the circuit's internal waveform amplitudes.

Large signal method: run a Transient simulation to get time based data and do a Fourier Transform on the time data to get the amplitude at the harmonic frequencies.