Download presentation
Presentation is loading. Please wait.
Published byStephen Alexander Modified over 8 years ago
1
Introduction to Geant4 Gunter Folger, CERN EP/SFT Michel Maire, LAPP/Annecy On behalf of the Geant4 Collaboration 30 September, 2003
2
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe2 Contents General introduction and brief history Geant4 kernel Geant4 kernel Geant4 kernel Geometry Geometry Physics Physics GUI/Visualization User documention and examples User support Highlights of the new developments Highlights of user applications Most of these slides are from tutorials of M.Asai and H.P.Wellisch
3
General introduction and brief history
4
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe4 What is Geant4? Geant4 is a toolkit for the simulation of the passage of particles through matter. Its application areas include high energy physics and nuclear experiments, medical, accelerator and space physics studies. 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. A variety of requirements also came from heavy ion physics, CP violation physics, cosmic ray physics, astrophysics, space science and medical applications.
5
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe5 Geant4 Collaboration Collaborators also from non- member institutions, including Budker Inst. of Physics IHEP Protvino MEPHI Moscow Pittsburg University Helsinki Inst. Ph. PPARC Univ. Barcelona HARP Lebedev
6
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe6 Geant4 – Its history and future Dec ’94 - Project start Apr ’97 - First alpha release Jul ’98 - First beta release Dec ’98 - Geant4 0.0 release Jul ’99 - Geant4 0.1 release … Jun ’03 - Geant4 5.2 release Dec ’03 - Geant4 6.0 release (planned) We currently provide two to three public releases and monthly beta releases in between public releases every year.
7
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe7 Flexibility 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 STEP compliant XML interface Everything is open to the user Choice of physics processes/models Choice of GUI/Visualization/persistency/histogramming technologies
8
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe8 Physics 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, or data driven approaches. 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
9
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe9 Physics in Geant4 Each cross-section table or physics model (final state generation) has its own applicable energy range. Combining more than one tables / models, one physics process can have enough coverage of energy range for wide variety of simulation applications. Geant4 provides sets of alternative physics models so that the user can freely choose appropriate models according to the type of his/her application. Several individual universities / physicists groups are contributing their physics models to Geant4. Given the modular structure of Geant4, developers of each physics model are well recognized and credited.
10
Geant4 kernel
11
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe11 Geant4 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 ReadoutVisuali zation Persis tency Run Event Inter faces Tracking Digits + Hits Processes Track GeometryParticle Graphic _reps Material Intercoms Global
12
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe12 Tracking and processes Geant4 tracking is general. It is independent to the particle type the physics process 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.
13
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe13 Processes 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. 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.
14
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe14 Track in Geant4 Track is a snapshot of a particle. It has only position and physical quantities of current instance. Step is a “delta” information to a track. Track is not a collection of steps. Track is deleted when it goes out of the world volume it disappears (e.g. decay) it goes down to zero kinetic energy and no “AtRest” additional process is required the user decides to kill it No track object persists at the end of event. For the record of track, use trajectory class objects.
15
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe15 Step in Geant4 Step has two points and also “delta” information of a particle (energy loss on the step, time-of-flight spent by the step, etc.). Each point knows the volume (and material). In case a step is limited by a volume boundary, the end point physically stands on the boundary, and it logically belongs to the next volume. Because one step knows materials of two volumes, boundary processes such as transition radiation or refraction can be simulated. Begin of step point End of step point Step Boundary
16
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe16 Cuts 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 below which generated secondaries are replaced by continuous loss track primary down to zero range Create secondaries only above specified threshold, and add to continuous loss of primary for secondaries of less energetic
17
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe17Stack Track is a class object, thus it is easy to treat suspending or postponing tracks. For example, Suspend tracks at the entrance of calorimeter, i.e. simulate all tracks in tracking region before generating showers. Suspend a “looper” track after certain time and postpone it to next event. Prioritized tracking without performance cost Well-thought prioritization/abortion of tracks/events makes entire simulation process much more efficient.
18
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe18 Unit system Internal unit system used in Geant4 is completely hidden not only from user’s code but also from Geant4 source code implementation. Each hard-coded number must be multiplied by its proper unit. radius = 10.0 * cm; kineticE = 1.0 * GeV; To get a number, it must be divided by a proper unit. G4cout << eDep / MeV << “ [MeV]” << G4endl; Or G4cout << G4BestUnit(eDep, “Energy”) << G4endl; Most of commonly used units are provided and user can add his/her own units. By this explicit unit system, source code becomes more readable and importing / exporting physical quantities becomes straightforward
19
Geometry
20
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe20Volume Three conceptual layers G4VSolid -- shape, size G4LogicalVolume -- daughter physical volumes, material, sensitivity, user limits, etc. material, sensitivity, user limits, etc. G4VPhysicalVolume -- position, rotation Hierarchical three layers of geometry description allows maximum reuse of information to minimize the use of memory space. G4Box G4Tubs G4VSolid G4VPhysicalVolume G4Material G4VSensitiveDetector G4PVPlacement G4PVParameterised G4VisAttributes G4LogicalVolume
21
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe21 Solid 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, …
22
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe22 Physical 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 Currently: parameterization can be used only for volumes that either a) have no further daughters, or b) are identical in size & shape. G4PVReplica 1 Replica = Many Volumes Slicing a volume into smaller pieces (if it has a symmetry) G4ReflectionFactory 1 Placement = a set of Volumes generating 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
23
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe23 Smart voxelization User’s 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
24
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe24 Field integration In order to propagate a particle inside a field (e.g. magnetic, electric or both), we solve the equation of motion of the particle in the field. We use a Runge-Kutta method for the integration of the ordinary differential equations of motion Several Runge-Kutta ‘steppers’ are available In specific cases other solvers can also be used Using the method to calculate the track's motion in a field, Geant4 breaks up this curved path into linear chord segments We determine the chord segments so that they closely approximate the curved path ‘Tracking’ Step Chords Real Trajectory
25
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe25 Tracking in field We use the chords to interrogate the Navigator, to see whether the track has crossed a volume boundary. User can set the accuracy of the volume intersection, By setting a parameter called the “miss distance” It is a measure of the error in whether the approximate track intersects a volume. One physics/tracking step can create several chords. In some cases, one step consists of several helix turns. "miss distance" ‘Tracking’ Step Chords Real Trajectory
26
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe26 Geometry checking tools Geant4 assumes the geometry is well defined overlapping volumes generates inconsistencies The problem of detecting overlaps in a generic geometry setup is complex. Utilities are provided for detecting wrong positioning Graphical tools Kernel run-time commands External OLAP application (CMS)
27
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe27 Material construction There are three ways to construct materials in Geant4 From it’s isotopic composition From it’s elements As an effective material (Aeff, Zeff)
28
Physics
29
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe29 Physics 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.
30
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe30 What is tracked in G EANT4 ? G4Track G4ParticleDefinition G4DynamicParticle G4ProcessManager Propagated by the tracking, Snapshot of the particle state and location. Momentum, pre-assigned decay… The « particle type »: G4Electron, G4PionPlus… « Hangs » the physics sensitivity; The physics processes; Process_2 Process_1 Process_3 The classes involved in the building the « physics list » are: The G4ParticleDefinition concrete classes; The G4ProcessManager; The processes;
31
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe31 –PostStep actions: Compton, pair production, most hadronic interactions, … But also ionisation, bremstrahlung, … The process tracking interface. There are three situations, where may want to ask information from : –AlongStep : To describe ‘continuous’ interactions, occuring along the path of the particle, like ionisation, cherenkov, bremsstrahlung,… –AtRest : Decay, e + annihilation … AlongStep PostStep
32
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe32 A process will implement any combination of the three AtRest, AlongStep and PostStep actions: Eg: decay = AtRest + PostStep Each action defines two methods: –GetPhysicalInteractionLength(): Used to limit the step size: –because the process « triggers » an interaction, a decay, geometry boundary, a user’s limit … –DoIt(): Implements the actual action to be applied on the track; Typically final state generation. The process tracking interface.
33
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe33 G4VProcess & G4ProcessManager Really, the G4ProcessManager has three vectors of actions: One for the AtRest methods of the particle; One for the AlongStep ones; And one for the PostStep actions. It is those vectors the user sets up in the physics list and which are used by the tracking.
34
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe34 A word of caution on processes ordering Ordering of following processes is critical: Assuming n processes, the ordering of the AlongGetPhysicalInteractionLength of the last processes should be: [n-2] … [n-2] … [n-1] multiple scattering [n-1] multiple scattering [n] transportation [n] transportation Why ? Processes return a « true path length »; The multiple scattering « virtually folds up » this true path length into a shorter « geometrical » path length; Based on this new length, the transportation can geometrically limits the step. For other processes ordering does not matter.
35
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe35 Processes in Geant4 In Geant4, two kinds of methods of each process play important roles in tracking. GetPhysicalInteractionLength (called as GPIL) GPIL method gives the step length from the current space-time position to the next space-time point where the DoIt method should be invoked. GPIL methods of all registered processes for a particle are invoked for every step. DoIt The DoIt method describes what happens in the interaction. It gives change of energy and momentum direction, change of position, and secondary tracks by using G4VParticleChange. “Along step” DoIt methods of all registered processes are applied cumulatively, while DoIt of other types are selectively applied.
36
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe36 How Geant4 runs (one step) Stepping Manager Physics Process Particle Change StepTrackLogical Volume Sensitive Detector GetPhysicalInteractionLength SelectShortest DoIt Fill Update IsSensitive GenerateHits
37
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe37 Built-in physics processes Physics processes describe how particles interact with material or volume itself. There are 7 major process categories in Geant4 Electromagnetic Hadronic Photolepton_hadron Decay Optical Transportation Parameterization
38
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe38 Built-in physics processes It is the user’s responsibility to choose physics processes, models and/or cross-section tables. Geant4 kernel provides no default. Even for the transportation, the user has to assign it to all particles. Geant4 provides lots of utility methods and reusable examples. We provide physics lists for many application areas for hadronics There are some alternative processes in our distribution. Thanks to polymorphism, it is quite easy to replace one process/model/cross- section to another. The user can easily plug-in his/her own particular process/model/cross-section without touching to any other part.
39
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe39 Electromagnetic processes We have two sets of electromagnetic processes for photons, electrons/positrons, muons, hadrons, and some ions Standard EM package ignores the binding energy of electron to an atom, while Low Energy EM package takes into account.
40
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe40 Hadronic 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 model has its own energy range of applicability. associated with it. Each model 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.
41
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe41 Hadronic vs. electromagnetic processes In EM physics (mostly): 1 process = 1 model and 1 cross-section. In hadronic physics (mostly): 1 process = an assembly and selection of many cross-sections data-sets, models, production codes, model components, sub-assemblies, options. Default cross-section are provided for each process. You decide in the physics list, what exactly you use. Mix, match, assemble.
42
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe42 A sketch of model management
43
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe43 What cross-sections and models are available? Default covers all possible situations for hadron interactions. Carried forward from geant3.21. Different kinds of cross-section data sets Some are parametrizations, Some are theory, Some read and use large databases.
44
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe44 Cross section implementations Low energy neutrons Data both for cross-sections and final state generation. G4NDL, based on a number of Evaluated Nuclear Data Libraries Data in a ENDF/B-VI derived data format. Uses the Unix file-system Data come from various revisions of ENDF/B, JENDL, FENDL, CENDL, Brond, Jef, MENDL, MENDL-P, EFF, etc.. Recently we started to add geant4 native evaluations.
45
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe45 Cross section implementations Proton and neutron reaction cross-sections (Wellisch-Axen systematics) 0-20GeV for protons 14MeV-20GeV for neutrons Alternative pion cross-sections 0-1TeV Data for isotope production From MENDL-2 AND MENDL-2P, and Wellisch-Axen systematics (name was coined by Los Alamos).
46
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe46 Cross section implementations Ion reaction cross-sections Tripathi’s cross-section formula for E/A 2. Wellisch-Axen systematics for E/A 4 for scattering off Hydrogen.
47
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe47 Cross section implementations Photo and electro-nuclear cross-sections For all energies Gammas GDR, quasi-deuteron, Delta, Roper, reggeon-pomeron contributions parametrizised Based on 14 nuclei, tested on many more… Electrons/Positrons Use method of equivalent photons, and fold the photo-nuclear cross- section Added hard scattering
48
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe48 Final state generators Three categories of modeling approaches Parametrization driven modeling Data driven modeling Theory driven modeling
49
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe49 Parameterisation driven models Two domains: high energy inelastic (Aachen, CERN) low energy inelastic, elastic, fission, capture (TRIUMF, UBC, CERN) 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)
50
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe50 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..
51
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe51 Theory driven models Ultra-high energy models Parton transport model (U.Frankfurt, in discussion) High energy models ‘Fritjof’ type string model (CERN) Quark gluon String (CERN) Pythia(7) interface (Lund, CERN) Intra-nuclear transport models (or replacements) Hadronic cascade+pre-equilibrium (HIP, CERN) Binary and Bertini cascades (HIP, CERN, Novosibirsk, SLAC) QMD type models (CERN, Inst.Th.Phys. Frankfurt) Chiral invariant phase-space decay (JLAB, CERN, ITEP) Partial Mars rewrite (Kyoto, Uvic, in collaboration with FNAL) De-excitation Evaporation, fission, multi-fragmentation, fermi-break-up (CMS)
52
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe52 A not totally correct hadronic model summary 1 MeV 10 MeV 100 MeV 1 GeV 10 GeV 100 GeV 1 TeV 10 TeV 100 TeV CHIPS I Absorption at rest K, p-bar, n-bar CHIPS (gamma) QGS string FTF string HEP LEP mars Binary cascade Bertini cascade Rad. Dec. conversion Phot, ev. multifrag Fermi Precompound Fission Evap Neutron_hp (I fore sure left off something, like G4LElastic) LEpp, np
53
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe53 In hadronic physics the problem was complexity It takes 5 levels of implementation framework in geant4 to implement hadronics. These, and the models implementing them, are used to assemble the hadronic physics for the simulation engine. The number of options is quite large. Each comes with trade-offs in descriptive power and performance. There are 25 particle species to be tracked, that need complete and consistent physics.
54
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe54 The recommended procedure Start by trying the provided physics lists. It makes it such that results by different groups can be compared. You will profit from validation and verification done by others. It makes your (and my) life much easier.
55
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe55 The approach to physics lists
56
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe56 Use case packages of Physics Lists 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 Air shower applications (still working on this) low background experiments http://cmsdoc.cern.ch/~hpw/GHAD/HomePage http://cmsdoc.cern.ch/~hpw/GHAD/HomePage http://cmsdoc.cern.ch/~hpw/GHAD/HomePage
57
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe57 Decay 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 B0 K0L … B0 G4Track K0L … “predefined” decay channel
58
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe58 Optical processes Geant4 has a particle named “Optical Photon”, which is different from gamma. It interacts by optical processes. Optical photons are generated if one or more of following processes are activated. Cherenkov radiation Scintillation Optical processes Absorption Rayleigh scattering Boundary Processes (reflection, refraction) Optical properties, e.g. dielectric coefficient and surface smoothness, can be set to a volume.
59
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe59 Shower 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.
60
Graphical User Interfaces and Visualization
61
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe61 Intercoms “Intercoms” category handles the framework mechanism of defining and delivering commands. Exportable to any other application Independent to other Geant4 categories Powerful type and range checking Range description can be defined by C++ syntax aCmd->SetRange(“x>0. && y>0.”); Dynamic command definition / activation Commands can be hard-coded or issued by (G)UI. Macro file Recursive variable definition Loop with counter variable
62
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe62 (Graphical) User Interfaces Geant4 kernel is independent of any specific GUI technology. Geant4 provides several alternative (G)UIs or interfaces to external GUI packages. The user can choose one or more of them according to his computer environment / need. Character terminal (csh and tcsh(bash)-like terminal) Xm, Xaw, Win32, variations of the upper terminals by using a Motif, Athena or Windows widget to retrieve commands GAG, a fully Graphical User Interface and its extension GainServer of the client/server type OPACS, an OPACS/Wo widget manager implementation in conjunction with the OPACS visualization system. JAG, an interface to JAS (Java Analysis Studio) User can connect his/her own GUI to Geant4
63
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe63 Visualization Geant4 kernel is independent to any specific visualization technology. Geant4 provides several alternative visualization drivers or interfaces to external visualization drivers. The user can choose one or more of them according to computer environment / need. OpenGL viewers FukuiRenderer (DAWN) VRML builder WIRED Wo, Xo (OPACS) OpenInventorX (OIX) RayTracer User can connect his/her own visualization driver to Geant4 Some example figures are given with introduction of users applications in this presentation
64
User documents and examples
65
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe65 Documents for users One introductory guide and five user manuals http://cern.ch/geant4/G4UsersDocuments/ 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 available via Geant4 Web page. "Geant4 general paper" - NIM A 506.
66
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe66 Examples Along the code releases, Geant4 provides examples helping users to understand functionalities of Geant4 Examples serve 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
67
User Support
68
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe68 User Support Geant4 Collaboration offers extensive user supports. Users workshops Tutorial courses HyperNews and mailing list Problem reporting system Requirements tracking system Daily “private” communications New: Technical Forum First one at TRIUMF, 5.September 2003 Next one at CERN, 7.October 2003
69
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe69 Geant4 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 - Jan.2003, Jan.2004 (planned) dedicated to space-related users Helsinki - Oct.2003 Local workshops of one or two days were held or are planned at several places.
70
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe70 Geant4 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 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 DESY (Sept.30 - Oct.02, 2003) IEEE NSS/MIC @ Portland, Oregon (Oct.19, 2003) FNAL (Oct.27 - Oct.29, 2003)
71
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe71 HyperNews HyperNews system was set up in April 2001
72
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe72 HyperNews 19 categories Not only “user-developer”, but also “user-user” information exchanges are quite intensive.
73
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe73 HyperNews is quite active
74
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe74 Some postings are novice…
75
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe75 Some are excellent users contribution
76
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe76 Technical 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. First Technical Forum meeting at TRIUMF during this collaboration meeting, followed by one at CERN in October.
77
Highlights of new developments
78
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe78 Event 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. It’s much better and convenient for the user if Geant4 itself provides most commonly used event biasing techniques.
79
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe79 Event biasing techniques Primary event biasing Biasing primary events and/or primary particles in terms of type of event, momentum distribution, etc. Leading particle biasing Taking only the most energetic (or most important) secondary Physics based biasing Biasing secondary production in terms of particle type, momentum distribution, cross-section, etc. Geometry based biasing Importance weighting for volume/region Duplication or sudden death of tracks Forced interaction Force a particular interaction, e.g. within a volume Weight on Track / Event Weight on Track / Event
80
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe80 Biasing currently in Geant4 Partial MARS migration n, p, pi, K (< 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
81
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe81 Leading particle biasing Simulating a full shower is an expensive calculation. Instead of generating a full shower, trace only the most energetic secondary. Other secondary particles are immediately killed before being stacked. Convenient way to roughly estimate, e.g. the thickness of a shield. Of course, physical quantities such as energy are not conserved for each event.
82
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe82 Geometrical 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 I = 1.0I = 2.0 W=1.0 W=0.5 P = 0.5
83
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe83 Plans of event biasing in Geant4 Full interface to MARS For fully biased mode Cross-section biasing for physics processes General geometrical weight field In continuous process for geometrical, angular, energy biasing and weight window. Another biasing options are under study. Other scoring options rather than surface flux counting which is currently supported are under study. User’s contribution is welcome.
84
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe84 Region 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. Region B Region B Default Region Region B Region A C C
85
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe85 Cuts 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. Appropriate length scales can vary greatly between different areas of a large detector E.g. a vertex detector (5 m) 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 support since Geant4 5.1 (end April, 2003) Comparable run-time performance compared to global cuts.
86
Highlights of Users Applications
87
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe87 Geant4 in HEP ATLAS (CERN-LHC) 22 x 22 x 44 m 3 15,000 ton 15,000 ton 4 million channels 40 MHz readout
88
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe88
89
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe89 ATLAS HEC G4 5.0 (true geometry, my toy analysis) Ratio of observed energy for electron/pion beam
90
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe90 View of CMS muon system Sliced view of CMS barrel detectors View of 180 Higgs event simulated in CMS Tracker detector CMS
91
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe91 ECAL + HCAL testbeam GEANT3 - GEANT4 comparison 100 GeV pi+ ECAL+HCAL CMS
92
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe92 A Typical event in the Testbeam Red lines: Charged particle Green lines : Optical Photons. LHCb
93
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe93 Geant4 for beam transportation
94
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe94
95
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe95
96
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe96 X-Ray Surveys of Asteroids and Moons Induced X-ray line emission: indicator of target composition (~100 m surface layer) Cosmic rays, jovian electrons Geant3.21 G4 “standard” Geant4 low-E Solar X-rays, e, p Courtesy SOHO EIT C, N, O line emissions included ESA Space Environment & Effects Analysis Section Geant4 in space science
97
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe97 ESA 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
98
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe98
99
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe99 Water-styrophoam/bone-water Stringest test on dose calculation algorithms Accuracy of results are highly dependent on electron transport schemes (for Monte Carlo) and approximations (for TPS) GEANT4/GEANT3 comparison with HELAX-TMS and PLATO Water Styrophoam 0.0275 gcm -3 Heterogeneous Phantom 10x10 cm 2 Field 5x5 cm 2 Field
100
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe100
101
Introduction to Geant4 - G.Folger/M.Maire, 30.September 2003, GridKa Karlsruhe101 Summary Geant4 is a worldwide collaboration providing a tool for simulation of particles interacting with matter. Geant4’s object-oriented modular structure allows a large degree of functionality and flexibility. Geant4 can handle complicated and realistic geometries. Geant4 provides sets of alternative physics models so that users can choose appropriate models. Geant4 is being used not only in high energy and nuclear physics but also in accelerator physics, astrophysics, space science and medical and other applications. Geant4 Collaboration try to offer extensive user support. http://cern.ch/geant4/
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.