GEant4 Monte-Carlo

Why gemc?

geant4 is a c++ framework to simulate the passage of particles through matter.

GEMC makes available all the powerful geant4 features w/o need of c++ or geant4 knowledge. It provides:

  • application independent geometry description
  • easy interface to build / run experiments
  • cad/gdml imports

From left to right: the electron beam in the clas12 detector; electron and ion beans in the electron-ion collider project; the electron-ion collider detector at interaction point; the cebaf bubble experiment .

Overview

gemc makes easy things trivial and hard things possible.

Users can build or import from cad complex setups with minimal programming knowledge. See for example how to build a TOF with few lines of code or how to import TOF from cad.

Experiments can be loaded using a combination of these factories:

  • MYSQL
  • TEXT
  • GDML
  • CAD (STL, PLY, OBJ formats)
  • C++ Plugin

gemc can import models from CAD and GDML. Left: the upper gastrointestinal system is modeled in CAD. It can be imported in GEMC and made it sensitive so that radiation doses can be measured. Right: the mighty USS Enterprise NCC 1701-A (CAD) can be used to shoot protons torpedos at a dragon (CAD) while a GDML sphere is watching.


Simulations are application independent

Once the user defined setup is loaded, gemc translates it in geant4. This includes:

  • geometry
  • materials
  • mirrors
  • physics list
  • digitization
  • electromagnetic fields

All particles are transported through matters and produce radiation, hits, secondaries. gemc then collects the geant4 results and produce the output specified by the user.


_images/gemcArchitecture.png

Open source

gemc is free and open source.

Please visit the contributing to gemc page if you’re interested in the code development.

If you have any bug/code optimization to report, new ideas, features request, please open a code issue / feature request in github.