550 likes | 654 Views
GEANT4: An Object-Oriented Toolkit For Simulation In HEP. LHCC / LCB / RD44 Final Report 14 December 1998 RD44 Collaboration. RD44 Collaboration & Software Process.
E N D
GEANT4: An Object-Oriented Toolkit For Simulation In HEP LHCC / LCB / RD44 Final Report 14 December 1998 RD44 Collaboration
RD44 Collaboration &Software Process • World-wide collaboration: more than 100 scientists from over 40 institutions and laboratories participating in more than 10 experiments in Europe, Russia, Japan, Canada and the United States. • The first GEANT4 production version is released by the end of 1998, as it was scheduled in the DRDC P58 project proposal at the end of 1994. • Software process: advanced software engineering techniques, spiral iterations and cycles of design and implementation, Booch methodology, Object Oriented technology, use of de-facto or de-jure standards (ISO STEP, ANSI C++, ESA PSS-05, CVS, OGL...). • Consequences: distributed software design and development world-wide; problem domain decomposition and OOA&D give unidirectional dependency structure of class categories, which correspond to releasable components and can be mapped onto working groups. • Advantages: better exploitation of manpower, competence, and expertise; the categories’ dependency structure determines linking order and deadlines scheduling.
GEANT4 Toolkit Approach:Modularity • GEANT4 has a multi-disciplinary nature, providing functionality in a set of different scientific fields (Working groups: Hits/Digi, Events, Geometry, GUI, Hadronics, E.M. physics, Low Energy physics, Tracking, Visualisation, Particles/Matter, Fast MC, Space, ODBMS, QA, Parallelism, URD). • The GEANT4 Object-Oriented design allows the user to understand, extend, or customise the toolkit in all the domains. At the same time, the modularity of the GEANT4 software allows the user to load and use only the components he needs. • A GUI allows to build applications by drag&drop of icons corresponding to granular components (for ex. leptons, ions, resonances, solids, volumes, field, materials.....). Automatic generation of makefiles, linking order, consistency checks. • Abstract interfaces avoid dependencies on any software, commercial or free, providing functionality or tools external to the simulation domain.
GEANT4 Physics Design • The GEANT4 physics processes exploit Object-Oriented Technology to make transparent how physics results are produced. • The way cross sections are calculated (via formulas, data files, etc. and using different data-sets with applicability by particle, energy, material) is clearly exposed via OO design and separated from the way they are accessed and used in the algorithms. • The way the final state is computed is separated from the tracking and is split into alternative or complementary models, according to the energy range, the particle type, the material. Multiple implementations of physics processes and models are available. • No numbers hard-coded in formulas and algorithms, use of variables and constants instead. An extensive set of units is defined in GEANT4 and all the numerical quantities are expressed through units explicitly. Users are free to choose any units. • Data libs and evaluations: ENDF/B, JENDL, FENDL, CENDL, ENSDF, JEF, BROND, EFF, MENDL, IRDF, SAID, EPDL, EEDL, EADL, SANDIA..... • Distribution centers: NEA (also for HERMES-KFA), LLNL, BNL, KEK, IAEA, IHEP, Helsinki, TRIUMF, FNAL (for MARS)........
GEANT4 E.M. Physics • Ionization: differential treatment for energy loss, integration of cross sections in function of energy, ESA low energy extensions, delta rays production below threshold, hadrons&ions energy loss. • Bremmstrahalung: differential treatment for energy loss, integration of cross-sections in function of energy, ESA low energy extensions, photon production below threshold, LPM effect. • Multiple scattering: + lateral displacement, no path length restriction. Annihilation. • Photoelectric: +Sandia + fluorescence from all shells (ESA). • Compton: + polarization + ESA low energy corrections. Pair conversion. • Synchrotron and transition radiation. • Scintillation, refraction, reflection, absorption and Raleigh effect (+ ESA low energy extensions). Unified Model for simulation of surfaces. • The validity range of all the muon processes (based on theoretical models) scales up to the PeV region, allowing the simulation of ultra-high energy and cosmic physics.
GEANT4 Hadronic Physics • Parameterisation-driven set of models, theory-driven models for physics beyond test-beams energies, data-driven models for treatment of low energy neutron transport. • Parameterisation-driven models include high energy inelastic scattering, as well as low energy inelastic and elastic scattering, fission, capture and dedicated processes for stopping kaons and pions physics. • The theory-driven models provide string parton models (diffractive and dual parton) in the high energy regime (interface to Pythia7 for hard-scattering), as well as intra-nuclear transport models and pre-equilibrium, and a variety of de-excitation models, including evaporation, photo-evaporation, fission, Fermi break-up and multi-fragmentation. • The low energy neutron transport is based on best selections of evaluated data (exploiting the file system to maximise a granular and transparent access to the data sets for the user), allowing radiation background studies. • Lepton-hadron interactions, such as muon-nuclearinteractions, photo-fission and general gamma-meson conversion are also implemented. • Object-Oriented technology allows to plug-and-play models, for example a theory-driven evaporation model is also used by a parameterised stopping-pions model.
GEANT4 Geometry&Transport • ISO STEP compliant solid modeller, allowing exchange of models from CAD systems, and equation of motion solvers in different fields and geometrical boundaries conditions. • Multiple STEP/EXPRESS solid representations, such as Constructive Solid Geometry, Boundary Represented Solids (including NonUniformRationalBSplines), Swept Solids, Boolean Operations. Thus GEANT4 can perform physics simulation in CAD detector models. • Different navigation algorithms in the geometrical data bases allow an high degree of automation in the optimisation of flat or hierarchical volumes structures. • Different integrators, beyond classical Runge-Kutta, and including multi-turn perturbative methods, allow a correct treatment for various E.M.fields ofvariable non-uniformity and differentiability. • A proper integration is also performed to update the particles’ time of flight during transportation if needed.
GEANT4 Tracking • The Tracking manages the evolution of the track's status determined by the physics interaction occurring at a given time, at a given location, or distributed in space-time. • The tracking expects from physics processes any of these kinds of interactions, or any combination of them, leading to a closed generalisation of the traditional (Berger ‘63) classification in discrete and continuous physics processes (which are found back as special cases). • Fully exploits the validity ranges of the physics models: GEANT4 has only production thresholds, no tracking cuts, thus all particles are tracked down to zero range. • Consistent and material-independent accuracy of the simulation because the production cuts are set in range, rather than in energy (and automatic correct treatment of near-boundary regions via the capability of processes to produce secondaries below threshold). • Of course, the user can optionally define cuts in energy, path length, time-of-flight, for special treatment of selected areas in the experimental set-up.
GEANT4 Runs&Events • The Run, Event and Track management allow the simulation of the event kinematics, together with primary and secondary tracks. Interface to event generators, no linking dependencies. • Functionality to perform studies of anything from pile-up, to trigger, and to loopers. Triple stacking mechanism. • A fast parameterisation framework can be triggered on particle type, volume, etc. and is integrated with the full simulation, allowing independent and simplified detector descriptions and at the same time a correct treatment near cracks. • Fast parameterisations allow the direct production of hits corresponding to a full shower development for several detector types. • Hits and Digi domains provide the functionality to reproduce the read-out structure of the detector and its electronic response, independently from the geometry used for the tracking.
GEANT4 Particles and Utilities • Particle Data Group compliant particle definitions, including hundreds of baryonic and mesonic resonances and ions, and decay processes + branching ratios. • Complete set of random number generators, including HepJames, Drand48, Ranlux, Ranecu, etc. and many distributions. Functionality to save status/seeds. • Materials definition: isotopes, elements, compounds, compounds of compounds. • Kit of dedicated user-action classes. • Manadatory: PrimaryGeneration; DetectorConstruction; PhysicsList (particles and processes). • Optional: Run, Event, Track, Stacking, Step... • User Examples: from use-cases to the code.
GEANT4 Graphics • Object-Oriented abstract interfaces allow the use of multiple standard and specialised graphics systems, sophisticated GUIs or command line and batch systems. • Implemented visualisation drivers: X11, PostScript, OpenGL, OpenInventor, VRML, and DAWN, which allows engineering quality drawings and automatic detection of volumes overlaps. • Implemented user interfaces: batch sessions (+macros), interactive sessions based on command-lines, full GUI sessions such as with OPACS, GAG. • Moreover, MOMO GUI includes automatic code generation for detector description and materials definition. The VRML2 driver also allows interactive picking of physics objects, such as tracks and hits, visualising in real time the associated physics information.
GEANT4 Persistency&Performance • GEANT4 Persistency Manager ensures independency from any specific solution. • Drivers implemented for RD45 selected solution: Objectivity DB. Excellent results (RD44 status report ‘97). • Persistency object model makes the data-base customer (other application domains) independent from changes in the simulation. • Persistent events, hits, geometry, trajectories,... • Geometry performance faster than GEANT3. • Tracking performance on pair or faster than GEANT3. • Physics processes performance overall faster even when doing more sophisticated physics, thanks to improved logic. • Fast MonteCarlo capabilities via parameterizations and event biasing to gain orders of magnitude in speed.
GEANT4 Testing and Release Procedures • Unit testing within each category. • Category tags submitted to System Testing Team. • System testing: incremental by category. Schedules according to category diagram. • If a category tag fails in the system testing, it is rejected (and Test Incident Report opened). • If a category tag is accepted, a new reference version is issued. • Always a working reference version is available. • A web data-base allows monitoring of status of reported TIR. • Acceptance testing (subset of System testing) based on use-cases. • Continuous QA, code reviews. • Documented procedures on WWW. • Release of production version and R&D version.