be linked to the sources and compiled. Netlists Ngspice supports parametric netlists (i.e. netlists can contain parameters and expressions). PSPICE compatible parametric macromodels, often released by manufacturers, can be imported as-is into the simulator. Polynomial sources are available. Ngspice provides an internal scripting language to facilitate complex simulation and evaluation control flows. Defining new models For mixed signal circuit simulation ngspice allows users to create a user-defined node definition file (UDN) of a new device model interface. The implementation of the node is created and simulated by using C language with macroses which is compiled by standard C/C++ compilers. Development Ngspice may be compiled into a shared library (*.dll or *.so) readily to be integrated into a calling program. Its interface provides access to all simulation parameters, input and output data. tclspice, another shared library version, offers an interface to Tcl/Tk (software) for better integration with software like XCircuits. Ngspice is licensed under the BSD-3-Clause license. This permissive open source license allows its integration as a simulation engine into several — proprietary or free/libre — EDA tools such as KiCad, EAGLE (program), CoolSPICE, Altium and others. Ngspice has a command line input interface and offers plotting capability. An open source GUI with schematic entry, simulation and plotting is provided by Qucs-S. Recent progresses on Ngspice have been presented at conferences such as FOSDEM and FSiC. See also LTspice Comparison of EDA Software List of free electronics circuit simulators Notes References External links Download site ngspice manual Free simulation software Electronic circuit simulators Electronic design automation software for Linux Free software programmed in C