Fact-checked by Grok 2 weeks ago

Ngspice

Ngspice is a free, open-source mixed-level/mixed-signal circuit simulator that numerically solves equations for electronic circuits, supporting both nonlinear and linear analyses on components such as resistors, capacitors, inductors, transmission lines, switches, and devices including diodes, bipolar junction transistors (BJTs), junction field-effect transistors (JFETs), metal-semiconductor field-effect transistors (MESFETs), and metal-oxide-semiconductor field-effect transistors (MOSFETs). It originated as an enhanced version of SPICE3f5 simulator, incorporating open-source packages like Cider1b1 for physics simulation and Xspice for mixed-signal extensions, and has been continuously developed by a community of contributors since the late 1990s to fix bugs, add features, and ensure cross-platform compatibility on Windows, , and macOS. Key capabilities of Ngspice include built-in models, with arbitrary sources, and extensibility through models via the Design Initiative (OSDI) interface, enabling simulations of complex analog, digital, and hybrid systems. It supports a range of analyses such as DC operating point and sweep, small-signal, transient, pole-zero, small-signal , , , and experimental periodic steady-state, with options for temperature-dependent simulations defaulting to 27°C. Ngspice integrates advanced matrix solvers like Sparse 1.3 and the KLU solver (introduced in version 42), and facilitates mixed-signal environments through digital modules and via . As of version 45.2 (September 2025), it remains actively maintained under the Berkeley Software Distribution (BSD) license, widely used in both academic and commercial (EDA) tools for , PCB design, and system-level verification.

Introduction

Overview

Ngspice is an open-source mixed-level/mixed-signal simulator designed for analyzing and verifying the behavior of electrical and electronic circuits. It serves as a successor to the Berkeley 3f.5 codebase, incorporating integrations from Xspice for enhanced mixed-signal simulation capabilities and Cider for advanced device physics modeling. The software is distributed under the BSD-3-Clause license, promoting widespread use and modification in both academic and industrial applications. Ngspice enables the simulation of analog, digital, and mixed-signal circuits across various abstraction levels, supporting analyses such as DC operating point, frequency response, and transient behavior. Its flexible architecture allows for modeling complex systems involving transistors, passive components, and behavioral elements. The project originated in 1999 as a rework of SPICE3, with the first release (ng-spice-rework-4) occurring on December 22, 1999. The latest stable release, version 45.2, was made available on September 6, 2025, incorporating bug fixes and ongoing enhancements to maintain compatibility with modern hardware description standards.

History

Ngspice originated as a of the Berkeley 3f.5 simulator, which was released in 1993 by the , providing a foundational framework for analog circuit simulation. In the late 1990s, developers including Holger Vogt initiated the "ng-spice-rework" project to address bugs, enhance compatibility, and extend the capabilities of the aging codebase, marking the beginning of Ngspice's evolution into a more robust tool. Around 1999–2000, the project integrated elements from Xspice, developed by the for mixed-mode simulation, and Cider1b1, a device-level simulator from Berkeley, enabling mixed-signal capabilities that distinguished Ngspice from its predecessor. The first official release, , arrived in 2003 under the ng-spice series, retaining Berkeley's original while introducing initial rework improvements. By 2005, Ngspice was incorporated into (EDA) tools such as , facilitating its use in open-source design workflows. In the , support for was progressively added through the ADMS compiler, allowing integration of advanced compact device models and broadening its applicability in mixed-signal design. By 2025, Ngspice had achieved over 45 stable releases, with the latest versions emphasizing stability, extensive bug fixes, and enhancements such as improved transient analysis algorithms to handle complex simulations more efficiently. Key recent milestones include presentations at conferences like 2019, where developer Holger Vogt outlined ongoing advancements in mixed-signal simulation. The project has been driven by a core team including Paolo Nenzi and Holger Vogt, with contributions from over 67 individuals across its more than two decades of development, fostering a collaborative open-source ecosystem.

Core Functionality

Analysis Types

Ngspice supports a variety of analyses to model the of , ranging from steady-state operating points to dynamic and statistical responses. These analyses leverage numerical methods to solve equations derived from device models specified in the , enabling users to invoke them via dedicated control statements. The core analyses include , transient, and types, supplemented by specialized techniques for , , RF parameters, statistical variations, and mixed-signal simulations. Nonlinear DC analysis determines the steady-state operating point of a circuit by solving a system of nonlinear equations representing the DC behavior of components. It employs the Newton-Raphson iteration method to iteratively converge on node voltages and branch currents until tolerances are met, such as relative errors below 0.1% or absolute limits like 1 pA for currents and 1 µV for voltages. Inductors are treated as shorts and capacitors as opens during this process, making it ideal for finding quiescent points or generating transfer characteristics by sweeping a DC source value. Transient analysis simulates the time-domain evolution of variables to capture dynamic responses to stimuli like pulses or step changes. It numerically integrates differential equations using integration methods such as the or Gear's method, approximating derivatives like the capacitor current as i = C \frac{dv}{dt} over discrete time steps. The simulation begins with a DC operating point solution and proceeds with adaptive or fixed stepping, controlled by parameters for start time, , and maximum step size, allowing examination of phenomena like times or oscillations. Linear AC analysis performs small-signal frequency-domain simulations to evaluate transfer functions, gain, phase, and other linear responses around a linearized operating point. Nonlinear devices are approximated by their small-signal equivalents, and the is analyzed under sinusoidal steady-state conditions across a sweep, using direct or successive over-relaxation solvers. This reveals , , and characteristics without simulating full transients. Specialized analyses extend these capabilities for targeted insights. Noise analysis computes the spectral density of noise sources—such as thermal noise modeled by i_n^2 = \frac{4kT}{R} \Delta f for resistors—and their contributions to output variance over frequency, generating equivalent input and output noise plots. Sensitivity analysis quantifies the impact of parameter variations on outputs by numerically perturbing elements and measuring partial derivatives, aiding design optimization. S-parameter analysis, suited for RF circuits, derives (S, Y, Z matrices) from AC simulations at multi-port networks, using transformations like the Heaviside step for incident and reflected waves, and outputs data in format. analysis assesses statistical variations by repeatedly running simulations with randomized parameters drawn from distributions like Gaussian, evaluating yield and tolerance effects. Mixed-signal extensions enable simulation of analog-digital circuits through with XSPICE, which combines continuous-time analog solving with event-driven processing. Analog components use standard methods, while elements—modeled via code models like logic gates or A/D converters—are updated only on state changes, improving efficiency for large systems. As of version 45 (September 2025), the d_cosim code model supports with GHDL for advanced mixed-signal simulations. Interfaces such as digital-analog bridges handle signal conversion, supporting applications in system-level verification.

Device Models

