Title: Geant4 - a simulation toolkit -
1Geant4- a simulation toolkit -
- Makoto Asai (SLAC Computing Services)
- On behalf of the Geant4 Collaboration
- December 1st, 2003
- ACAT03 _at_ KEK
2Contents
- General introduction and brief history
- Geant4 kernel
- Geometry
- Physics
- Highlights of the new developments
- Highlights of user applications
- User support processes
- Summary
3General introduction and brief history
4What is Geant4?
- Geant4 is an object-oriented toolkit for
simulation of elementary particles passing
through and interacting with matter. It includes
a complete range of functionality including
tracking, geometry, physics models and hits. - Geant4's application area includes high energy
and nuclear physics experiments, accelerator and
shielding studies, space engineering, medical
physics and several other fields. - Geant4 is the successor of GEANT3, the
world-standard toolkit for HEP detector
simulation. Geant4 is one of the first successful
attempt to re-design a major package of HEP
software for the next generation of experiments
using an Object-Oriented environment.
5Flexibility of Geant4
- In order to meet wide variety of requirements
from various application fields, a large degree
of functionality and flexibility are provided. - Geant4 has many types of geometrical descriptions
to describe most complicated and realistic
geometries - CSG, BREP, Boolean
- XML interface
- The physics processes offered cover a
comprehensive range including electromagnetic,
hadronic and optical processes for a large set of
long-lived particles in materials and elements,
over a wide energy range. The applicable energy
range begins, in some cases, from 100 eV and
extends up to the TeV energy range.
6Physics in Geant4
- It is rather unrealistic to develop a uniform
physics model to cover wide variety of particles
and/or wide energy range. - Much wider coverage of physics comes from mixture
of theory-driven, parameterized, and empirical
formulae. Thanks to polymorphism mechanism, both
cross-sections and models (final state
generation) can be combined in arbitrary manners
into one particular process. - Standard EM processes
- Low energy EM processes
- Hadronic processes
- Photon/lepton-hadron processes
- Optical photon processes
- Decay processes
- Shower parameterization
- Event biasing technique
7Geant4 Its history and future
- Dec 94 - Project start
- Apr 97 - First alpha release
- Jul 98 - First beta release
- Dec 98 - Geant4 0.0 (first public) release
- Jul 99 - Geant4 0.1 release
-
- Jun 03 - Geant4 5.2 release
- Dec 12th, 03 - Geant4 6.0 release (planned)
- We currently provide two to three public releases
and bimonthly beta releases in between public
releases every year.
8Geant4 Collaboration
HARP
PPARC
Univ. Barcelona
Collaborators also from non-member institutions,
including Budker Inst. of Physics IHEP
Protvino MEPHI Moscow Pittsburg University
Lebedev
Helsinki Inst. Ph.
9Geant4 kernel
10Geant4 kernel
- Geant4 consists of 17 categories.
- Independently developed and maintained by WG(s)
responsible to each category. - Interfaces between categories (e.g. top level
design) are maintained by the global architecture
WG. - Geant4 Kernel
- Handles run, event, track, step, hit, trajectory.
- Provides frameworks of geometrical representation
and physics processes.
Geant4
Inter
Readout
Visuali
faces
zation
Persis
Run
tency
Event
Tracking
Digits
Processes
Hits
Track
Geometry
Particle
Graphic
Material
_reps
Intercoms
Global
11Tracking and processes
- Geant4 tracking is general.
- It is independent to
- the particle type
- the physics processes involving to a particle
- It gives the chance to all processes
- To contribute to determining the step length
- To contribute any possible changes in physical
quantities of the track - To generate secondary particles
- To suggest changes in the state of the track
- e.g. to suspend, postpone or kill it.
12Processes in Geant4
- In Geant4, particle transportation is a process
as well, by which a particle interacts with
geometrical volume boundaries and field of any
kind. - Because of this, for example, shower
parameterization process can take over from the
ordinary transportation without modifying the
transportation process. - Each particle has its own list of applicable
processes. At each step, all processes listed are
invoked to get proposed physical interaction
lengths. - The process which requires the shortest
interaction length (in space-time) limits the
step.
13Cuts in Geant4
- A Cut in Geant4 is a production threshold.
- Only for physics processes that have infrared
divergence - Not tracking cut, which does not exist in Geant4
- Energy threshold must be determined at which
discrete energy loss is replaced by continuous
loss - Old way
- Track primary particle until cut-off energy is
reached, calculate continuous loss and dump it at
that point, stop tracking primary - Create secondaries only above cut-off energy, or
add to continuous loss of primary for less
energetic secondaries - Geant4 way
- Specify range (which is converted to energy for
each material) at which continuous loss begins,
track primary particle one more step to make it
down to zero range - Create secondaries only above specified range, or
add to continuous loss of primary for less
energetic secondaries
14Energy cut vs. range cut
- 500 MeV/c proton in liq.Ar (4mm) / Pb (4mm)
sampling calorimeter
- Geant3 (energy cut)
- Ecut 450 keV
liq.Ar
Pb
liq.Ar
Pb
- Geant4 (range cut)
- Rcut 1.5 mm
- Corresponds to Ecut in liq.Ar
450 keV, Ecut in Pb 2 MeV
15Geometry
16Volume
- Three conceptual layers
- G4VSolid -- shape, size
- G4LogicalVolume -- daughter physical volumes,
- material,
sensitivity, user limits, etc. - G4VPhysicalVolume -- position, rotation
- Hierarchal three layers of geometry description
allows maximum reuse of information to minimize
the use of memory space.
17Solid
- Geant4 geometry module supports variety of
representations of shapes. - CSG (Constructed Solid Geometry) solids
- G4Box, G4Tubs, G4Cons, G4Trd,
- Analogous to simple GEANT3 CSG solids
- Specific solids (CSG like)
- G4Polycone, G4Polyhedra, G4Hype,
- BREP (Boundary REPresented) solids
- G4BREPSolidPolycone, G4BSplineSurface,
- Any order surface
- Boolean solids
- G4UnionSolid, G4SubtractionSolid,
18Physical volume
- G4PVPlacement 1 Placement One
Volume - A volume instance positioned once in its mother
volume - G4PVParameterised 1 Parameterized Many
Volumes - Parameterized by the copy number
- Shape, size, material, position and rotation can
be parameterized, by implementing a concrete
class of G4VPVParameterisation. - Reduction of memory consumption
- G4PVReplica 1 Replica Many
Volumes - Slicing a volume into smaller pieces (if it has a
symmetry) - G4ReflectionFactory 1 Placement a set of
Volumes - Generating a pair of placements of a volume and
its reflected volume - Useful typically for end-cap calorimeter
- G4AssemblyVolume 1 Placement a set of
Placements - Position a group of volumes
19Smart voxelization
- In case of Geant 3.21, the user had to carefully
implement his/her geometry to maximize the
performance of geometrical navigation. - While in Geant4, users geometry is automatically
optimized to most suitable to the navigation. -
"Voxelization" - For each mother volume, one-dimensional virtual
division is performed. - Subdivisions (slices) containing same volumes are
gathered into one. - Additional division again using second and/or
third Cartesian axes, if needed. - "Smart voxels" are computed at initialisation
time - When the detector geometry is closed
- Does not require large memory or computing
resources - At tracking time, searching is done in a
hierarchy of virtual divisions
20Geometry checking tools
- An overlapping volume is a contained volume which
actually protrudes from its mother volume - Volumes are also often positioned in a same
volume with the intent of not provoking
intersections between themselves. When volumes in
a common mother actually intersect themselves are
defined as overlapping - Geant4 does not allow for malformed geometries
- The problem of detecting overlaps between volumes
is bounded by the complexity of the solid models
description - Utilities are provided for detecting wrong
positioning - Graphical tools
- Kernel run-time commands
21Physics
22Physics processes in Geant4
- Each process can act at any of three space-time
intervals - In time - At rest (e.g. decay at rest)
- Continuously along a step (e.g. Cherenkov
radiation) - At a point - at the end of the step (e.g. decay
in flight) - Along step actions are applied cumulatively,
while others are selectively applied. - A process can have more than one types of action
according to its nature. - For example, Ionization process has Along and End
step actions - Tracking handles each type of action in turn.
- It loops over all processes with such a type of
action. - The motivation for creating these categories of
actions is to keep the tracking independent of
the physics processes. - All seven combinations of actions are possible.
- The traditional Continuous, Continuous-Discrete,
Discrete and AtRest are found in these cases. - The ordering of processes is important in some
cases. - e.g. Multiple scattering affects the step length.
23Electromagnetic processes
- Gammas
- Gamma-conversion, Compton scattering,
Photo-electric effect - Leptons (e, m), charged hadrons, ions
- Energy loss (Ionisation, Bremstrahlung) or PAI
model energy loss, Multiple scattering,
Transition radiation, Synchrotron radiation, - Optical photons
- Cerenkov, Rayleigh, Reflection, Refraction,
Absorption, Scintillation - High energy m
- Alternative implementation
- Standard EM package ignores the binding energy of
electron to an atom, while Low Energy EM package
takes it into account. - Standard for applications that do not need to
go below 1 KeV - Low Energy down to 250eV (e/g), O(0.1mm) for
hadrons
24Multiple scattering
- Examples of comparisons
- 15.7 MeV e-
- on gold foil
- Modelling comparisons
- L. Urban
Angle (deg)
25Hadronic and Photolepton-hadron processes
- Each hadronic process may have one or more cross
section data sets, and final state production
models associated with it. Each one has its own
energy range of applicability. - The term data set is meant in a broad sense to
be an object that encapsulates methods and data
for calculating total cross sections. - The term model is meant in a broad sense to be
an object that encapsulates methods and data for
calculating final state products.
26Parameterization and data driven models
- Parameterization models on the fly
- high energy inelastic (Aachen, CERN)
- low energy inelastic, elastic, fission, capture
(TRIUMF, UBC, CERN, SLAC) - Parameterization models for stopping particles
- base line (TRIUMF, CHAOS)
- mu- (TRIUMF, FIDUNA)
- pi- (INFN, CERN, TRIUMF)
- K- (Crystal Barrel, TRIUMF)
- anti-protons (JLAB, CERN)
- Electromagnetic transitions of the exotic atom
prior to capture effects of atomic binding.
(Novosibirsk, ESA) - Data driven models
- Low energy neutron transport (neutron_hp),
- Radioactive decay (DERA, ESA)
- photon evaporation (INFN)
- elastic scattering (TRIUMF, U.Alberta, CERN)
- internal conversion (ESA)
- etc..
27Theory driven models
- Ultra-high energy models
- Parton transport model (U.Frankfurt, in
discussion) - High energy models
- Fritjof type string model (CERN)
- Quark gluon String model (CERN)
- Pythia(7) interface (Lund, CERN)
- Intra-nuclear transport models (or replacements)
- Hadronic cascadepre-equilibrium model (HIP,
CERN) - Binary and Bertini cascade models (HIP, CERN,
Novosibirsk, SLAC) - QMD type models (CERN, Inst.Th.Phys. Frankfurt)
- Chiral invariant phase-space decay model (JLAB,
CERN, ITEP) - Partial Mars rewrite (Kyoto, Uvic, in
collaboration with FNAL) - De-excitation
- Evaporation, fission, multi-fragmentation,
fermi-break-up (CMS)
28Hadronic Model Inventory
CHIPS
At rest Absorption m, p, K, anti-p
CHIPS (gamma)
Photo-nuclear, electro-nuclear
High precision neutron
Evaporation
FTF String (up to 20 TeV)
Fermi breakup
Pre- compound
Multifragment
Bertini cascade
QG String (up to 100 TeV)
Photon Evap
Binary cascade
Fission
Rad. decay
MARS
HEP ( up to 20 TeV)
LE pp, pn
LEP
1 MeV 10 MeV 100 MeV 1 GeV
10 GeV 100 GeV 1 TeV
29Verification
- The verification effort of the geant4 hadronic
working group is grouped into several sections - Inclusive cross-sections
- Thin target comparisons
- Verification of model components
- Code comparisons (least effective)
- Complete application tests
- Robustness.
- A few examples of each are given in the following
slides.
30Proton reaction total cross-section
J.P.Wellisch
31Pion production examples, QGSRapidity
distributions and invariant cross-section
predictions in quark gluon string model
400GeV protons on Lithium
100 GeV pi on Gold
32Forward peaks in proton induced neutron
production
Lead
Beryllium
256 MeV data Neutrons at 7.5deg.
Iron
Aluminum
33 Production from 730 MeV p (Bertini Model)
34Low energy neutron capturegammas from 14 MeV
capture on Uranium
35Nuclear interactions with Geant4 versus experiment
10-9 pC/incident proton
Channel
Phantom and experimental results from
H.Paganetti, B.Gottschalk, Medical physics Vol.
30, No.7, 2003
36Atlas HEC (e/p ratio)
37CMS ECAL HCAL testbeam GEANT3 - GEANT4
comparison
100 GeV pi ECALHCAL
38"Educated guess" physics lists
- In Geant4, the physics lists serve the same
purpose as the "packages" (GHEISHA, FLUKA,
GCALOR) in geant3. - Conceptually, the two are identical.
- Both ways provide the physics and its modeling to
an application. - Each "package" is built of a complete and
consistent set of models - In Geant4, the number of "packages" is quite
large. Each option comes with trade-offs in
descriptive power and performance. - It simply became clear that writing a good
physics list is not trivial, in particular when
hadronic physics is involved. - It is nice to be able to exploit the full power
in the flexibility and variety of hadronic
physics modeling in geant4, but being forced to
do so is not what we want. - It is also nice to have the physics transparently
in front of the user and to exploit it in the
best possible way, but being forced to understand
everything is (very understandably) not what
people want, either. - We have systematically accumulated experience
with various combinations of cross-section and
models over the past years. Today we provide a
set of physics lists institutionalizing this
knowledge. - "Educated guess" physics lists
39Use-case driven packages
- LCG simulation project.
- HEP calorimetry.
- HEP trackers.
- 'Average' collider detector
- Low energy dosimetric applications with neutrons
- low energy nucleon penetration shielding
- linear collider neutron fluxes
- high energy penetration shielding
- medical and other life-saving neutron
applications - low energy dosimetric applications
- high energy production targets
- e.g. 400GeV protons on C or Be
- medium energy production targets
- e.g. 15-50 GeV p on light targets
- LHC neutron fluxes
- low background experiments
- Air shower applications (still working on this)
- Each package has several physics lists suitable
to the use-case
40Decay
- A decay table is associated to the definition of
each particle type. - A track can have a decay channel. If it has, it
exactly decays through this channel without
randomizing by the decay ratio. - This allows the user to import decay chains
generated by physics generators such as Pythia,
and rely on Geant4 tracking for such unstable
particles.
Primary particle list
G4Track
B0
B0
K0L
pre-defined decay channel
K0L
41Optical processes
- Geant4 has a particle named Optical Photon,
which is distinguished from gamma. It interacts
by optical processes. - Geant4 is an ideal framework for modeling the
optics of scintillation and Cerenkov detectors
and their associated light guides. This is
founded in the toolkit's unique capability of
commencing the simulation with the propagation of
a charged particle and completing it with the
detection of the ensuing optical photons on photo
sensitive areas, all within the same event loop. - This functionality is now employed world-wide in
experimental simulations as diverse as ALICE,
ANTARES, AMANDA, Borexino, Icarus, LHCb, HARP,
KOPIO, the Pierre Auger Observatory, and the GATE
(Imaging in Nuclear Medicine) Collaboration.
42Optical processes
- Optical photons are generated if one or more of
following processes are activated. - Cerenkov radiation,
- Transition radiation,
- Scintillation
- Optical processes built in Geant4
- Absorption,
- Rayleigh scattering
- Boundary Processes (reflection, refraction)
- Optical properties, e.g. dielectric coefficient
and surface smoothness, can be set to a volume.
43Shower parameterization framework
- Geant4 includes a built-in framework for shower
parameterization scheme. Currently, the user has
to concrete his/her own parameterization assigned
to a logical volume, which is then called as an
envelop. - Regardless of the existence of granular daughter
geometry, a particle comes into the envelop can
be fully treated by the shower parameterization
process. - The user still have a dynamic choice to take
his/her parameterization or to follow the
ordinary tracking in the granular geometry. - The shower parameterization process can directly
contact to a sensitive detector associating to
the volume to produce more than one distributed
hits.
44Highlights ofnew developments
45Event biasing in Geant4
- Event biasing (variance reduction) technique is
one of the most important requirements, which
Geant4 collaboration is aware of. - This feature could be utilized by many
application fields such as - Radiation shielding
- Dosimetry
- Since Geant4 is a toolkit and also all source
code is open, the user can do whatever he/she
wants. - CMS, ESA, Alice, and some other experiments have
already had their own implementations of event
biasing options. - Its much better and convenient for the user if
Geant4 itself provides most commonly used event
biasing techniques.
46Current features in Geant4
- Partial MARS migration
- n, p, pi, K (lt 5 GeV)
- Since Geant4 0.0
- General particle source module
- Primary particle biasing
- Since Geant4 3.0
- Radioactive decay module
- Physics process biasing in terms of decay
products and momentum distribution - Since Geant4 3.0
- Cross-section biasing (partial) for hadronic
physics - Since Geant4 3.0
- Leading particle biasing
- Since Geant4 4.0
- Geometry based biasing
- Weight associating with real volume or artificial
volume - Since Geant4 5.0
47Geometrical importance biasing
- Define importance for each geometrical region
- Duplicate a track with half (or relative) weight
if it goes toward more important region. - Russian-roulette in another direction.
- Scoring particle flux with weights
- At the surface of volumes
48Cuts per Region
- Geant4 has had a unique and uniform production
threshold (cut) expressed in length (range of
secondary). - For all volumes
- One cut in range for each particle
- By default is the same cut for all particles.
- Consistency of the physics simulated
- A volume with dense material will not dominate
the simulation time at the expense of sensitive
volumes with light material. - Yet appropriate length scales can vary greatly
between different areas of a large detector - E.g. a vertex detector (5 mm) and a muon detector
(2.5 cm). - Having a unique (low) cut can create a
performance penalty. - Requests from ATLAS, BABAR, CMS, LHCb, , to
allow several cuts - Enabling the tuning of production thresholds at
the level of a sub-detector, i.e. region. - Cuts are applied only for gamma, electron and
positron. - Full release in Geant4 5.1 (end April, 2003)
- Comparable run-time performance compared to
global cuts.
49Region
- Introducing the concept of region.
- Set of geometry volumes, typically of a
sub-system - Or any group of volumes
- A cut in range is associated to a region
- a different range cut for each particle is
allowed in a region. - Typical Uses
- barrel end-caps of the calorimeter can be a
region - Deep areas of support structures can be a
region.
50Highlights ofUsers Applications
51Geant4 in HEP
- ATLAS (CERN-LHC)
- 22 x 22 x 44 m3
- 15,000 ton
- 4 million channels
- 40 MHz readout
52(No Transcript)
53CMS
Sliced view of CMS barrel detectors
View of CMS muon system
View of 180 Higgs event simulated in CMS Tracker
detector
54LHCb
A Typical event in the Testbeam
Red lines Charged particle Green lines
Optical Photons.
55Geant4 for beam transportation
56(No Transcript)
57(No Transcript)
58INTEGRAL
- Gamma ray astronomy from 15 keV to 10 MeV
- Launched 17 October 2002
- Length 5 m, diameter 3.7 m, mass 4 tons
59INTEGRAL Geant4 model byUniversity of
Southampton
INTEGRAL in the ESA/ESTEC test center
60International Space Station (ISS)
Space Environments and Effects Section
61Space Radiation Solar Events of October-November
2003!
Images by the ESA/NASA SOHO spacecraft
The effects of space radiation on spacecraft and
on astronauts can be simulated with Geant4
62ESA Space Environment Effects Analysis Section
- DESIRE (Dose Estimation by Simulation of the ISS
Radiation Environment) - KTH Stockholm, ESTEC, EAC, NASA Johnson
- Prediction of the ambient energetic particle
environment (SPENVIS additional models) - Construction of COLUMBUS geometry in Geant4
- Radiation transport, including secondary particle
production, through the geometry - Calculation of astronaut radiation doses
63(No Transcript)
64(No Transcript)
65User Support
66User Support
- Geant4 Collaboration offers extensive user
supports. - Documents
- Examples
- Users workshops
- Tutorial courses
- HyperNews and mailing list
- Bug reporting system
- Requirements tracking system
- Daily private communications
- New implementation - Technical Forum
67Documents for users
- One introduction and Five user manuals
- http//wwwasd.web.cern.ch/wwwasd/geant4/G4UsersDoc
uments/ Overview/html/index.html - Installation guide
- User's guide for application developers
- For a user who develops a simulation application
using Geant4 - User's guide for toolkit developers
- For a user who develops a module which alternates
or enhances some of geant4 functionalities - Physics reference manual
- Detailed description of each physics process with
information of references - Software reference manual
- LXR source code browser maintained by TRIUMF and
KEK. - Materials of past tutorials / presentations,
HyperNews and Web pages maintained by developers
also available via Geant4 official Web page. - "Geant4 general paper" - NIM A 506.
68Examples
- Along the code releases, Geant4 provides examples
which help user's understanding of
functionalities of Geant4 and are reusable as
"skeletons" of user's application. - Three levels of examples
- Novice examples
- Demonstrate most basic features
- Extended examples
- Highlight some functionalities / use-cases in
detail - Some examples require external package(s)
- Advanced examples
- Most realistic applications
- User's contributions
69Geant4 users workshop
- Users workshops were held or are going to be held
hosted by several institutes for various user
communities. - KEK - Dec.2000, Jul.2001, Mar.2002, Jul.2002,
Mar.2003, Jul.2003 - SLAC - Feb.2002
- Spain (supported by INFN) - Jul.2002
- CERN - Nov.2002
- ESA/NASA - Jan.2003, May.2004
- dedicated to space-related users
- Helsinki - Oct.2003
- Local workshops of one or two days were held or
are planned at several places.
70Geant4 tutorials / lectures
- In addition to the users workshops, many tutorial
courses and lectures with some discussion time
slots were held for various user communities. - CERN School of Computing
- Italian National School for HEP/Nuclear
Physicists - MC2000, MCNEG workshop, IEEE NSS/MIC
- KEK, SLAC, DESY, FNAL, INFN, Frascati,
Karolinska, GranSasso, etc. - ATLAS, CMS, LHCb
- Tutorials/lectures at universities
- U.K. - Imperial
- Italy - Genoa, Bologna, Udine, Roma, Trieste
- Near future tutorial courses
- KEK (Dec. 8th-11th, 2003)
- Vanderbilt Univ. TN. USA (Jan. 11th-13th, 2004)
- SLAC (Mar. 8th-10th, 2004)
71HyperNews
- HyperNews system was set up in April 2001
72HyperNews
- 19 categories
- Not only user-developer, but also user-user
information exchanges are quite intensive.
73HyperNews is quite active
74Technical Forum
- In the Technical Forum, the Geant4 Collaboration,
its user community and resource providers
discuss - major user and developer requirements, user and
developer priorities, software implementation
issues, prioritized plans, physics validation
issues, user support issues - The Technical Forum is open to all interested
parties - To be held at least 4 times per year (in at least
two locales) - The purpose of the forum is to
- Achieve, as much as possible, a mutual
understanding of the needs and plans of users and
developers. - Provide the Geant4 Collaboration with the
clearest possible understanding of the needs of
its users. - Promote the exchange of information about physics
validation performed by Geant4 Collaborators and
Geant4 users. - Promote the exchange of information about user
support provided by Geant4 Collaborators and
Geant4 user communities. - Next Technical Forum meeting _at_ CERN on February
5th, 2004.
75Summary
- Geant4 is a worldwide collaboration providing a
tool for simulation of particles interacting with
matter. - Geant4s object-oriented modular structure allows
a large degree of functionality and flexibility. - Geant4 can handle most complicated and realistic
geometries. - Geant4 provides sets of alternative physics
models so that users can choose appropriate
models. - Geant4 is being used by not only high energy and
nuclear physics but also accelerator physics,
astrophysics, space science and medical and other
applications. - Geant4 Collaboration offers extensive user
supports. - http//cern.ch/geant4/