PyOPUS is a Python library for interfacing with circuit simulators and generally any kind of other simulator. Currently it supports SPICE OPUS and HSPICE, but plans are in place to support other popular simulators.
The library offers a rich set of functions for analyzing the simulator output, constructiong cost functions, optimization, visualization, and parallel algorithm developement. Some of the provided optimization algorithms are also capable of running on clusters of workstations by utilizing the PVM library. MPI support is under developement.
PyOPUS enables you to easily implement parallel algorithms without knowing the details of the underlying parallel computation library. The programming approach is message based. All you need to do is define the set of messages and the functions that respond to them.
A rich set of visualisation features is available based on the Matplotlib library. The supplied Matplotlib wrapper is threading/multiprocessing based so all plots remain responsive while your worker thread does the computations. The graphical output can easily be exported to raster (e.g. png) or vector (e.g. eps) files for inclusion in your documents.
PyOPUS works under Windows and Linux. It requires a Python interpreter, SciPy, NumPy, Matplotlib, and wxPython. The library has been tested on Windows 7 (64-bit) with a 32-bit Python interpreter and on AMD64 Linux (Debian Squeeze).
The latest version of PyOPUS is 0.7.
PyOPUS is being developed by the Computer-Aided Circuit Design Laboratory at the Faculty of Electrical Engineering, University of Ljubljana, the home of a popular free circuit simulator SPICE OPUS.
- 2012-12-04 PyOPUS 0.7 released
- 2012-03-12 Windows Quickstart
- 2011-10-15 PyOPUS 0.6 released