Skip to content

rjones30/HDGeant4

Repository files navigation

HDGeant4 - Geant4 simulation of the Hall D beam line and GlueX spectrometer

Authors

  • Richard Jones, University of Connecticut, Storrs, CT
  • David Lawrence, Jefferson Lab, Newport News, VA
  • the GlueX Collaboration

Description

HDGeant4 is first and foremost an application for simulating the photon beam in Hall D at Jefferson Lab, Newport News, VA and following the interactions generated by the beam in the GlueX liquid hydrogen (or other) target as they propagate through the detector, eventually to be absorbed in the spectrometer material or to exit the setup. The primary output from the simulation is the record of digitized electronic pulses ("hits") that are registered in the active elements of the detector, saved in a standard format known as HDDM (Hall D Data Model) that is read and analyzed by other parts of the GlueX offline software suite. Secondary uses of the package are to estimate background counting rates in various detector elements, generate detailed 3D images of the beam line and detector geometry, and check for overlaps and other types of errors in the geometry description. The beam line layout and GlueX spectrometer geometry, magnetic fields, etc. are provided to HDGeant4 as input an external package called HDDS (Hall D Detector Specification), which maintains this information in a heirarchical tree of xml documents described by a single unified schema. For more information on the GlueX experiment, go to http://www.gluex.org or http://www.gluex.org/wiki/.

History

HDGeant4 is similar in many ways to its predecessor HDGeant, which was based on the cernlib (Fortran) geant3 simulation library. Both HDGeant and HDGeant4 read the geometry from the same source (HDDS) and are support the same input/output event file format (HDDM) so in that sense they are drop-in replacements for each other. However HDGeant4 is a complete rewrite of the simulation from scratch in C++, not a mere porting over from the original Fortran. As such, it embodies many improvements in the detector hits generation code, in addition to the improvements in the physics simulation libraries that come with the move from geant3 to geant4.

Release history

See VERSIONS file in the project directory.

Usage synopsis

Usage: hdgeant4 [options] [<batch.mac>] where options include: -v : open a graphics window for visualization -tN : start N worker threads, default 1 -rN : set run to N, default taken from control.in

Dependencies

See https://halldweb.jlab.org/wiki/index.php/HOWTO_install_and_run_HDGeant4 for detailed information regarding external package dependencies.

Building instructions

See INSTALL file in the project directory, or for more detailed building instructions, see https://halldweb.jlab.org/wiki/index.php/HOWTO_install_and_run_HDGeant4 on the gluex wiki.

Documentation

See https://halldweb.jlab.org/wiki/index.php/HOWTO_install_and_run_HDGeant4 on the gluex wiki.

Troubleshooting

See https://halldweb.jlab.org/wiki/index.php/HOWTO_install_and_run_HDGeant4 section on visualization, found on the gluex wiki.

Bugs

How to contribute

Contact the authors

Write to richard.t.jones at uconn.edu, or to davidl at jlab.org.