
Introductory Python — Summer School
Aug 29, 2026

Sep 18, 2026
This five-session workshop takes a fully visual, intuitive and project-based approach to teaching how the laws of physics turn — in a few lines of Python (NumPy and Matplotlib) — into animated simulations and 2D/3D imagery. Heavy mathematics is avoided; the goal is to strengthen physical intuition through coding and analysing results.
Vectorising motion, simulating projectiles with air resistance, and 2D/3D plotting of charge trajectories in electric and magnetic fields.
Simulating simple and damped harmonic oscillators, resonance, and plotting phase space and chaotic behaviour of a nonlinear pendulum with SciPy.
Simulating wave-pulse propagation on a string and in 2D media with the finite-difference method (FDM), and animating reflection and superposition.
Simulating the wave behaviour of light, producing Young's double-slit interference patterns, and 2D/3D modelling of a laser beam's propagation profile.
Simulating heat diffusion on 2D plates (heat maps) and modelling random walks to study diffusion and Brownian motion.
Over five years of teaching and TA experience in basic physics, lasers and stochastic processes. Research focus: numerical simulation, wave propagation, optics and photoacoustic imaging.
Enroll to watch the course videos.
Log in to enroll