Geant4 Hands-on Exercises
Workshop on Use of Monte Carlo Technique for Design and Analysis of Radiation Detectors
15-17 September, 2006, Coimbra, Portugal
Introductory Remarks
This
short tutorial supposed to be an introduction to the Geant4 toolkit Today only Linux More detailed tutorial materials are available in Geant4 web: http://cern.ch/geant4 Complete documentation is also available in the web
Geant4 Tutorial
Installation
Geant4
toolkit requires installation procedure The only mandatory external library CLHEP Today you will use Geant4 already installed in the server polaris.fis.uc.pt
Geant4 Tutorial
Geant4 Environment
Login Define
G4 environment: . /opt/g4tutorial/setup.sh pwd env | grep G4 You see in the screen the list of G4 environment variables Copy first example to your directory cp r /opt/g4tutorial/temp/TestEm3 .
Geant4 Tutorial
User Classes
cd TestEm3 less TestEm3.cc main()
Initialization classes Action classes
The toolkit does not provide main(). There are more 70 examples Detector Construction Physics List Invoked during an event loop
Primary Generator Action Run Action Event Action Stacking Action Tracking Action Stepping Action
You can define VisManager, (G)UI session, optional user action classes, and/or your persistency manager in your main().
Note : classes written in yellow are mandatory.
Geant4 Tutorial
Compile, link and run
cd TestEm3 It is an example of G4; to see its components: ls src To see the main(): less TestEm3.cc To run in batch mode: gmake TestEm3 TestEm3.in >& result.out less result.out
Geant4 Tutorial
Exercise 1: Proton stopping
Start interactive session: TestEm3 /control/execute tutor.mac /gun/particle proton /gun/energy 1 GeV /run/beamOn /gun/energy 200 MeV /run/beamOn /run/beamOn 10 Question: estimate energy below which protons stopped
Geant4 Tutorial
Exercise 2: Muon physics
/gun/particle mu+ /gun/energy 1 GeV /run/beamOn 10 /gun/energy 10 GeV /run/beamOn 10 /gun/energy 100 GeV /run/beamOn 10 /gun/energy 100 MeV /run/beamOn 10 Question: explain the last plot /tracking/verbose 1 can help
Geant4 Tutorial
Terminology (G4 jargons)
Run, event, track, step, step point Geometry volumes:
Solid, Logical, Physical Material, element, isotope Particle Definition static parameters Dynamic Particle dynamic parameters
Media:
Particle:
Track IJ trajectory, step IJ 2 trajectory points:
PreStepPoint, PreStepPoint, PostStepPoint At rest, along step, post step
Process = Physics
Cut -> production threshold! Sensitive detector, hit, hits collection
Geant4 Tutorial
Courtesy T. Ersmark, KTH Stockholm
Exercise 3: EM shower
TestEm3 was created for simulation of sampling calorimeters there are number of macro files for different configurations and there is a standard output of calorimeter response /gun/particle e/gun/energy 1 GeV /run/beamOn 1 /run/beamOn 10 /gun/particle gamma /run/beamOn 1 /run/beamOn 10 Question: estimate energy below which electron shower will not be developed
Geant4 Tutorial
Exercise 4: Production Thresholds
ls /testem/phys Unix command ls and also tab can be used to see available Geant4 UI commands /testem/phys/setCuts 0.1 mm /gun/particle e/gun/energy 0.5 GeV /run/beamOn 10 Physics tables have been recalculated /testem/phys/setCuts 1 cm /run/beamOn 10 Question: estimate cut in range for which no secondary particles will be produced
Geant4 Tutorial
What is tracked in Geant4?
G4Track Propagated by the tracking, Snapshot of the particle state. Momentum, pre-assigned decay G4DynamicParticle
The particle type : G4ParticleDefinition G4Electron, G4PionPlus G4ProcessManager Hangs the physics sensitivity;
PhysicsList class is used for instanciation of processes
Geant4 Tutorial
Process_1 Process_2 Process_3
The physics processes;
Exercise 5: UI interface
ls /material /material/g4/printMaterial Lead Material is defined via its elements and isotopes /material/nist/listMaterials About 300 predefined materials are available /particle/list Shows particles defined in current Physics Lists /process/list Shows particles defined in current Physics Lists Question: which processes are defined for pi+? Gamma? /testem/det/setField 1 tesla Try out different particles at different energies Try out to switch on magnetic using /testem/det subdirectory
Geant4 Tutorial
Exercise 6: EM processes
Exit ls TestEm3 /control/execute exo3q1.mac Only processes on gamma conversion, ionisation and pair production are active Only one thick absorber Al; Magnetic field is on. /run/beamOn 1 /run/beamOn 1 /tracking/verbose 1 /run/beamOn 1 /gun/particle e/gun/position 0 0 0 /run/beamOn 1 /run/beamOn 1 /gun/particle e+ /run/beamOn 1 /run/beamOn 1 Question: select energy, which will allow to see e+ annililation
Geant4 Tutorial
Exercise 7: Attenuation of photon beam in absorber
exit cd ../ cp -r /opt/g4tutorial/temp/TestEm14 . cd TestEm14 gmake TestEm14 TestEm14.in >& res.out less res.out Example demonstrate several ways of computing of gamma attenuation in media
Question: compute attenuation coefficient in Be, Fe, Pb, water for gamma energy 1 MeV
Geant4 Tutorial
Exercise 8: Different Visualization Commands
exit cd ../ cp /opt/g4tutorial/temp/TestEm9 . cd TestEm9 gmake TestEm9 TestEm9.in >& res.out less res.out Example demonstrate cuts per region facility for setup, which includes vertex detector and crystal calorimeter TestEm9 /control/execute vis.mac /run/beamOn Only charged tracks are shown ls /testem/event Question: find out a command to switch on neutral tracks ls /vis/viewer/set Question: find out a command to change viewpoint and display the setup
Geant4 Tutorial
Exercise 9: Hadronic Physics
exit cd ../ cp -r /opt/g4tutorial/temp/Hadr01 . cd Hadr01 gmake hadr01 hadr01.in >& res.out less res.out Example demonstrate hadronic beam interaction with a target hadr01 /control/execute vis.mac /testhadr/Physics QGSP /run/beamOn /run/beamOn 10 Question: compare electron and proton showers for different energies and targets Note: to change predefined Physics List you have to exit and start new session
Geant4 Tutorial