Computational physics examples as IPython Notebooks.
A simple physical model that approximates the interaction between a pair of neutral atoms or molecules.
A study of the trajectory of a ball that is moving through the air, subject to air drag and wind.
Applying the explicit and implicit Euler methods and the fourth order Runge-Kutta method to calculate the trajectory of the Earth around the Sun.
Studying how a third mass behaves in the effective gravitational potential resulting from two opposing masses (here: Sun and Earth).
Applying the fourth order Runge-Kutta method and the adaptive step size Runge-Kutta method to calculate the trajectories of three bodies.
Calculating the speed of a passing train by Fourier analysis of the corresponding sound file.
Analyzing sloshing using a numerical approach based on a linear model, which reduces the problem to a Steklov eigenvalue problem.
Programming with sounds and using Fourier transforms to filter sound signals.
Calculating the total current propagating through a resistor network.
Plotting the paths of light rays travelling through a gradient-index optical fiber.
Using Fourier transforms for filtering and analyzing images.
Using Fourier transforms to filter and analyzing hybrid images.
Computing the internal energy, specific heat and magnetisation in the 1D and 2D Ising model. An analytical solution to the XY model is also provided.
A brief introduction to Brownian motion and its connection with diffusion. A system of Brownian particles in 2D is simulated and visualised.
Using the method of forward shooting to determine numerically the eigenenergies of the quantum harmonic oscillator in one dimension.
Using Newton's method to calculate the band structure for the simple Dirac comb potential in one dimension.
Computing the size of the hydrogen atom using Monte Carlo integration.
Calculating the eigenenergies of the lowest states for a one-dimensional double-well potential.
Employing Monte Carlo integration to determine the "shape" of the hydrogen molecule ion.
Using a forward-shooting method to determine the eigenenergies and eigenfunctions of an asymmetric potential in one dimension.
The eigenenergies of a system are found by discretizing the Schrödinger equation and finding the eigenvalues of the resulting matrix.
A one-dimensional wave-packet is propagated forward in time for various different potentials.
The Time-Dependent Schrödinger equation is solved by expressing the solution as a linear combination of (stationary) solutions of the Time-Independent Schrödinger equation.
An introduction to the compressible Euler equations and methods for solving them numerically.
Self-avoiding random walks on the square lattice are performed using random sampling. The probability distribution of how many steps a random walker uses before it traps itself is studied. The notebook is based on an article by S. and P. C. Hemmer.
Describing aggregation using random walk and estimating its fractal dimension