Ngspice supports a range of built-in device models for simulating passive and active components in analog circuits, drawing from the foundational SPICE3 framework while incorporating extensions for accuracy and flexibility. These models provide physical representations based on established principles, allowing users to parameterize elements for realistic behavior in , transient, and analyses. Passive components in Ngspice include resistors, capacitors, and inductors, each modeled with straightforward equations to capture fundamental electrical properties. Linear resistors obey , expressed as V = I \cdot R, where R is the resistance value specified in ohms; nonlinear resistors can be approximated using behavioral sources or subcircuits for voltage- or current-dependent . Capacitors follow the charge-voltage Q = C \cdot V, with current I = C \cdot \frac{dV}{dt}; frequency-dependent capacitors are supported through table-based or specifications for applications like distributed systems. Inductors are modeled via V = L \cdot \frac{dI}{dt}, with mutual coupling enabled by the K statement (e.g., K1 L1 L2 0.99) to represent inductive interactions, including initial current conditions for transient simulations. Semiconductor models form the core of Ngspice's active simulation, emphasizing pn-junction and physics. The model is based on the Shockley equation, I = I_S \left( e^{V_D / (N \cdot V_T)} - 1 \right), where I_S is the (default 1e-14 A), N is the emission coefficient (default 1), and V_T = kT/q is the thermal voltage; additional parameters like series resistance RS and junction capacitance CJ account for parasitic effects. Bipolar junction transistors (BJTs) employ the Gummel-Poon model (level=1), an integral charge-control approach with over 20 parameters, including transport IS, forward current gain BF (default 100), early voltage VAF for output conductance, and base-emitter capacitance parameters like CJE and VJE; this model captures high-injection effects and temperature dependencies for NPN and devices. MOSFET models range from the Level 1 (Shichman-Hodges) square-law formulation, I_D = \frac{\mu C_{ox} W}{2L} (V_{GS} - V_{TH})^2 in saturation, with parameters such as VTO, KP (default 2e-4 A/V²), and body-effect coefficient GAMMA, to advanced BSIM4 implementations that incorporate mobility degradation, velocity saturation, and short-channel effects through parameters like oxide thickness TOX, flat-band voltage VFB, and effective channel length L; BSIM4, developed for sub-micron technologies, ensures scalability across process nodes. Advanced models extend Ngspice's capabilities to specialized elements. Transmission lines are simulated as lossless (uniform RC delay) or lossy distributed networks, parameterized by Z0, propagation delay TD, and frequency-dependent losses for high-speed analysis. Switches include voltage-controlled (S) and current-controlled (W) types, operating between on-resistance RON (default 1 Ω) and off-resistance ROFF (default 1 GΩ), with thresholds VON/VOFF or ION/IOFF to model ideal or realistic switching behavior. Behavioral sources, such as voltage-controlled voltage sources (E) and current-controlled current sources (G), use arbitrary expressions (e.g., E1 1 0 2 0 5*V(3)) for nonlinear dependencies, supporting over 30 built-in functions like tanh and abs. Ngspice integrates for compact device models via the ADMS interface, enabling user-compiled behavioral descriptions for emerging technologies like FinFETs without altering core simulator code. Model selection in Ngspice uses the .MODEL directive for parameter definition, such as .MODEL MOD1 D (IS=1e-14 N=1 RS=0.1), which associates a named model with device instances (e.g., D1 1 2 MOD1); this syntax supports scalability through .SUBCKT subcircuits for hierarchical or composite models, allowing reuse across netlists while maintaining compatibility with SPICE3 standards. These models are invoked in various analyses, such as DC operating point or , to evaluate circuit performance.

Simulation Setup

Netlists

Ngspice netlists serve as the primary input format for defining topologies, connections, and directives in a text-based, human-readable structure. These netlists adhere to the syntax conventions, beginning with an optional title line followed by definitions, control statements, and concluding with .end to demarcate the file's boundary. The format supports a , allowing complex circuits to be modularized through subcircuits while maintaining connectivity via node identifiers. Circuit elements are instantiated using a standardized syntax: an element name (e.g., R1 for the first instance), followed by the connecting nodes, and parameter values. Nodes can be numeric (e.g., 1, 2) or alphanumeric labels (e.g., in, out), with node 0 conventionally representing ; all nodes must connect to through a path to ensure simulation solvability. For instance, a simple is defined as R1 1 2 1k, connecting nodes 1 and 2 with a 1 kΩ . Similarly, voltage sources use V1 1 0 5 for a 5 V source from node 1 to . Subcircuits enable by defining reusable blocks with .SUBCKT name node1 node2 ... followed by internal elements and terminated by .ENDS; instances are then called via Xname node1 node2 ... subcktname, such as XU1 1 2 amp for an subcircuit. Control statements integrate simulation types directly into the , including .OP for operating point analysis to compute steady-state biases and .TRAN <step> <stop> for transient simulations, e.g., .TRAN 1n 1u to simulate over 1 µs with 1 ns steps. Parametric netlists enhance flexibility by incorporating variables and sweeps, facilitating without manual editing. Variables are declared using .PARAM var=value, such as .PARAM Rload=10k, and referenced in elements with curly braces, e.g., R1 1 2 {Rload}. Sweeps employ .STEP PARAM var start stop incr to iterate parameters systematically; for example, .STEP PARAM VDD 1 5 0.5 varies a supply voltage from 1 V to 5 V in 0.5 V increments across subsequent analyses. This approach is particularly useful for exploring circuit behavior under varying conditions, like temperature sweeps with .STEP TEMP -40 125 25. Additional control sections manage global resources and outputs within the . The .GLOBAL directive declares shared parameters or s accessible across subcircuits, e.g., .GLOBAL [vcc](/page/VCC) to propagate a supply . External files, such as model libraries, are incorporated via .INCLUDE filename, like .INCLUDE models.lib for importing device parameters. Output selection uses .PROBE V([node](/page/Node)) or .PROBE I(element) to specify variables for saving or plotting, ensuring efficient data handling in large simulations. These directives can be grouped in optional .control ... .endc blocks for interactive or scripted execution. Error handling in netlists relies on strict adherence to syntax rules to prevent failures or non-. Element lines must avoid leading special characters like = or %, and continuations use + at the start of subsequent lines; the format is case-insensitive in batch mode but requires unique names without duplicates. numbering begins at 0 for , with all nodes needing valid interconnections—isolated nodes trigger errors. For issues during , .OPTIONS provides tuning parameters, such as .OPTIONS GMIN=1e-12 to set minimum conductance or .OPTIONS ITL1=100 to increase iteration limits, aiding without altering semantics. Common pitfalls include missing units (e.g., specify 1k for kiloohms) or unbalanced subcircuit ports, which Ngspice flags with diagnostic messages upon loading.

