Introduction

Why Chaos Theory?

Chaos theory studies how deterministic systems — governed by exact mathematical rules — can produce behavior that appears random and is exquisitely sensitive to initial conditions. A small change in starting conditions leads to wildly different outcomes: the butterfly effect. Yet beneath this apparent randomness lies rich geometric structure: strange attractors, fractal boundaries, and universal constants that appear across completely different systems.

This course implements the canonical models of chaos theory in pure Python. No scipy, no numpy — just the mathematics expressed as functions. Each lesson introduces one concept, explains the underlying dynamics, and asks you to write the simulation as code.

You will implement:

  • Tent map — Piecewise linear chaos; the simplest exactly solvable chaotic map with Lyapunov exponent ln(r)
  • Lyapunov exponents — Quantify the rate of exponential divergence; the signature of chaos
  • Poincaré maps — Cross-sections of trajectories; reduce continuous flows to discrete maps
  • Rössler attractor — A three-dimensional chaotic flow with spiral structure; simpler than Lorenz
  • Duffing oscillator — Periodically forced nonlinear oscillator; period-doubling route to chaos
  • Hénon map — Two-dimensional quadratic map with a strange attractor (a=1.4, b=0.3)
  • Van der Pol oscillator — Limit cycles and relaxation oscillations; the prototypical self-sustained oscillator
  • Ikeda map — Optical cavity map; complex-plane chaos from a simple recurrence
  • Box-counting dimension — Fractal dimension of the Cantor set via box-covering
  • Correlation dimension — Grassberger-Procaccia algorithm; D₂ from pair distances in an attractor
  • Mandelbrot set — Escape-time algorithm; the iconic fractal boundary of bounded orbits
  • Julia sets — Fixed-c iterations; connected vs disconnected fractals
  • Feigenbaum constants — Universal constants (δ ≈ 4.6692) governing period-doubling cascades
  • Bifurcation diagram — The full period-doubling tree of the logistic map
  • Chaos synchronization — Master-slave coupling; two chaotic systems locking to the same trajectory
Next →