Chroma is a high performance optical photon simulation for particle physics detectors. It tracks individual photons passing through a triangle-mesh detector geometry, simulating standard physics processes like diffuse and specular reflections, refraction, Rayleigh scattering and absorption.
With the assistance of a CUDA-enabled GPU, Chroma can propagate 2.5 million photons per second in a detector with 29,000 photomultiplier tubes. This is 200x faster than the same simulation with GEANT4.
Chroma is under heavy development. Tagged releases will happen soon, but in the meantime we encourage people to obtain the code directly from the Mercurial repository hosted at Bitbucket:
For questions, ideas, and discussion, join the Chroma development mailing list:
For bug reports, please create a Bitbucket account and use the Bitbucket issue tracker:
The core concepts are described in the Chroma whitepaper.
The software documentation is evolving rapidly, so many of the following sections are incomplete at the moment. Subscribe to the mailing list for update announcements!