Custom Model Definition

Ngspice allows users to extend its modeling capabilities by defining custom device models, enabling the simulation of non-standard or proprietary components without modifying the simulator's core code. One approach involves built-in extensions through the .MODEL statement, which supports custom parameters for existing device types such as diodes, bipolar junction transistors (BJTs), and MOSFETs. For instance, a custom BJT model can be defined as .MODEL MOD1 NPN (BF=50 IS=1e-13), adjusting parameters like current gain and saturation current to approximate specific behaviors. For more complex nonlinear behaviors, subcircuit approximations using .SUBCKT and .ENDS provide a way to encapsulate behavioral models, such as a nonlinear modeled with a behavioral source: .SUBCKT nlcap pos neg Bx 1 0 V = V(1) < Vlow ? Vlow : V(1) > Vhigh ? Vhigh : V(1) .ENDS. These methods leverage Ngspice's native syntax for quick integration but are limited to approximations of continuous behaviors. For advanced analog behavioral modeling, Ngspice integrates models, compiled into shared libraries for runtime loading. Since version 39, this is facilitated by the OSDI interface with OpenVAF, allowing users to compile source files into .osdi libraries without recompiling Ngspice itself. A typical module begins with a declaration, such as discipline electrical, followed by an analog block defining node potentials or currents, for example: analog V(out) <+ expression; module bsimbulk(d, g, s, b, t) .... To use these models, the compilation step involves tools like OpenVAF: obtain the file, compile it to .osdi (e.g., via OpenVAF command-line), and load it in the using .control directives like pre_osdi ../lib/model.osdi. This approach supports compact device models from repositories like VA-Models or CMC standards, enabling efficient, parallel evaluation in simulations. Ngspice's XSPICE framework provides a more flexible method for defining custom models , particularly suited for mixed analog-digital simulations. New models are instantiated via the .MODEL with a type specifier, such as .MODEL amp gain (GAIN=5.0), where "gain" refers to the custom model name. These models can implement analog behaviors using continuous equations or event-driven logic for digital components, like a defined as .MODEL nand1 d_nand, with C code handling events via CALL_TYPE == EVENT. The XSPICE extension integrates over 68 built-in models, ranging from simple amplifiers to complex state machines, and users can extend this by writing C functions for input-output relations, such as double p = PARAM(gain); OUTPUT(y) = INPUT(x) * p;. Event-driven digital models coordinate with the analog solver for accurate mixed-signal analysis, improving speed over purely continuous simulations. To incorporate custom models, compilation and linking steps are required to build them into shared libraries compatible with Ngspice. For C-coded XSPICE models, source files are compiled using GCC with flags for shared objects, e.g., gcc -shared -o new_lib.cm -fPIC model.c -I/path/to/ngspice/include, followed by linking against Ngspice's libraries like libngspice.so. Ngspice must be configured with options such as ./configure --enable-xspice --with-ngshared before building, ensuring dynamic loading via dlopen on Unix-like systems or LoadLibrary on Windows. For Verilog-A, OpenVAF handles compilation to .osdi, which is then loaded directly without altering Ngspice's build. Models are referenced in the netlist after loading, typically in the .control section with codemodel or pre_codemodel for initialization, allowing seamless integration into simulations. These processes require standard development tools like GCC and ensure custom models are portable across platforms.

