Skip to main content

Simulate electronic circuit using Python and the Ngspice simulator

Project description

PySpice license PySpice python version

PySpice last version

Overview

What is PySpice ?

PySpice is a Python module which interface Python and the Ngspice circuit simulator.

What are the main features ?

  • licensed under GPLv3 therms
  • support Linux, Windows and Mac OS X platforms
  • implement an Ngspice shared library binding using CFFI which support external sources
  • implement (partial) SPICE netlist parser
  • implement an Oriented Object API to define circuit
  • export simulation output to Numpy arrays
  • plot using Matplotlib
  • handle units
  • work with Kicad schematic editor
  • implement a documentation generator
  • provides many examples

Where is the Documentation ?

The documentation is available on the PySpice Home Page.

How to install it ?

Look at the installation section in the documentation.

Credits

Authors: Fabrice Salvaire

News

V1.1.0

  • Enhanced shared mode
  • Shared mode is now set as default on Linux

V1.0.0

  • Bump version to v1.0.0 since it just works!
  • Support Windows platform using Ngspice shared mode
  • Fixed shared mode
  • Fixed and completed Spice parser : tested on example’s libraries

V0.4.2

  • Fixed Spice parser for lower case device prefix.

V0.4.0

  • Git repository cleanup: filtered generated doc and useless files so as to shrink the repository size.
  • Improved documentation generator: Implemented format for RST content and Tikz figure.
  • Improved unit support: It implements now the International System of Units. And we can now use unit helper like u_mV or compute the value of 1.2@u_kΩ / 2@u_mA. The relevant documentation is on this page.
  • Added the Simulation instance to the Analysis class.
  • Refactored simulation parameters as classes.

V0.3.2

  • fixed CCCS and CCVS

V0.3.1

  • fixed ngspice shared

V0.3.0

  • Added an example to show how to use the NgSpice Shared Simulation Mode.
  • Completed the Spice netlist parser and added examples, we could now use a schematic editor to define the circuit. The program cir2py translates a circuit file to Python.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for PySpice, version 1.1.2
Filename, size File type Python version Upload date Hashes
Filename, size PySpice-1.1.2.tar.gz (3.8 MB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page