NBODY2021 simulation lecture

Online Hands-On Training workshop

Gravitational N-body simulations (gravothermal, dense clusters) at Univ. of Heidelberg, Germany (ARI/ZAH)

September 27-29, 2021; zoom online, access data sent by email, ask

NEWS of Oct. 9, 2021: Zoom Recordings of Oct. 05 on home work now available for download, see here;
Literature List updated; Lecture 4 pdf file updated (References to PeTaR and other new codes added)
Certificates for home work will be issued after Oct. 17; if you need longer let me know please.

Some new, hopefully helpful advice, for the ssh key generation at the end of this webpage, here (end of page).

This lecture in general benefits very much from, and the afternoon hands-on sessions use material obtained from Sverre Aarseth.

Sep. 29, 2021: The lecture has come to an end. Small file updates may happen during the next days. When everything is finished, a notice will appear here. Thanks for all listening and taking part.

Begin: Monday, Sep. 27, 10:00 a.m.
Lecture Time: 10:00 - 13:00 (with short coffee break)
Lunch Break: 13:00 - 14:00
Tutorial Time: 14:00 - 17:00 (with short coffee break)
End: Wednesday, Sep. 29, 13:00
An optional Tutorial Session Wednesday afternoon is offered for the interested ones. A homework task can be completed until Sunday, Oct. 1, 2021.
Lectures have been recorded - zoom links below:

Hands-On Tutorials Detailed Instructions here (nbody-kepler.pdf) File updated Sep. 29, 13:40

NBODY2021 training workshop on gravitational N-body simulations

The N-body training workshop will be held at KIAA in November 2021. The workshop consists of several lectures, but for most of the time the students will work on practical problems in the field of N-body dynamics. Students are expected to actively participate in all activities. The programming exercises can be carried out individually, but preferably in a group of two or three students.


Scientific literature

  • A comprehensive literature list, books and papers for download, partly overlapping with the following ones
  • Sverre J. Aarseth, "Gravitational N-body simulations", Cambridge University Press, 2003
  • Sverre J. Aarseth, Christopher Tout, and Rosemary Mardling, "The Cambridge N-body lectures", Springer Publishing, 2008
  • Douglas Heggie and Piet Hut, "The Gravitational Million-Body Problem", Cambridge University Press, 2003
  • C.D. Murray and S.F. Dermott, "Solar System Dynamics", Cambridge University Press, 2009
  • James Binney and Scott Tremaine, "Galactic Dynamics", Princeton University Press, 1994
  • Heggie & Matthieu (1986), "Standardised units and time scales" (download)
  • Introduction to Smoothed Particle Hydrodynamics (SPH) by Ralph Klessen (download)

Links and software downloads:

Organizers Rainer Spurzem (NAOC/KIAA/ARI)
with Peter Berczik (MAO/NAOC/ARI), Manuel Arca Sedda (ARI), Albrecht Kamlah (ARI)
Thijs Kouwenhoven (KIAA)
Prerequisites (1) The N-body simulation packages are written in Fortran77 (still a lot), C++, CUDA C (for GPU), and contains instructions for MPI and OpenMP parallelization. You should have a basic experience with a higher level programming language (python, C, Fortran, ...). All the extensions for GPU and parallelization will be briefly explained, but are not the main topic.
(2) For the hands-on tutorials you should have an ssh software running on your computer, to make a safe connection to our kepler2 system in Heidelberg. (4) It is easiest to run ssh from the terminal in Linux or Mac. It may be possible with Windows as well, but this may be more difficult. (5) Those who already have a kepler2 account: please use it for the tutorials.
ssh key generation:
(6) Those who have not yet a kepler2 account: please send your public ssh key to me spurzem@ari.uni-heidelberg.de . An instruction is here:
ssh-keygen -t rsa [passphrase should NOT be empty]

You need to do this from the computer from which you want to log on to kepler2. It produces a private key file named

id_rsa and a public key file id_rsa.pub

Send the public key file by email to me. DO NOT SEND THE PRIVATE KEY!
For questions in linux, please look here:
For questions in Windows/putty client, please look here:
Look for: Create New Public and Private Keys - it shows how to save the public key, then send it!
NOTE: The public key file should be one long line starting with ssh-rsa ...
If you have problems, use: ssh -v lecturenn@kepler2.zah.uni-heidelberg.de and send me the output; for Windows/putty send the Session Log of putty!