Usage and Integration

Installation and Platforms

Ngspice supports a wide range of operating systems, including , Windows, macOS, , BSD variants, and , allowing users to run simulations on various desktop and server environments. These platforms enable both console-based and graphical interactions, with full compatibility for core simulation features across 64-bit architectures. Installation methods vary by platform, with pre-built binary packages available for quick setup and source compilation for customization. On Linux distributions such as Ubuntu or Fedora, users can install Ngspice via package managers like apt (e.g., sudo apt install ngspice) or yum/dnf, which handle dependencies automatically and provide versions aligned with repository updates. For Windows, pre-compiled binaries are downloadable from SourceForge as 7z archives (e.g., ngspice-45.2_64.7z for 64-bit systems), which extract to directories like C:\Spice64, including executables such as ngspice.exe for console operation. On macOS, binary installation is facilitated through Homebrew (brew install ngspice) or MacPorts (sudo port install ngspice), ensuring integration with the system's development tools. BSD variants and Solaris support compilation from source, often using standard Unix tools, while Cygwin provides a Unix-like environment for Windows users seeking similar workflows. For users requiring specific configurations or the latest features, compiling from source is recommended, utilizing Autotools ( and ) for the build process. The process involves downloading the source tarball (e.g., ngspice-45.2.tar.gz from ), extracting it, running ./configure with options like --enable-xspice for extended models or --with-readline=yes for command-line editing, followed by and sudo make install. Essential dependencies include for compilation, Make, , and Flex; optional libraries such as Readline enhance interactive use, while enables analyses in transient simulations. On macOS, is required for graphical features, and Windows compilation can use MSYS2, , or with project files like sharedspice.vcxproj. Version management focuses on stable releases from , with Ngspice 45.2 as the current stable version as of November 2025, offering bug fixes and enhancements over prior iterations like 44. Users can track updates via the project's repository or , and environment variables such as NGS_DYNAMIC_LOAD (for dynamic loading of shared libraries on Windows) or NGSPICE_INPUT_DIR (for custom model paths) aid in configuring installations for specific workflows. Basic runtime invocation is straightforward via the command line, with ngspice [netlist.cir] launching an interactive session on the specified file or ngspice -b [netlist.cir] for batch mode, directing output to stdout or files via options like -r output.raw. This console approach ensures portability across platforms, with output formats compatible for post-processing in tools like . Community forums provide brief troubleshooting support for installation issues, such as dependency resolution on older systems.

Interfaces and Tools

