Pyanalog: A pythonic analog computer demonstrator interface¶
pyanalog is a Python3 package and
demonstrator/research code for a software stack for analog computers.
It empowers users to
manipulate ordinary differential equations in a way suitable for procession with the exemplary Analog Paradigm Model-1 analog computer or similar high-level architectures in terms of OpAmp-Level circuit description (not SPICE-level circuit description).
simulate abstract computing circuits made of elements such as summers, integrators, differentiator and multipliers. The heart of the code is a custom ODE solver (based on C++ codegeneration), but also interfaces to SciPy and SymPy solvers exist. Notably, the C++ solver can also solve integro-differential equations.
generate and manipulate netlists and VHDL-like circuit descriptions
compile against machine architectures on a macrocell-level, set digital potentiometer arrays, cross bar switches, digital switches, etc.
interface a Model-1 hybrid controller in order to run a program, steer the operation, gain and visualize/postprocess output data.
The codes are supposed to work well in the Scientific Python ecosystem. The target audience are clearly software engineers and scientists. The user interface is either command line (bash or python shell) or scripting (Python or C/YAML-like domain specific languages). This code can interface with remote analog computers (AAAS – analog computing as a service).
pyanalog code is open-source and a research code which is worked
actively on, ie. it is “work in progress”. It is authored
Anabrid GmbH. The code is currently
dual-licensed by GPL-3
and a proprietary/commercial use license.
See http://www.anabrid.com/licensing for further details.
- Introduction to PyDDA
- A rationale about DDA
- PyDDA API reference
- Example circuits for DDA
About this documentation¶
This documentation is written in ReStructured text
(RST) and rendered using the Sphinx. documentation
system. Possible output formats are not only web pages (HTML), but also PDF,
amongst others. If you have sphinx installed (
pip install sphinx), you can
just go to the
doc directory and type
make html or
make pdf to
generate the docs locally. If you have a mixed Python2/Python3 system, call
make html SPHINXBUILD="python3 -msphinx" to ensure using Python3.
This documentation is built by our Gitlab Continous Integration tool and uploaded as static files to our Anabrid Dev Server (formally ReadTheDocs). you can find the docs at: