Introduction to GEANT4
From UCL HEP PBT Wiki
m |
m |
||
Line 12: | Line 12: | ||
; Mandatory classes: | ; Mandatory classes: | ||
- | * <span style="color:#ff0000"> G4VUserDetectorConstruction </span>: Describe the experimental setup, geometry and materials | + | * <span style="color:#ff0000"> G4VUserDetectorConstruction </span>: Describe the experimental setup, geometry and materials; |
- | * <span style="color:#ff0000"> G4VUserPhysicsList </span>: Define particles, physics processes and range cuts | + | * <span style="color:#ff0000"> G4VUserPhysicsList </span>: Define particles, physics processes and range cuts; |
- | * <span style="color:#ff0000"> G4VUserPrimaryGeneratorAction </span>: Describe particle source, source dimensions, initial position, energy spectrum, angular distributions | + | * <span style="color:#ff0000"> G4VUserPrimaryGeneratorAction </span>: Describe particle source, source; dimensions, initial position, energy spectrum, angular distributions; |
; Optional classes: | ; Optional classes: | ||
- | * <span style="color:#ff0000"> G4UserRunAction </span>: Define and store histograms | + | * <span style="color:#ff0000"> G4UserRunAction </span>: Define and store histograms; |
- | * <span style="color:#ff0000"> G4UserEventAction </span>: Event selection and analysis of simulation data | + | * <span style="color:#ff0000"> G4UserEventAction </span>: Event selection and analysis of simulation data; |
- | * <span style="color:#ff0000"> G4UserStackingAction </span>: Customize priority of tracks | + | * <span style="color:#ff0000"> G4UserStackingAction </span>: Customize priority of tracks; |
- | * <span style="color:#ff0000"> G4UserTrackingAction </span>: Decide whether a trajectory should be stored or not | + | * <span style="color:#ff0000"> G4UserTrackingAction </span>: Decide whether a trajectory should be stored or not; |
- | * <span style="color:#ff0000"> G4UserSteppingAction </span>: Kill, suspend, postpone a track | + | * <span style="color:#ff0000"> G4UserSteppingAction </span>: Kill, suspend, postpone a track; |
; Manager class | ; Manager class | ||
- | * <span style="color:#ff0000"> G4RunManager </span>: Manages the simulation process | + | * <span style="color:#ff0000"> G4RunManager </span>: Manages the simulation process; |
== <span style="color:#000080"> The function main() </span> == | == <span style="color:#000080"> The function main() </span> == | ||
Line 123: | Line 123: | ||
If the particles in your simulation undergo a descrete number of physics processes you can use the class <span style="color:#ff0000"> G4VUserPhysicsList </span> to define them. This class has three methods: | If the particles in your simulation undergo a descrete number of physics processes you can use the class <span style="color:#ff0000"> G4VUserPhysicsList </span> to define them. This class has three methods: | ||
- | * ConstructParticles(): | + | * ConstructParticles() : Define all necessary particles; |
- | * ConstructProcesses(): | + | * ConstructProcesses() : Define all necessary processes and assign them to proper particles; |
- | * SetCuts(): | + | * SetCuts() : Define production thresholds in terms of range; |