Ngspice supports several graphical user interfaces (GUIs) that integrate its simulation capabilities, facilitating and generation without relying solely on command-line interaction. Qucs-S, a subproject of the (Qucs), employs ngspice as its primary simulation kernel within a unified Qt-based , enabling users to design circuits visually and run mixed-signal simulations. KiCad's schematic editor incorporates ngspice directly for simulations, allowing users to annotate schematics with simulation directives and generate for analysis. Autodesk includes built-in ngspice integration starting from version 8.4, supporting schematic-to- conversion and basic analog simulations through its simulation tools. For programmatic access, Python bindings extend ngspice's usability in scripting environments. The ngspicepy library provides wrappers around ngspice's C API, allowing simulations to be executed from code and results retrieved as arrays for further processing. Similarly, PySpice offers an object-oriented interface to ngspice, enabling circuit definition in and simulation output conversion to arrays; it supports embedding in Jupyter notebooks for interactive plotting and analysis, such as visualizing transient responses with . Ngspice can also operate in shared library mode, compiled as a dynamic link library (DLL on Windows) or shared object (SO on Unix-like systems), for embedding into custom applications. This mode exposes an API for external control, with functions like ngSpice_Init() to initialize the simulator instance, ngSpice_Command() to execute commands, and ngGet_Vec_Info() to retrieve simulation vectors. Developers link the library to their programs, load netlists, run analyses, and handle outputs programmatically, as detailed in the ngspice user manual. Output handling in ngspice includes built-in and data extraction tools. The command generates scripts for , producing graphical representations of simulation results such as voltage waveforms versus time. Data can be exported using the wrdata command, which writes vectors to text files in a format compatible with processing for post-simulation analysis in tools like spreadsheets or . Additionally, the .MEASURE directive automates parameter extraction during simulations, computing metrics like or peak voltage and reporting them in the output log for quantitative evaluation.

Development and Community

Project Evolution

Ngspice has followed a consistent release schedule since the , with major versions typically issued every six to eight months to incorporate enhancements, bug fixes, and community feedback. For instance, version 33 arrived in 2020, followed by subsequent updates leading to version 45 in September 2025 and the minor release 45.2 shortly thereafter in early September 2025. As of November 2025, version 45.2 is the latest stable release. Recent developments have focused on bolstering mixed-signal capabilities and simulation efficiency. A key advancement came with version 39, which introduced native support for compact device models through the OSDI interface, enabling more seamless integration of behavioral models in analog and mixed-signal designs during the early 2020s. Additionally, enhancements to the KLU sparse matrix solver and multithreading support via for device evaluation have improved performance in transient simulations for larger circuits. Ngspice also integrates effectively with open-source process design kits (PDKs), such as the Google/Skywater 130 nm PDK, allowing users to simulate foundry-specific device libraries directly within its framework. Over more than two decades of active development—building on the foundational Spice3f.5 codebase from —Ngspice maintainers have systematically addressed legacy limitations, including numerous bug fixes for numerical robustness in algorithms and device evaluations. These efforts, spanning releases like 45, have resolved issues such as memory leaks and solver instabilities, enhancing overall reliability for complex analog and RF simulations. Looking ahead, Ngspice's community-driven emphasizes further refinements in mixed-signal simulation, frontend compatibility for diverse formats, and expanded model support to unify built-in functions and improve pole-zero analysis accuracy. While no fixed timeline exists, these priorities reflect ongoing collaboration among developers and users to adapt the simulator to evolving electronic design needs.

Licensing and Contributions

Ngspice is released under the , a permissive that has governed the project since its inception in the early . This license permits commercial use, modification, and distribution as long as the original copyright notice and disclaimer are retained, without imposing requirements that would mandate sharing derivative works under the same terms. Exceptions to this licensing are minimal and typically involve integrated components from upstream projects like Spice3f5, Cider1b1, and Xspice, which align with BSD or terms. The contribution process for Ngspice is accessible via its public repository hosted on , where developers can clone the codebase using commands such as git clone git://git.code.sf.net/p/ngspice/ngspice. Patches, new features, or bug fixes are submitted through the project's developers' or by emailing the ngspice-devel at [email protected], with SourceForge's issue tracker available for reporting problems. There is no formal membership requirement; interested parties are encouraged to introduce themselves on the and review the project roadmap for alignment with ongoing priorities. Ngspice is stewarded by a core team of maintainers, including Paolo Nenzi, who has led development efforts since the project's founding and oversees merges and releases. The community comprises a dedicated group of developers alongside numerous contributors who have enhanced its capabilities over the years, with ongoing involvement from academic and industry participants. Community engagement extends to events like MOS-AK workshops, where Ngspice developers present updates on modeling integrations and advancements, fostering collaboration on compact modeling standards. Development guidelines emphasize with the BSD-3-Clause for all submissions, prohibiting GPL-licensed due to potential linking conflicts, and requiring English-language and communications. The codebase, primarily , follows established conventions for structure and naming, with contributors advised to study existing modules for style alignment. Rigorous testing is mandatory, including unit tests and beta validation to ensure stability across platforms, while improvements—such as edits to the manual.tex source—are actively solicited to keep user resources current.

