Particle Methods

Particle Methods

This course teaches the foundations of Particle Methods. Particle methods are a numerical simulation framework that allows simulating both discrete and continuous systems. Particles can represent agents, such as cars in a traffic simulation, or mathematical discretization points, such as when numerically solving differential equations. Particle methods are the most versatile simulation framework and indeed the only one that allows seamless treatment of all types of models using the same algorithms and data structures. After this course, you will be able to implement and use particle-based simulations of both continuous and discrete systems.


particle methods for continuous systems, particle methods for discrete systems, time stepping schemes for particle methods, efficient data structures, efficient neighbor-finding algorithms, discretizing differential operators on particles, hybrid particle-mesh methods.

Summer Term

Lecture: Wednesdays, 3. DS (11:10-12:40) in APB-E006 (computer science building)
Exercises: upon agreement

Programs / Modules

M.Sc. Computational Modeling and Simulation, Modules: CMS-CLS-ELG, CMS-CMA-ELV1, CMS-CMA-ELV2, CMS-VC-ELV1, CMS-VC-ELV2

M.Sc./Diplom Computer Science, Module: INF-VERT7

M.Sc. Distributed Systems Engineering, Modules: DSE-14-E13, DSE-14-E14


2 SWS lecture, 2 SWS exercise, self-study

Registration to the course

For students of the Master program "Computational Modeling and Simulation: via CampusNet SELMA

For students of the Computer Science programs: via jExam


Lecture: Prof. Ivo F. Sbalzarini
Exercises: Suryanarayana Maddu

Learning goals
  • Know efficient data structures and algorithms for particle methods

  • Software engineering and abstractions for particle simulations

  • Practical implementation of particle methods for discrete and continuous models

Lecture language: ENGLISH

Please find below the lecture syllabus and the handouts:
  • Lecture 1 - Administration and Introduction: what is modeling and simulation? What are particle methods?
  • Lecture 2 - Efficient data structures for short-range interactions: cell lists and Verlet lists
  • Lecture 3 - Time stepping algorithms: explicit and implicit
  • Lecture 4 - Error and stability of time stepping
  • Lecture 5 - Particle methods for item-based models with stochastic dynamics; examples: population dynamics and chemical reactions
  • Lecture 6 - Particle methods for item-based models with deterministic dynamics; example: granular flows and molecular dynamics
  • Lecture 7 - Discretizing differential operators on particles: Smooth Particle Hydrodynamics
  • Lecture 8 - Discretizing differential operators on particles: Particle Strength Exchange
  • Lecture 9 - DC-PSE as a unifying framework for field-based particle simulations
  • Lecture 10 - Eulerian simulations of field-based models
  • Lecture 11 - Lagrangian simulations of field-based models
  • Lecture 12 - Hybrid particle-mesh methods and particle-mesh interpolation
  • Lecture 13 - Q & A / Student project presentations

Full lecture notes can be found here.


The student project during the tutorials focuses on software engineering and on implementing a portable software library for particle-based simulations. Then, this library is used to perform different example simulation.