Python for Scientific Computations and Control

Course Lecturer :  Ivo Bukovský, (Google: ivo bukovsky) ,

Code: E37 5004

Rozsah:  2+2

Způsob zakončení:         kz    (classified assessment, classification upon the individually solved class projects)

Počet kreditů (credits):             4


Scientific computations and processing of online measured  data in programming environment Python, communication with connected devices, saving and visualization of online measured dat a into PC using Python in real time, libraries, programming the common tasks of numerical mathematics in Python, programming graphic user interfaces, visualization, demonstration of solved problems. The analogies to Matlab will be discussed during the course.


1.          Programming environment Python and its potentials

2.          Programming language Python for scientific computations and data processing (NumPy, SciPy)

3.          Working with vectors and matrices – matrix operations, solving sets of linear equations in Python

4.          Eigenvalues and eigenvectors in Python, data compression by PCA in Python

5.          Data visualization (MatplotLib)

6.          A simple ODE solver for simulation of a set of differential equations and their sets; computing of a discrete time (difference) equation in Python

7.          Graphic User Interface (GUI) designs in Python

8.          Visualization and signal processing in Python (statistical markers, correlation analysis, noise analysis, power spectral density)

9.          Fundamental algorithms of static function approximation (gradient descent, Levenberg–Marquardt algorithm) and their implementation in Python

10.       Examples of the gradient descent method for approximation of a dynamic system in Python

11.       Hardware for Python, USB/Ethernet based measurement (LabJack, Raspberry Pi, Q-Python for Android…)

12.       Recording online measured data into PC and visualization in Python

13.       Example of tuning of controller parameters for a laboratory system

14.       Further potentials of Python, summary


To pass the class, students have to actively participate on lectures and labs. A semestral work and presentation of results in class will be required. The students should be familiar with Math topics of first and second year. There are no special prerequisites for any SW or HW.

Key Words

Python, scientific computations, matrix operations, ODE solver, data compression PCA, online recordings of measured data to PC, data processing and visualization, approximation of a static function, gradient descent adaptation, Levenberg–Marquardt algorithm, example of controller optimization in Python, Windows, Linux