Welcome to the documentation for DREAM!

DREAM (for Disruption and Runaway Electron Analysis Model) is a scientific code which solves a system of equations describing the evolution of a tokamak plasma during a disruption. The tool is primarily designed for studying the evolution of runaway electrons in the disruption.

The code is separated into two parts: a C++ library, which constitutes the computational kernel of the code, and a Python interface for easy access and configuration of simulations. This documentation describes both parts of the code, with the documentation for the former being mostly intended for code developers, while the latter is intended for code users.

For more details on the physical models implemented in DREAM, please consult the physics manuals available in the DREAM GitHub repository.

The DREAM code is developed and maintained by the Plasma Theory group at Chalmers University of Technology, Gothenburg, Sweden.


The full code is freely available on GitHub.


The Disruption Runaway Electron Analysis Model DREAM is designed to simulate runaway electron generation during a tokamak disruption.

For users

If you would like to run simulations with DREAM, you should have a look at the documentation of the Python frontend. In particular, options for setting up the equation can be found on the EquationSystem settings page.

For developers

If you are trying to understand how DREAM works on a deeper level, you are most likely interested in the documentation for the The C++ kernel.

For physicists

If you are curious about the physical model implemented in DREAM, you should have a look at the physics notes located under doc/notes/ in the DREAM git repository.

Indices and tables