Overview of PyAnalog¶
The big picture¶
Input: Ordinary Differential Equation in mathematical notation
(for instance in SymPy, Sage, Matlab, Latex, etc.)

v
PyDDA: Generation of a circuit

+++ Several backends to deal with the
   circuits, for instance:
 ... 
 +> Simulation with numerics (C++ or SciPy/Netlib ODE solver)

v
PyFPAA: Circuit synthesis (=mapping) with based on architecture
description.


v
PyHyCon: Interaction with Analogasaservice
(SSH to the small analog machine in Bernds basement)

v
Output: Measurement data from all relevant fields
The particular python modules¶
First and foremost, this documentation is an API documentation. Therefore, it mostly covers the functions and classes exposed by the following three python modules:
PyDDA is a tool for simple algebraic transformations of equations and circuits as well as their numerical simulation. DDA stands for Digital Differential Analyzer.
PyFPAA is a tool for compiling an electrical circuit to a machine architecture. This especially programs digital potentiometers and cross bar switches and relies on a minimalistic hardware description language (HDL) written in YAML. FPAA stands for Field Programmable Analog Array.
PyHyCon is an interface to a Model1 Hybrid Controller in order to run a program, steer the operation and gain output data.
You can read more about the goals of this software at the page A rationale about DDA.
Note
Currently, the DDA code is by far the biggest part of the pyanalog package. The Hybrid Controller client is also usable. The FPAA part is working on its own and there are interfaces to the PyHyCon, however the interface between DDA and FPAA is basically nonexistent in the moment.