Computational physics examples as IPython Notebooks.
animation, explicit euler method, ode
Simulates the simple pendulum and damped simple pendulum
explicit euler method, 4th order runge-kutta, ode, Big Bertha, set of odes
Computing the trajectory of a projectile moving through the air, subject to wind and air drag.
animation, differential equation, Lagrangian, Euler-Lagrange equations, chaos, phase space, odeint
Discusses the chaotic motion of the double pendulum using a phase-space diagram
gravity, newton, harmonic oscillator, cavendish, curve fitting
Analyzes data from the Cavendish experiment using curve fitting. The Gravitational Constant is estimated.
animation, gravity, newton, 4th order runge-kutta, interpolation, cubic splines
The motion of a rolling object on an arbitrary track is analyzed.
animation, 4th order runge-kutta, system of equations
The 4th order Runge-Kutta method was used to integrate the equations of motion for the system, then the pendulum was stabilised on its inverted equilibrium point using a proportional gain controller and linear quadratic regulator.
simpson's method, temperature, pressure
Computing planet Mars' atmospheric pressure profile from its temperature profile.
Solving the one-dimensional stationary heat equation with a Gaussian heat source by approximating the solution as a sum of Lagrange polynomials.
space, einstein, gravity, 4th order runge-kutta, angular momentum, fortran, ode, extrapolation, f2py
Computes the precession of Mercury by linear extrapolation.
space, explicit euler method, gravity, newton
Applying the explicit and implicit Euler methods and the fourth order Runge-Kutta method to calculate the trajectory of the Earth around the Sun.
space, gravity, newton, 4th order runge-kutta, lagrange
Studying how a third mass behaves in the effective gravitational potential resulting from two opposing masses (here: Sun and Earth).
space, einstein, gravity, newton, 4th order runge-kutta, angular momentum, differential equation, ode
Discussion of orbits in the Schwarzschild Geometry.
animation, space, gravity, newton, embedded runge-kutta pair, angular momentum
Applying the fourth order Runge-Kutta method and the adaptive step size Runge-Kutta method to calculate the trajectories of three bodies.
animation, gravity, newton, semi-implicit euler method
Explaining the concept and simulating gravitational slingshot of a spacecraft passing a planet.
Solving the Friedmann equations to model the expansion of our universe.
fermat's principle, diffraction, snell's law, refraction
Plotting the paths of light rays travelling through a gradient-index optical fiber.
discrete fourier transform, image filtering
Filters and analyzes images using Fourier transforms.
einstein, discrete fourier transform, image filtering, rayleigh's criterion, star trek
Using Fourier transforms to filter and analyzing hybrid images.
specific heat, magnetism, partition function, spin
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.
animation, diffusion, einstein, random walk, brown
A brief introduction to Brownian motion and its connection with diffusion. A system of Brownian particles in 2D is simulated and visualised.
magnetism, spin, monte carlo, fortran, f2py, metropolis, equilibrium, autocorrelation, ising
Using the Metropolis algorithm to approximate the magnetization and specific heat for a 2D Ising lattice.
eigenenergy, harmonic oscillator, forward shooting, eigenstate
Using the method of forward shooting to determine numerically the eigenenergies of the quantum harmonic oscillator in one dimension.
schrödinger equation, bloch's theorem, newton's theorem
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.
eigenenergy, forward shooting, eigenstate
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.
eigenenergy, forward shooting, eigenstate, schrödinger equation
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.
animation, schrödinger equation, tunneling, scattering
A one-dimensional wave-packet is propagated forward in time for various different potentials.
animation, eigenenergy, eigenstate, schrödinger equation, tunneling, scattering, ehrenfest's theorem
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.
spin, hemmer, eigenenergy, eigenstate, schrödinger equation, waves
Solving the time independent Schrödinger equation in one dimension using matrix diagonalisation for five different potentials.
angular momentum, spin, implementation
Computing the Clebsch-Gordan Coefficients for two particles with quantized spin. External contribution
magnetism, electricity, coulomb
Calculates and plots the electric fields and potentials around an arbitrary number of point charges.
magnetism, 4th order runge-kutta, voltage, electricity
Using numerical tools to describe and analyse a quadrupole mass spectrometer.
Calculating the total current propagating through a resistor network.
magnetism, explicit euler method, ode, Lorentz' law
Solving Lorentz force law for a charged particle traveling in a uniform magnetic field using Euler's method.
embedded runge-kutta pair, integration, set of odes
The trajectory of a charged particle propagating in a non-uniform magnetic field is calculated by solving the Lorentz force law using an embedded Runge-Kutta pair. The results show that the particle is mirrored.
An introduction to the compressible Euler equations and methods for solving them numerically.
Simulating movement of an oil spill outside the norwegian west-coast simplified as dissolvment of a chemical.
trapezoidal method, waves, Fourier transform
An introduction to studying linear surface waves on an infinite domain. In particular, the problem of finding the time evolution of a small perturbation of the surface of an inviscid and incompressible fluid.
explicit euler method, lennard-jones potential
A simple physical model that approximates the interaction between a pair of neutral atoms or molecules.
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.
diffusion, random walk, witten, fractal, box counting, sander
Describing aggregation using random walk and estimating its fractal dimension
image filtering, radiation, attenuation
Introduces concepts related to computer tomography (CT) and uses this to create a sinogram from a picture and computes the direct back projection.
polymer, hemmer, hansen, lennard-jones potential, sparse matrix, nygård, elasticity
Simulates the disentanglement of a polymer from a surface using an increasing electric field
The Bak-Sneppen model of evolution is a simple model describing the evolution of an ecosystem. It offers a surprising amount of insight given its simplicity. This notebook does not deep dive into the model, but illustrates the basics using the Julia programming language.
speed of sound, doppler, discrete fourier transform
Calculating the speed of a passing train by Fourier analysis of the corresponding sound file.
simpson's method, newton, euler, eigenvalue, poisson's equation, integration, interpolation
Analyzing sloshing using a numerical approach based on a linear model, which reduces the problem to a Steklov eigenvalue problem.
discrete fourier transform, nyquist-shannon sampling theorem, music, sound filtering, beat
Programming with sounds and using Fourier transforms to filter sound signals.
radiation, radioactive decay, curve fitting
Introduces curve fitting in Python and uses this to estimate the half-life of the Ba-137m isotope.
monte carlo, electroweak, pythia, feynman diagrams, photon, historgram, neutrino
Uses the event generator Pythia 8.230 to compute the energy spectrum from electron positron annihilation at the Z resonance.
Seam carving is an algorithm for content-aware resizing of an image. This notebook presents the algorithm and tries to provide some insight into its workings.