/DPMJET

Home of the DPMJET event generator

Primary LanguageFortranOtherNOASSERTION

DPMJET-III and PHOJET

Version: 19.3.2

Status: release

Description

DPMJET-III is a Monte Carlo event generator for hadron, photon and nuclear collisions with a several decade-long history. DPMJET is an integral part of FLUKA, a fully integrated particle physics MonteCarlo simulation package, acting as event generator for nucleus-nucleus collisions above 5 GeV/nucleon and for hadronic collisions at high energies. DPMJET-III embeds the PHOJET event generator, which is used for simulations of hadron-hadron, photon-hadron and photon-photon collisions. This and future versions of PHOJET will be distributed as part of this DPMJET package. Both codes are interfaced to Pythia 6 for hadronization.

Availability

Visit the GitHub repository for the latest version. Official releases are available for download from here.

Please use Issues for reporting bugs, questions or complaints.

The code is distributed with a copy of PYTHIA 6.4.27 and relies on its fragmentation routines. Torbjorn Sjostrand is the copyright holder of PYTHIA 6.

Physics validation

DPMJET is an integral part of FLUKA and FLUKA. It is responsible for simulating hadronic interactions at very high energies and nucleus-nucleus interactions from above the inelastic threshold. DPMJET's physics predictions are validated against a large body of measurements. A recent printout of the validation results and a list of physics changes between major version updates can be found here.

User interfaces

Traditional steering cards

This and newer versions will continue supporting configuration and running though ASCII files. Instructions and options are listed in input card interface.

Python interface

The Python interface is based on NumPy's f2py package, which exposes the subroutines of a Fortran library without modifications to the original source code. It runs the code at native speed with very little impact on runtime. The package impy is the recommended user interface.

Building/Installation

To use versioned releases, download the latest tarball from releases and unpack. To build the executables:

make -j<n_jobs> exe
# Wait...

# Run example
bin/DPMJET < examples/dpmjet/ppLHC.inp

The Python library is available as a different build target

make -j<n_jobs> pylib

Documentation

We are in the process of compiling more documentation and/or examples. For now, browse the docs folder for basic instructions and a marginally outdated manual for PHOJET.

Authors

      [Anatoli Fedynitch]*
      ASIoP - Institute of Physics                                 
      Academia Sinica                            
      Taipei City 115201, Taiwan (R.O.C.)
      
      Stefan Roesler
      CERN, DGS-RP
      CH-1211 Geneva 23, Switzerland

      Ralph Engel
      Institute for Astroparticle Physics
      Karlsruhe Institute of Technology
      D-76021 Karlsruhe, Germany

*maintainer

This code is part of the heritage of

      Johannes Ranft
      Dept. of Physics
      University of Siegen
      D-57068 Siegen, Germany

who inspired this one and the many predecessor codes.

Literature and references

Both, DPMJET and PHOJET are not accompanied by full publications that describe the code. As long as a new publication is in preparation, please cite:

A list of references detailing the physics is under construction here.

Contributors

The code received substantial contributions by

  • Alfredo Ferrari (INFN/CERN/KIT)
  • Fritz W. Bopp (U. Siegen)

The code is licensed under the BSD 3-clause license, see LICENSE for details. This license gives you maximal freedom to employ the code for academic purposes. We are convinced that forking or extracting parts of the code, breaks its integrity and diminishes the scientific value of our work for the high-energy physics community as a whole. Therefore, we strongly encourage you to respect the MCnet academic usage guidelines, that are included as GUIDELINES. We welcome modifications or extensions that are compatible with this official distribution and will seriously consider every pull request that does not break compatibility.