Geant4 Cross Reference |
1 ---------------------------------------------- 1 ------------------------------------------------------------------- 2 2 3 ========================================= 3 ========================================================= 4 Geant4 - an Object-Oriented Toolkit for S 4 Geant4 - an Object-Oriented Toolkit for Simulation in HEP 5 ========================================= 5 ========================================================= 6 6 7 purgin_magnet 7 purgin_magnet 8 ------------- 8 ------------- 9 s. Larsson, May 2004 9 s. Larsson, May 2004 10 10 11 ---------------------------------------------- 11 ----------------------------------------------------------------- 12 Acknowledgments to the GEANT4 Collaboration, i 12 Acknowledgments to the GEANT4 Collaboration, in particular to J. Apostolakis, 13 J Generowicz, G. Folger, Vladimir Ivanchenko, 13 J Generowicz, G. Folger, Vladimir Ivanchenko, M.G.Pia and 14 S. Guatelli. 14 S. Guatelli. 15 ---------------------------------------------- 15 ----------------------------------------------------------------- 16 16 17 0. Introduction 17 0. Introduction 18 ---------------- 18 ---------------- 19 19 20 This example simulates electrons traveling thr 20 This example simulates electrons traveling through a 3D magnetic field. 21 21 22 The Purging Magnet example is an application o 22 The Purging Magnet example is an application of Geant4 in a medical 23 environment. It simulates a strong purging mag 23 environment. It simulates a strong purging magnet in a treatment head. 24 The geometry is very simplified. The major ide 24 The geometry is very simplified. The major idea of this example is to 25 implement an external magnetic field grid and 25 implement an external magnetic field grid and test if the deviation of 26 electrons are as expected in this particular f 26 electrons are as expected in this particular field. The data (position, 27 energy and momentum) are collected in a measur 27 energy and momentum) are collected in a measurement volume. The data is 28 stored in a CSV file (or, optionally in a ROOT 28 stored in a CSV file (or, optionally in a ROOT, or a XML file, by changing 29 the G4AnalysisManager default file type in Pur 29 the G4AnalysisManager default file type in PurgMagRunAction::Book(). 30 30 31 <<<<<<< HEAD 31 <<<<<<< HEAD 32 32 33 ======= 33 ======= 34 >>>>>>> Migration to G4RunManagerFactory done. 34 >>>>>>> Migration to G4RunManagerFactory done. 35 1. Setting up the environment variables 35 1. Setting up the environment variables 36 --------------------------------------- 36 --------------------------------------- 37 37 38 The following environment variables need to be 38 The following environment variables need to be set: 39 39 40 G4LEDATA: points to low energy data base 40 G4LEDATA: points to low energy data base 41 41 42 The required data-file for the detailed field 42 The required data-file for the detailed field map can be downloaded from: 43 http://cern.ch/geant4-data/datasets/PurgMag 43 http://cern.ch/geant4-data/datasets/PurgMag3D.TABLE.gz 44 44 45 45 46 2. How to run the example 46 2. How to run the example 47 ------------------------- 47 ------------------------- 48 48 49 - Run the "PurgMag" executable. 49 - Run the "PurgMag" executable. 50 - File PurgMag.TABLE needs to be available in 50 - File PurgMag.TABLE needs to be available in the current directory in order to run correctly. 51 - For visualisation use vis.mac. 51 - For visualisation use vis.mac. 52 - Interactive or batch modes possible. 52 - Interactive or batch modes possible. 53 Default: Interactive mode. 53 Default: Interactive mode. 54 54 55 To run a certain number of events in interacti 55 To run a certain number of events in interactive mode, 56 type the following at the "idle>" prompt: 56 type the following at the "idle>" prompt: 57 57 58 idle> run/beamOn NumberOfEvents 58 idle> run/beamOn NumberOfEvents 59 idle> exit 59 idle> exit 60 60 61 - Simulation histogram output is stored in pur 61 - Simulation histogram output is stored in purgmag_101.cvs (e-), 62 purgmag_102.cvs (gammas), purgman_103.cvs (e+ 62 purgmag_102.cvs (gammas), purgman_103.cvs (e+) 63 63 64 1)Ntuple with position, energy and momentum fo 64 1)Ntuple with position, energy and momentum for electrons 65 2)Ntuple with position, energy and momentum fo 65 2)Ntuple with position, energy and momentum for photons 66 (not needed in this example, will be used in 66 (not needed in this example, will be used in further development) 67 3)Ntuple with position, energy and momentum fo 67 3)Ntuple with position, energy and momentum for positrons 68 (not needed in this example, will be used in 68 (not needed in this example, will be used in further development) 69 69 70 A default visualisation macro (vis.mac) is pre 70 A default visualisation macro (vis.mac) is pre-loaded before interactive runs. 71 Executing it from the build directory: 71 Executing it from the build directory: 72 $ ./PurgMag 72 $ ./PurgMag 73 runs vis.mac before giving you an interactive 73 runs vis.mac before giving you an interactive prompt. 74 74 75 75 76 3. Detector description 76 3. Detector description 77 ----------------------- 77 ----------------------- 78 78 79 Simply a measurement volume. All particles ent 79 Simply a measurement volume. All particles entering the volume are scored. 80 80 81 81 82 4. Physics processes 82 4. Physics processes 83 -------------------- 83 -------------------- 84 84 85 This example uses the standard Electromagnetic 85 This example uses the standard Electromagnetic processes. 86 86 87 87 88 5. Particle Generator 88 5. Particle Generator 89 ---------------------- 89 ---------------------- 90 90 91 The PurgMagPrimaryGeneratorAction sets the ini 91 The PurgMagPrimaryGeneratorAction sets the initial state of tracks to 92 92 93 -electrons 50MeV 93 -electrons 50MeV 94 -Start position (0, 0, 15cm) 94 -Start position (0, 0, 15cm) 95 -Momentum direction (0, 0, -1) 95 -Momentum direction (0, 0, -1) 96 96 97 97 98 6. Geometry and materials 98 6. Geometry and materials 99 -------------------------- 99 -------------------------- 100 100 101 The world consists of Vacuum to minimize inter 101 The world consists of Vacuum to minimize interactions of the electrons 102 with the medium. The purging magnet is impleme 102 with the medium. The purging magnet is implemented as a 3D field grid 103 of field values and geometerically as a pole g 103 of field values and geometerically as a pole gap made of iron. The 104 measurement volume also contains vacuum. 104 measurement volume also contains vacuum. 105 105 106 The field is interpolated using a simple linea 106 The field is interpolated using a simple linear interpolation in two 107 dimensions (z and rho). 107 dimensions (z and rho). 108 108 109 7. Comparison 109 7. Comparison 110 -------------- 110 -------------- 111 111 112 The design of the magnetic field was made with 112 The design of the magnetic field was made with the OPERA 3D package 113 which is an electromagnetic finite element and 113 which is an electromagnetic finite element and finite difference 114 analysis software. The deviation in the y-dire 114 analysis software. The deviation in the y-direction (ey in Ntuple 1) 115 has also been calculated in the OPERA 3D modul 115 has also been calculated in the OPERA 3D module TOSCA for comparison. 116 116 117 TOSCA: deviation y-direction: 35.112 cm 117 TOSCA: deviation y-direction: 35.112 cm 118 GEANT4: deviation y-direction: 35.170 cm (upda 118 GEANT4: deviation y-direction: 35.170 cm (updated after PurgMag.pdf) 119 119 120 ********************************************** 120 **************************************************************** 121 * 121 * * 122 * More information about the setup and geometr 122 * More information about the setup and geometry in PurgMag.pdf * 123 * 123 * * 124 ********************************************** 124 ****************************************************************