Geant4 Cross Reference |
1 ------------------------------Advanced Example 1 ------------------------------Advanced Example--------------------------------- README FILE 2 2 >> 3 >> 4 NB: The documentation for this example is in the process of being updated. >> 5 Please go to http://www.ge.infn.it/geant4/examples/ for the most up-to-date >> 6 description, manual, design documentation and users requirement/traceability. >> 7 >> 8 JUNE 2002: >> 9 The underground physics example has been updated since the December Geant4.0 >> 10 release to include: 1) Analysis, using AIDA 2.2 and tested against Anaphe 4.0 >> 11 2) Full lab geometry - important for neutron scattering >> 12 3) Updated macros/messengers >> 13 4) Correction of a few minor features >> 14 >> 15 The messengers can be seen from typing help within the UI. >> 16 Additional file handling and time/energy cut messengers have been implemented. >> 17 >> 18 (1) and (2) are discussed more fully below >> 19 3 Note: Due to the importation of data files dur 20 Note: Due to the importation of data files during the initialisation stage of 4 Geant4, load-time may be in excess of 5 minute 21 Geant4, load-time may be in excess of 5 minutes. 5 22 6 UNDERGROUND PHYSICS 23 UNDERGROUND PHYSICS 7 24 8 An example of a underground dark matter experi 25 An example of a underground dark matter experiment. 9 26 10 Please see the UserRequirements.txt and relate 27 Please see the UserRequirements.txt and related web-pages referred to 11 at the end of that document. 28 at the end of that document. 12 29 13 Over-view: 30 Over-view: 14 A single liquid xenon cell is simulated within 31 A single liquid xenon cell is simulated within Geant4 and the scintillation 15 light produced from interactions from various 32 light produced from interactions from various calibration species is recorded 16 as PhotoMultiplier hits. The output is then w 33 as PhotoMultiplier hits. The output is then written to an ASCII file for 17 future off-line analysis. 34 future off-line analysis. 18 35 19 Geometry: 36 Geometry: 20 Experimental set-up: 37 Experimental set-up: 21 38 22 G4double worldWidth = 470.0*cm + 2.*wallThi 39 G4double worldWidth = 470.0*cm + 2.*wallThick; // "x" 23 G4double worldLength = 690.0*cm + 2.*wallThi 40 G4double worldLength = 690.0*cm + 2.*wallThick; // "y" 24 G4double worldHeight = 280.0*cm + 2.*wallThi 41 G4double worldHeight = 280.0*cm + 2.*wallThick; // "z" 25 42 26 43 27 44 28 A "cavern" of dimensions 5.18m x 7.38m x 3.28m 45 A "cavern" of dimensions 5.18m x 7.38m x 3.28m with concrete walls is defined 29 as the World Volume. A laboratory geometry is 46 as the World Volume. A laboratory geometry is incorporated included desks, 30 cupboards, door and windows. For ease this is 47 cupboards, door and windows. For ease this is included in a separate ".icc" 31 file which can be removed should the code seem 48 file which can be removed should the code seem cumbersome. In the centre of 32 the cavern a steel vacuum vessel containing li 49 the cavern a steel vacuum vessel containing liquid and gaseous xenon is placed. 33 The internal construction of the vessel accura 50 The internal construction of the vessel accurately reproduces an existing 34 prototype Dark Matter detector which allows ex 51 prototype Dark Matter detector which allows experimental comparison. The active 35 detector volume is defined by a series of meta 52 detector volume is defined by a series of metal rings, complemented by 36 a cover mirror and a PMT immersed in the liqui 53 a cover mirror and a PMT immersed in the liquid. Two grids and a 37 thermalising copper shield are also incorporat 54 thermalising copper shield are also incorporated. The liquid/gas 38 interface is located 6mm away from the mirror 55 interface is located 6mm away from the mirror surface. A Am241 39 calibration source is suspended from one of th 56 calibration source is suspended from one of the grids in the liquid 40 phase, above the PMT. 57 phase, above the PMT. 41 58 42 XXX================XXX mirror 59 XXX================XXX mirror 43 XXX________________XXX gas phase 60 XXX________________XXX gas phase 44 XXX XXX 61 XXX XXX 45 XXX XXX liquid phase 62 XXX XXX liquid phase 46 XXX XXX 63 XXX XXX 47 XXX.......U........XXX grid + calibrator 64 XXX.......U........XXX grid + calibrator 48 XXX................XXX grid 65 XXX................XXX grid 49 XXX| |XXX 66 XXX| |XXX 50 | ___------___ | 67 | ___------___ | 51 || PMT || 68 || PMT || 52 || || 69 || || 53 70 54 71 55 Hits Output (file "hits.out"): 72 Hits Output (file "hits.out"): 56 An ASCII file containing the following informa 73 An ASCII file containing the following information: 57 Evt # : event number 74 Evt # : event number 58 Etot, MeV : energy deposited in liqui 75 Etot, MeV : energy deposited in liquid xenon 59 LXe hits : number of hits in liquid 76 LXe hits : number of hits in liquid xenon 60 LXeTime, ns : time of first hit in liqu 77 LXeTime, ns : time of first hit in liquid xenon 61 PMT hits : number of hits in PMT (ph 78 PMT hits : number of hits in PMT (photocathode) 62 PmtTime, ns : average PMT hit time rela 79 PmtTime, ns : average PMT hit time relative to LXeTime 63 First hit : first particle to hit liq 80 First hit : first particle to hit liquid xenon 64 Flags : particles contributing to 81 Flags : particles contributing to energy deposition 65 Seeds : the initial seed values for g 82 Seeds : the initial seed values for given hit events 66 83 67 Note: 84 Note: 68 85 69 The time information PmtTime is erroneous 86 The time information PmtTime is erroneous when forcing nuclear 70 decay with the RadioactiveDecay module du 87 decay with the RadioactiveDecay module due to the precision 71 required to detect nanosecond scintillati 88 required to detect nanosecond scintillation times on a global 72 time of 432 years (in the case of 241Am d 89 time of 432 years (in the case of 241Am decay). 73 90 74 91 75 Pmt Output (file "pmt.out"): 92 Pmt Output (file "pmt.out"): 76 Photon hit positions within the PMT face (over 93 Photon hit positions within the PMT face (overwritten every event): 77 "Hit# X, mm Y, mm Z, mm" 94 "Hit# X, mm Y, mm Z, mm" 78 95 79 96 80 To Run: 97 To Run: 81 Either run the macro files interactively or in 98 Either run the macro files interactively or in batch with the command 82 DMX macro_name.mac. 99 DMX macro_name.mac. 83 100 84 101 85 Macros: 102 Macros: 86 103 87 initInter.mac 104 initInter.mac 88 Initialisation macro for interactive mode. 105 Initialisation macro for interactive mode. 89 106 90 gamma.mac 107 gamma.mac 91 Shoots one 60 keV gamma upwards from the ca 108 Shoots one 60 keV gamma upwards from the calibrator and traces the 92 scintillation light produced in LXe to the 109 scintillation light produced in LXe to the PMT. All tracks are drawn 93 with custom colours. PMT hits in photocatho 110 with custom colours. PMT hits in photocathode are also shown. Event 94 summary is writen to file "hits.out". 111 summary is writen to file "hits.out". 95 112 96 gamma_1000.mac 113 gamma_1000.mac 97 Similar to above, but 1000 gammas are emmit 114 Similar to above, but 1000 gammas are emmited isotropically from the 98 source. No hits or tracks are draw, and the 115 source. No hits or tracks are draw, and the verbosity is reduced. 99 116 100 alpha.mac 117 alpha.mac 101 Shoots one 5.486 MeV alpha particle upwards 118 Shoots one 5.486 MeV alpha particle upwards from the calibrator and 102 traces the scintillation light to the PMT. 119 traces the scintillation light to the PMT. All tracks except 103 optical photons are drawn. Event summary is 120 optical photons are drawn. Event summary is written to file 104 "hits.out" and PMT hits to file "pmt.out". 121 "hits.out" and PMT hits to file "pmt.out". 105 122 106 alpha_1000.mac 123 alpha_1000.mac 107 Similar to above, but 1000 alphas are emmit 124 Similar to above, but 1000 alphas are emmited isotropically from the 108 source. No tracks are stored, and the verbo 125 source. No tracks are stored, and the verbosity is reduced. Event 109 summary is written to file "hits.out", PMT 126 summary is written to file "hits.out", PMT hits are not written out. 110 127 111 neutron.mac 128 neutron.mac 112 Shoots one 2.48 MeV neutron inside the room 129 Shoots one 2.48 MeV neutron inside the room aimed at the detector. 113 All tracks except scintillation photons are 130 All tracks except scintillation photons are drawn (custom colours). 114 Gammas are not killed at the concrete wall. 131 Gammas are not killed at the concrete wall. Event summery is written 115 to file "hits.out". 132 to file "hits.out". 116 133 117 ambe_spectrum.mac 134 ambe_spectrum.mac 118 Produces a spectrum of neutrons according t 135 Produces a spectrum of neutrons according to an approximation of a Am/Be 119 neutron source. However, this uses the GPS 136 neutron source. However, this uses the GPS and therefore will only work 120 after compilation with the DMXENV_GPS_USE e 137 after compilation with the DMXENV_GPS_USE environment variable (see below) 121 138 122 139 123 sourceAm241.mac 140 sourceAm241.mac 124 Forces the decay of 241Am nuclei in the cal 141 Forces the decay of 241Am nuclei in the calibrator and tracks the 125 resulting particles (237Np + alpha + gamma 142 resulting particles (237Np + alpha + gamma from 237Np 126 de-excitation). All tracks are drawn except 143 de-excitation). All tracks are drawn except scintillation photons. 127 Event summery is written to file "hits.out" 144 Event summery is written to file "hits.out". 128 -> To be added for a future release 145 -> To be added for a future release 129 146 130 147 131 sourceAm241_1000.mac 148 sourceAm241_1000.mac 132 Similar to above but for 1000 events. No tr 149 Similar to above but for 1000 events. No tracks are stored. 133 -> To be added for a future release 150 -> To be added for a future release 134 151 135 152 136 Note: 153 Note: 137 The following environment variables need to be 154 The following environment variables need to be set: 138 G4RADIOACTIVEDATA : points to Radioactive 155 G4RADIOACTIVEDATA : points to Radioactive Decay Data files 139 G4LEDATA : points to low energy 156 G4LEDATA : points to low energy data base 140 G4LEVELGAMMADATA : points to PhotoEvapor 157 G4LEVELGAMMADATA : points to PhotoEvaporation data 141 NeutronHPCrossSections : points to neutron dat 158 NeutronHPCrossSections : points to neutron data files 142 159 143 In addition if you require to use the full Gen 160 In addition if you require to use the full General Particle Source then the 144 variable DMXENV_GPS_USE can be set. The DMX g 161 variable DMXENV_GPS_USE can be set. The DMX gun is still included in order to 145 allow forward compatibility should the GPS cha 162 allow forward compatibility should the GPS change. 146 163 147 164 148 ANALYSIS: 165 ANALYSIS: 149 166 150 The program should produce ROOT-based histogra << 167 In order to use the AIDA 3.2.1 compliant analysis set the environment variable 151 produce the output in XML-compliant format by << 168 G4ANALYSIS_USE before building. If a previous build exists a gmake clean has >> 169 to be executed. >> 170 >> 171 setenv G4ANALYSIS_USE 1 >> 172 >> 173 then gmake >> 174 >> 175 The program should then produce hbook histogram files >> 176 >> 177 Using AIDA 3.2.1 interfaces three different analysis packages can be utilised: >> 178 Java Analysis Studio (JAS) >> 179 OpenScientist >> 180 PI >> 181 >> 182 Please for more information look at http://aida.freehep.org 152 183 153 SEEDS: 184 SEEDS: 154 185 155 The seeds of event hits are stored in the hit 186 The seeds of event hits are stored in the hit record file. These can be used 156 to repeat events for visualisation, test crash 187 to repeat events for visualisation, test crashes/idiosyncracies: 157 188 158 /random/setDirectoryName ./seeds 189 /random/setDirectoryName ./seeds 159 /random/resetEngineFrom currentEvent.rndm 190 /random/resetEngineFrom currentEvent.rndm 160 /random/saveThisEvent 191 /random/saveThisEvent 161 /random/setSavingFlag 192 /random/setSavingFlag 162 193 163 The file currentEvent.rndm should contain the 194 The file currentEvent.rndm should contain the two seeds which were outputed in 164 the scintHit file. 195 the scintHit file. 165 196 166 ERRORS: 197 ERRORS: 167 198 168 When running interactively the following error 199 When running interactively the following error will be shown: 169 200 170 BooleanProcessor::caseIE : unimplemented case 201 BooleanProcessor::caseIE : unimplemented case 171 BooleanProcessor::caseIE : unimplemented case 202 BooleanProcessor::caseIE : unimplemented case 172 BooleanProcessor::caseIE : unimplemented case 203 BooleanProcessor::caseIE : unimplemented case 173 BooleanProcessor::caseIE : unimplemented case 204 BooleanProcessor::caseIE : unimplemented case 174 BooleanProcessor::caseIE : unimplemented case 205 BooleanProcessor::caseIE : unimplemented case 175 BooleanProcessor::caseIE : unimplemented case 206 BooleanProcessor::caseIE : unimplemented case 176 BooleanProcessor: boolean operation failed 207 BooleanProcessor: boolean operation failed 177 BooleanProcessor::caseIE : unimplemented case 208 BooleanProcessor::caseIE : unimplemented case 178 BooleanProcessor::caseIE : unimplemented case 209 BooleanProcessor::caseIE : unimplemented case 179 BooleanProcessor::caseIE : unimplemented case 210 BooleanProcessor::caseIE : unimplemented case 180 BooleanProcessor::caseIE : unimplemented case 211 BooleanProcessor::caseIE : unimplemented case 181 BooleanProcessor: boolean operation failed 212 BooleanProcessor: boolean operation failed 182 213 183 This is a "feature" of the visualisation of bo 214 This is a "feature" of the visualisation of boolean volumes, but does not 184 affect functionality/performance so can be ign 215 affect functionality/performance so can be ignored. 185 216 186 NB: 217 NB: 187 If using explicit libraries (?) i.e. non-share 218 If using explicit libraries (?) i.e. non-shared then compilation time with 188 neutrons in physics list is very long (>5 minu 219 neutrons in physics list is very long (>5 minutes) - check this............. 189 It is more efficient to use shared libraries t 220 It is more efficient to use shared libraries that are loaded at run-time with 190 increased initialisation time (at run-time). 221 increased initialisation time (at run-time). 191 222 192 Also if using shared libraries the load time a 223 Also if using shared libraries the load time at run-time may be several minutes 193 - this is partially due to the neutron impleme 224 - this is partially due to the neutron implementation requires full data sets 194 for each isotope being specified. 225 for each isotope being specified. 195 226 196 227 197 -------------------------------------- 228 -------------------------------------- 198 229 199 If running on Redhat 7.0 or above set G4SYSTEM 230 If running on Redhat 7.0 or above set G4SYSTEM to Linux-g++, alternatively you 200 can install backward compatibility to egcs, ho 231 can install backward compatibility to egcs, however, requires 201 config/sys/Linux-egcs.gmk to be altered so tha 232 config/sys/Linux-egcs.gmk to be altered so that CXX is set to kgcc 202 (compared to g++ in original file) 233 (compared to g++ in original file) 203 234 204 -------------------------------------- 235 -------------------------------------- 205 236 206 237 207 Alex Howard, 29/11/01 238 Alex Howard, 29/11/01 208 updated 18/06/02 239 updated 18/06/02 209 240