Lecture and exercise classes

Winter semester 2026/27 · University of Potsdam
Lectures: Prof. Christoph Pfrommer & Dr. Oliver Gressel
Exercise classes: Noa Hoffmann

Nearly all theoretical astrophysics research, and a substantial part of observational astronomy, requires expert knowledge of computational techniques. The topics range from ordinary and partial differential equations, which describe gravitation, hydrodynamics and diffusion, to Fourier techniques and collisionless systems. The course enables students to identify and classify common numerical problems in modern astrophysics. It aims at an active understanding of numerical methods and algorithms and their range of applicability, and teaches the underlying physical concepts. Solving basic astrophysical problems with adequate numerical techniques and determining the range of validity of the results is an essential part of the course.

Place and dates

When Room Dates
Lecture Thursdays, 12:00 (sharp)–13:30
weekly
2.28.0.102 Oct 15 – Feb 4
Exercise class Wednesdays, 08:15–09:45
every two weeks
2.28.0.087 Oct 21, Nov 4, Nov 18, Dec 2, Dec 16,
Jan 13, Jan 27

Christmas break: no lectures on Dec 24 and Dec 31, no exercise class on Dec 30, 2026.

Please register for the course in PULS (registration period Oct 1 – Nov 10, 2026).

The course is complemented by a Seminar on Computational Astrophysics on Wednesday afternoons, 16:15–17:45, starting on Oct 21, 2026.

Lecture notes

The lectures are based on revised lecture notes originally written by Prof. Volker Springel (Max Planck Institute for Astrophysics). They are available as a PDF file (password protected).

Contents

An illustrated version of this list is on the Course Overview page.

  • Reviewing basic concepts of numerical simulations (preparatory course)
    • Integer arithmetic
    • Floating point arithmetic
  • Integration of ordinary differential equations
    • The Euler method: explicit and implicit
    • Runge-Kutta methods and adaptive step sizes
    • The leapfrog and symplectic integrators
  • Basic gas dynamics
    • Basic conservation laws
    • Euler and Navier-Stokes equations
    • Shocks, fluid instabilities and turbulence
  • Eulerian hydrodynamics
    • Types and solution schemes of partial differential equations
    • Advection and the Riemann problem
    • Finite volume discretization
    • Godunov method and Riemann solvers
    • Extensions to multiple dimensions and high-order accuracy
  • Magneto-hydrodynamics
    • Induction equation
    • Lorentz force (Maxwell stress) in momentum equation
    • Total energy equation
    • Numerical implementation via Constrained Transport
  • Diffusion equation
    • Explicit method
    • Implicit methods
  • Fourier transform techniques
    • Convolution problems
    • The discrete Fourier transform
    • Non-periodic problems with ‘zero padding’
  • Collisionless particle systems
    • N-particle ensembles
    • Uncorrelated (collisionless) systems
    • N-body models of collisionless systems
  • Tree algorithms
    • Multipole expansion
    • Hierarchical grouping
    • Tree walk
  • The particle-mesh technique
    • Mass/charge assignment
    • Solving for the potential and force calculation
    • Interpolating from the mesh to the particles
  • Parallelization techniques
    • Hardware overview
    • Shared memory parallelization with OpenMP
    • Distributed memory parallelization with MPI

Homework assignments

All homework assignments and sample code are distributed via the Moodle page of this course.

Python preparatory course

If you would like to refresh your Python knowledge, there are many good resources on the web, for example the interactive tutorial at learnpython.org, the official Python tutorial and the Scientific Python Lectures, which also cover NumPy, SciPy and Matplotlib.

Credit points

Credit points for this lecture can be used for the Master of Science Astrophysics module PHY-735. The course is also listed for module PHY_731t (Advanced Topics of Modern Astrophysics) in the Master of Science Physics, and for Physics as an additional subject in the Master of Science Mathematics.

Grades and credit points are awarded on the basis of the homework assignments (you need to obtain at least 50% of the points). Students who wish to obtain a Specialization Certificate in Computational Astrophysics need to take the module exam in PHY-735 with Prof. Pfrommer.