PyOPUS is a library for simulation-based optimization of arbitrary systems. It was developed with circuit optimization in mind. The library is the basis
for the PyOPUS GUI that makes it possible to setup design automation tasks with ease. In the GUI you can also view the the results and plot the waveforms generated by the simulator.
PyOPUS provides several optimization algorithms (Coordinate Search, Hooke-Jeeves, Nelder-Mead Simplex, Successive Approximation Simplex, PSADE (global), MADS, …). Optimization algorithms can be fitted with plugins that are triggered at every function evaluation and have full access to the internals of the optimization algorithm.
PyOPUS has a large library of optimization test functions that can be used for optimization algorithm development. The functions include benchmark sets by Moré-Garbow-Hillstrom, Lukšan-Vlček (nonsmooth problems), Karmitsa (nonsmooth problems), Moré-Wild, global optimization problems by Yao, Hedar, and Yang, problems used in the developement of MADS algorithms, and an interface to thousands of problems in the CUTEr/CUTEst collection. Benchmark results can be converted to data profiles that visualize the relative performance of optimization algorithms.
The “pyopus.simulator“ module currently supports SPICE OPUS, HSPICE, and SPECTRE (supports OP, DC, AC, TRAN, and NOISE analyses, as well as, collecting device properties like Vdsat). The interface is simple can be easily extended to support any simulator.
PyOPUS provides an extensible library of postprocessing functions which enable you to easily extract performance measures like gain, bandwidth, rise time, slew-rate, etc. from simulation results. The collected performance measures can be further post-processed to obtain a user-defined cost function which can be used for guiding the optimization algorithms toward better circuits.
Website: fides.fe.uni-lj.si/pyopus
Support:
Developer: Arpad Buermen
License: GNU General Public License v3.0

PyOPUS is written in C and Python. Learn C with our recommended free books and free tutorials. Learn Python with our recommended free books and free tutorials.
Related Software
| Electronic Design Automation | |
|---|---|
| gEDA | Full suite and toolkit of Electronic Design Automation tools |
| LibrePCB | Software to develop printed circuit boards |
| Fritzing | Suited to the needs of designers and artists |
| Magic | VLSI layout editor, extraction, and DRC tool |
| KiCad | Software suite for the creation of electronic schematics |
| QElectroTech | Design electric diagrams |
| PyOPUS | Library for simulation-based optimization of arbitrary systems |
| KTechLab | IDE for electronic and PIC microcontroller circuit design and simulation |
| KLayout | GDS and OASIS file viewer and editor |
| DIYLC | Circuit layout and schematic drawing tool |
| Horizon EDA | Supports an integrated end-to-end workflow for printed circuit board design |
| xschem | Schematic editor for VLSI/Asic/Analog custom designs |
| Ringdove | EDA suite of multiple software components |
| Electric | The Electric VLSI Design System |
| FidoCadJ | Offers a large library of electronics and electronic engineering symbols |
| Lepton | Suite of software tools for designing electronics |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

