Programming with Python

In recent years Python has become an important language for scientific programming. It allows solving small problems as well as developing complex projects significantly faster compared to using C++.

This programming course will consist of lectures and programming excercises teaching you how to solve physics problems and how to visualize your results..

Previous programming experience is helpful but not required. Advanced concepts such as classes, iterators, etc. are not part of this course.

Most technical terms are in English, so I will teach in English.



  • python as a pocket calculator
  • variables, assignment, dynamic typing
  • syntax -- indentation matters
  • control flow and loops
  • modules and name spaces
  • the numpy array
    • indexing
    • slicing
    • broadcasting
  • functions
  • plotting data in 2D and 3D
  • useful modules
If you know each of the above terms, then this course is too easy for you.


In the course of the week, you will
  • learn to simulate the scattering and tunneling of a wave packet at a potential barrier, and plot the result, as in the picture.
  • solve a Dirichlet problem
  • apply a simple machine learning algorithm to a computer vision problem
Wave packet scattering


Registration is closed.

Venue, Time, Material

Venue: Im Neuenheimer Feld, details will be announced to all participants.
Time: Monday October 9th, 2017 - Friday October 13th, 2017; 09:30-17:30 each day
Please bring your notebook, power supply and preferably a mouse.

Looking forward to seeing you soon!

Fred Hamprecht