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 |
| Qucs-S | Graphical interface for SPICE circuit simulation engines |
| Digital | Digital logic designer and circuit simulator |
| 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 |
| Kactus2 | IP-XACT based SoC design and IP integration tool |
Read our verdict in the software roundup.
Explore our carefully curated directory of recommended free and open source software, covering every major software category.The directory forms part of our extensive collection of articles for Linux enthusiasts. It includes hundreds of detailed reviews, together with free and open source alternatives to proprietary software from companies such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. LinuxLinks also covers interesting projects worth exploring, Linux-compatible hardware, free programming books and tutorials, and much more. Know a useful free and open source Linux application that we haven’t covered? Tell us about it using our submission form. |


Please read our Comment Policy before commenting.