Gnucap is a general purpose circuit simulator. It performs nonlinear dc and transient analyses, fourier analysis, and ac analysis. It can also be run in batch mode or as a server. Spice compatible models for the MOSFET (level 1-7), BJT, and diode are included in this release.
Gnucap is not based on Berkeley Spice, but some of the models have been derived from the Berleley models.
Since it is fully interactive, it is possible to make changes and re-simulate quickly. The interactive design makes it well suited to the typical iterative design process used it optimizing a circuit design. It is also well suited to undergraduate teaching where Spice in batch mode can be quite intimidating. This version, while still officially in beta test, should be stable enough for basic undergraduate teaching and courses..
In batch mode it is mostly Spice compatible, so it is often possible to use the same file for both Gnucap and Spice.
The analog simulation is based on traditional nodal analysis with iteration by Newton’s method and LU decomposition. An event queue and incremental matrix update speed up the solution for large circuits (at some expense for small circuits).
It also has digital devices for mixed signal simulation. The digital devices may be implemented as either analog subcircuits or as true digital models. The simulator will automatically determine which to use. Networks of digital devices are simulated as digital, with no conversions to analog between gates. This results in digital circuits being simulated faster than on a typical analog simulator, even with behavioral models. The digital mode is experimental and needs work. There will be substantial improvements in future releases.
Gnucap also has a simple behavioral modeling language that allows simple behavioral descriptions of most components, including capacitors and inductors.
Gnucap uses an object-oriented approach to modeling. Complex models like MOSFETS are made of simpler ones like resistors, capacitors, diodes, and any other models that may already exist. The model designer does not need to worry about details like convergence checking, bypass checking, integration, or how the new device plugs into the solution matrix because these are already taken care of by the basic models. In addition to this, a model generator automates the most tedious and most simulator dependent parts. This results in a dramatic improvement in the time it takes a researcher or model designer to install a new model, compared to spice.