Geant4 Cross Reference |
1 ===================================== << 1 ========================================================= 2 Geant4 - an Object-Oriented Toolkit f << 2 Geant4 - an Object-Oriented Toolkit for Simulation in HEP 3 ===================================== << 3 ========================================================= 4 << 4 5 WLS << 5 WLS 6 ---------- << 6 ---------- 7 << 7 8 This application simulates the propagation o << 8 This application simulates the propagation of photons inside a Wave Length 9 Wave Length Shifting (WLS) fiber. << 9 Shifting (WLS) fiber. 10 << 10 11 << 11 12 1- Geometry Definition << 12 1- Geometry Definition 13 << 13 14 The default geometry is as follow: << 14 The default geometry is as follow: 15 << 15 16 - A perfect, bare (or clad), PMMA fiber: 0.5mm << 16 - A perfect, bare, PMMA fiber: 0.5mm radius, 2m length at center(0,0,0) 17 center (0,0,0) of the World. << 17 of the World. 18 - A circular MPPC with 0.5mm radius at the +z << 18 - A circular MPPC with 0.5mm radius at the +z end of the fiber 19 - World and coupling materials are G4_AIR << 19 - World and coupling materials are G4_AIR 20 - Photons will always refracted out to couplin << 20 - Photons will always refracted out to coupling material before 21 reaching MPPC << 21 reaching MPPC 22 - There are many flexible parameters that the << 22 - There are many flexible parameters that the user could specify. 23 They are under the /WLS directory of help. << 23 They are under the /WLS directory of help. 24 << 24 25 << 25 26 2- Material Choices << 26 2- Material Choices 27 << 27 28 There are several materials that the user ca << 28 There are several materials that the user can use for the fiber core, 29 world and coupling. << 29 world and coupling. 30 << 30 31 They are: << 31 They are: 32 << 32 33 - Vacuum (G4_Galactic) << 33 - Vacuum (G4_Galactic) 34 - Air (G4_AIR) << 34 - Air (G4_AIR) 35 - PMMA, refractive index n = 1.60 << 35 - PMMA, n = 1.60 36 - Pethylene, n = 1.49 << 36 - Pethylene, n = 1.49 37 - FPethylene, n = 1.42 << 37 - FPethylene, n = 1.42 38 - Polystyrene, n = 1.60 << 38 - Polystyrene, n = 1.60 39 - Silicone, n = 1.46 << 39 - Silicone, n = 1.46 40 << 40 41 << 41 42 3- Photon Source << 42 3- Photon Source 43 << 43 44 This program uses the General Particle Sourc << 44 This program uses the General Particle Source provided by GEANT4 for 45 provided by Geant4 for generating particles. << 45 generating photons. The energy of the photon must be within 2.00 eV 46 optical photon must be within the range 2.00 << 46 to 3.47 eV. For detail instruction on how to use the General Particle 47 << 47 Source, please visit their home page at: 48 << 48 49 4- Hit << 49 http://reat.space.qinetiq.com/gps/ 50 << 50 51 A hit is registered when an optical photon i << 51 52 surface. Information stored in a hit includ << 52 4- Hit 53 location the optical photon is absorbed on t << 53 54 where the optical photon left the fiber, the << 54 A hit is registered when the photon is absorbed on the MPPC surface. 55 photon, and the energy of the optical photon << 55 Information stored in hit includes the local coordinate of the location 56 << 56 the photon is absorbed on the MPPC, the global coordinate where the 57 << 57 photon left the fiber and the transit time of the photon. 58 5- Stepping Action << 58 59 << 59 60 The stepping action keeps track of the numbe << 60 5- Stepping Action 61 gone through. In order to prevent infinite << 61 62 rays taking up computing time, there is a li << 62 The stepping action keeps track of the number of bounces a photon has 63 bounces that an optical photon can go throug << 63 gone through. In order to prevent infinite loop and extremely skewed 64 The default limit is 100,000. The user can << 64 rays taking up computing time, there is a limit of the number of 65 the /stepping/setBounceLimit command. A val << 65 bounces that a photon can go through before it is artificially killed. 66 limit. All optical photons artificially kil << 66 The default limit is 100,000. The user can set his/her own limit using 67 on in their UserTrackInformation. << 67 the /stepping/setBounceLimit command. A value of 0 will turn off the 68 << 68 limit. All photons artificially killed will have murderee flag turned 69 << 69 on in their UserTrackInformation. 70 6- Visualization << 70 71 << 71 72 To visualize particle trajectories, simply u << 72 6- Visualization 73 interactive mode or in your own macro. << 73 74 << 74 To visualize a photon's trajectory, simply use vis.mac macro in 75 << 75 interactive mode or in your own macro. 76 7- main() << 76 77 << 77 78 - execute wls in 'batch' mode from macro file << 78 7- main() 79 - you can enter an optional integer seed for << 79 80 % wls electron.mac (optional: enter a << 80 - compile and link to generate an executable 81 << 81 % cd wls 82 - wls in 'interactive mode' with visualizatio << 82 % make 83 % wls << 83 84 .... << 84 - execute wls in 'batch' mode from macro files 85 Idle> /control/execute << 85 - you can enter an optional integer seed for batch mode 86 Idle> /run/beamOn 1 << 86 % wls wls.in (optional: enter an integer seed here) 87 .... << 87 88 Idle> exit << 88 - wls in 'interactive mode' with visualization 89 << 89 % wls 90 8- Macros provided << 90 .... 91 << 91 Idle> /control/execute init.in 92 - electron.mac: Sets up the geometry and conf << 92 Idle> /control/execute vis.mac 93 Primary particle is a 10 MeV << 93 Idle> /run/beamOn 1 94 - vis.mac: macro for visualization; called au << 94 .... 95 given on command line. << 95 Idle> exit