References

  1. [1]
    Ngspice User's Manual Version 44plus (ngspice development version)
    Chapter 1 Introduction. Ngspice is a general-purpose circuit simulation program for nonlinear and linear analyses. Circuits may contain resistors, capacitors, ...
  2. [2]
    Ngspice circuit simulator - FAQ - SourceForge
    Mar 17, 2018 · Ngspice is a mixed-level/mixed-signal circuit simulator based on three open source software packages: Spice3f5, Cider1b1 and Xspice.Missing: overview | Show results with:overview
  3. [3]
    ngspice
    ### Summary of Ngspice Project (SourceForge)
  4. [4]
    Ngspice, the open source Spice circuit simulator - Intro
    ngspice is the open source spice simulator for electric and electronic circuits. Such a circuit may comprise of JFETs, bipolar and MOS transistors, passive ...Download · Tutorials · Documentation · Ngspice circuit simulator
  5. [5]
    ngspice - SourceForge
    Ngspice is a mixed-level/mixed-signal circuit simulator. Its code is based on three open source software packages: Spice3f5, Cider1b1 and Xspice.
  6. [6]
    mixed level circuit simulator - Ngspice - SourceForge
    Ngspice is a mixed-level/mixed-signal circuit simulator. Its code is based on three open source software packages: Spice3f5, Cider1b1 and Xspice.
  7. [7]
    Ngspice circuit simulator - Releases Information - SourceForge
    Release Date: 29-August-2005. Rework-16 comes out after almost one year of CVS development (from 15-fixedRC3). This release improves ngspice in three ways:.Missing: initial | Show results with:initial
  8. [8]
    FOSDEM 2015 - The NGSPICE circuit simulator
    Ngspice project started in 1999 from the latest implementation of of Berkeley's SPICE3 release. In more than a decade of development it has fixed and ...
  9. [9]
    Ngspice, the open source Spice circuit simulator - NEWS
    ngspice release 45.2, September 6th, 2025. This is a bug-fix release, removing bug no. 804 (see https://sourceforge.net/p/ngspice/bugs/804/) in MS Windows ...
  10. [10]
    ngspice / News
    ### Summary of Ngspice News Items
  11. [11]
    Ngspice circuit simulator - Download old releases
    These are the first releases of the ngspice simulator. There are two different series of releases: ng-spice: this is the first series of ngspice releases, still ...Missing: year | Show results with:year
  12. [12]
    [PDF] Ngspice user's manual (version 42). - SourceForge
    Dec 27, 2023 · This manual describes ngspice's functionality, features, commands, and procedures, and provides a short introduction on how to set up and ...
  13. [13]
    FOSDEM 2019 - ngspice, current status and future developments
    The talk will review the current status of ngspice, the open source spice simulator for electric circuits. After some years of quiet development, ...
  14. [14]
    [PDF] Ngspice user's manual (version 44). - SourceForge
    Dec 29, 2024 · This manual describes ngspice's functionality, features, commands, and procedures, and provides a short introduction for novice users.
  15. [15]
    BSIM4 Model - BSIM Group - University of California, Berkeley
    It is a physics-based, accurate, scalable, robustic and predictive MOSFET SPICE model for circuit simulation and CMOS technology development.Missing: Ngspice | Show results with:Ngspice
  16. [16]
    Ngspice, the open source Spice circuit simulator - Special features
    Ngspice Features, Extras and Options. Ngspice enhances the original spice3f5 in many ways. Here you will find a list and links to the various options.Missing: history origins fork 3f.<|control11|><|separator|>
  17. [17]
    ngspice tutorial for beginners - SourceForge
    ngspice is a circuit simulator that numerically solves equations describing (electronic) circuits. These are made of passive and active devices.Missing: overview | Show results with:overview
  18. [18]
    Ngspice circuit simulator - Verilog-A with OSDI/OpenVAF
    Ngspice uses OSDI/OpenVAF for including Verilog-A compact device models. Since version 39 ngspice contains the OSDI interface.Missing: 2010s | Show results with:2010s
  19. [19]
    Ngspice, the open source Spice circuit simulator - XSPICE usage
    The XSPICE extension to the ngspice circuit simulator provides code modeling techniques to add new analog and digital models.<|control11|><|separator|>
  20. [20]
    ngspice - Browse /ng-spice-rework at SourceForge.net
    Download Latest Version ngspice-45.2_64.7z (10.2 MB). Email in envelope. Get an email when there's a new version of ngspice. Next. Home / ng-spice-rework. Name.Missing: stable | Show results with:stable
  21. [21]
    ngspice - Browse /ng-spice-rework/45.2 at SourceForge.net
    Sep 6, 2025 · Get an email when there's a new version of ngspice ; 2025-09-06 · 2025-09-06 · 2025-09-06 ; 1.3 MB · 4.7 MB · 10.5 MB.Missing: stable | Show results with:stable
  22. [22]
    Schematic entry ... - Ngspice, the open source Spice circuit simulator
    Ngspice is a free, open-source spice-based simulator used in many tools, both free and commercial, for circuit simulation.
  23. [23]
    SPICE Simulation - KiCad
    KiCad integrates the open source spice simulator ngspice to provide simulation capability in graphical form through integration with the Schematic Editor.
  24. [24]
    SPICE Simulation Basics Part 1: Getting Started | EAGLE | Blog
    Oct 20, 2017 · SPICE is fully integrated into Autodesk EAGLE 8.4, and there's no need to install any additional software. We've also shipped a bunch of ready- ...
  25. [25]
    ashwith/ngspicepy: A python library for ngspice - GitHub
    This library's main aim is to provide a set of functions that allow one to run simulations on ngspice and get the data in numpy arrays. Software Requirements. A ...
  26. [26]
    Simulate Electronic Circuit using Python and the Ngspice / Xyce ...
    PySpice implements a Ngspice binding and provides an oriented object API on top of SPICE, the simulation output is converted to Numpy arrays for convenience.
  27. [27]
    Ngspice circuit simulator - Shared library - SourceForge
    The shared module offers an interface which exports functions controlling the simulator and callback functions for feedback.
  28. [28]
  29. [29]
    Ngspice Parallel / KLU solver errors and questions - SourceForge
    Jan 25, 2022 · So a numerical robust KLU need to get retriggered on numerical pivot thresholds. If this is done global you possible slow down again more ...
  30. [30]
    Google/Skywater ... - Ngspice, the open source Spice circuit simulator
    ngspice supports the Open Source Google/Skywater PDK (process design kit) for the 130 nm CMOS process from Skywater. To install the PDK, a good choice is to ...
  31. [31]
    Ngspice circuit simulator - Project Roadmap - SourceForge
    Ngspice development roadmap. There is no "official" development roadmap. What follows is a list of topics that we think should be addressed.Missing: history milestones
  32. [32]
    Developers ... - Ngspice, the open source Spice circuit simulator
    Ngspice is an open project, there is no closed group of developers. Different groups gathered and dissolved in more than 20 years of development.
  33. [33]
    Ngspice circuit simulator - Accessing project git
    ### Git Access and Contribution Guidelines for Ngspice
  34. [34]
    Ngspice circuit simulator - Authors - SourceForge
    People developing ngspice changes in time. An (incomplete) list of those who have contributed up to Sept. 2008 is: Vera Albrecht; Phil Barker; Steven J. Borley ...Missing: maintainers | Show results with:maintainers
  35. [35]
    Ngspice circuit simulator - TCLspice - SourceForge
    Paolo Nenzi, ngspice maintainer accepted to merge TCL functionality to ngspice source code as soon as it is stable. Prior to 2008. A crude copy and paste ...<|separator|>
  36. [36]
    Ngspice on GPU - CUSPICE
    CUSPICE uses GPU for matrix calculations and device code evaluation, enhancing simulation speed, especially for large circuits, and runs like standard ngspice.