Tutorials

Be it blinking fireflies, chirping crickets, beating hearts, firing neurons or just coupled pendula - through the lens of theoretical physics all of them reduce to differential equations.

This page features short introductions to programming as well as examples on how to numerically solve differential equations in Mathematica, Python, C++ and CUDA.

Mathematica

Infinitesimal Introduction to Mathematica

  • syntax

  • solving differential equations

  • visualizing solutions

  • animating solutions for presentations


Solving and visualizing dynamical systems

  • Solve nonlinear ODEs

  • find fixed points and their linear stability

  • visualize phase space with trajectories, fixed points and phase space flow

Python

Solving and visualizing dynamical systems

  • Solve nonlinear ODEs

  • find fixed points

  • visualize phase space with trajectories and fixed points

C++

hello world

  • Simple example for basic commands


double pendulum

  • Solve differential equations for chaotic double pendulum

  • visualization either with mathematica or gnuplot

CUDA

hello world

  • Simple example for basic commands


vector addition

  • Solve differential equations for chaotic double pendulum

  • visualization either with mathematica or gnuplot


Turing pattern

  • solve partial differential equations for Turing pattern formation

  • visualize pattern evolution with mathematica

  • save as movie

Starcraft II

Forest Fire

  • Trees are modified to depend on the states of their neighbors. In this way they act as a cellular automaton.

  • With an appropriate initial condition and accelerated tree growth it is possible to get a spiral wave.

  • Video of the result is here: