Geant4 Cross Reference |
1 ---------------------------------------------- 2 3 ========================================= 4 Geant4 - an Object-Oriented Toolkit for S 5 ========================================= 6 7 Example B1 8 ----------- 9 10 This example demonstrates a very simple appli 11 deposit is accounted in user actions and thei 12 and a dose in a selected volume is calculated 13 14 15 1- GEOMETRY DEFINITION 16 17 The geometry is constructed in the B1::Dete 18 The setup consists of a an envelope of box 19 volumes: a spherical cone and a trapezoid. 20 21 In this example we use some common materia 22 applications. The envelope is made of water 23 are made from tissue and bone materials. 24 The materials are created with the help of 25 which allows to build a material from the N 26 names. All available materials can be found 27 for Application Developers, Appendix 10: Ge 28 29 2- PHYSICS LIST 30 31 The particle's type and the physic processe 32 in this example are set in the QBBC physics 33 requires data files for electromagnetic and 34 See more on installation of the datasets in 35 Chapter 3.3: Note On Geant4 Datasets: 36 http://geant4.web.cern.ch/geant4/UserDocume 37 /In 38 The following datasets: G4LEDATA, G4LEVELGA 39 G4SAIDXSDATA and G4ENSDFSTATEDATA are manda 40 41 In addition the build-in interactive comman 42 /process/(in)activate processNa 43 allows to activate/inactivate the processes 44 45 3- ACTION INITALIZATION 46 47 A newly introduced class, B1::ActionInitial 48 to Geant4 kernel all user action classes. 49 50 While in sequential mode the action classes 51 via invoking the method: 52 B1::ActionInitialization::Build() 53 in multi-threading mode the same method is 54 and so all user action classes are defined 55 56 A run action class is instantiated both thr 57 and global that's why its instance is creat 58 B1::ActionInitialization::BuildForMaster 59 which is invoked only in multi-threading mo 60 61 4- PRIMARY GENERATOR 62 63 The primary generator is defined in the B1: 64 The default kinematics is a 6 MeV gamma, ra 65 of the envelope across 80% of the transvers 66 This default setting can be changed via the 67 of the G4ParticleGun class. 68 69 5- DETECTOR RESPONSE 70 71 This example demonstrates a simple scoring 72 in the user action classes. Alternative wa 73 can be found in the other examples. 74 75 The energy deposited is collected step by s 76 in B1::SteppingAction and accumulated event 77 78 At end of event, the value acummulated in B 79 and summed over the whole run (see B1::Even 80 81 Total dose deposited is computed at B1::Run 82 and printed together with informations abou 83 In multi-threading mode the energy accumula 84 workers is merged to the master in B1::RunA 85 result is printed on the screen. 86 87 G4Parameter<G4double> type instead of G4dou 88 data members in order to facilitate merging 89 to the master. Currently the accumulables 90 and G4AccumulablesManager::Merge() has to b 91 to be further simplified with a closer inte 92 the Geant4 kernel next year. 93 94 An example of creating and computing new un 95 in the class constructor. 96 97 The following paragraphs are common to all ba 98 99 A- VISUALISATION 100 101 The visualization manager is set via the G4 102 in the main() function in exampleB1.cc. 103 The initialisation of the drawing is done v 104 in the macro vis.mac. This macro is automat 105 the main function when the example is used 106 107 By default, vis.mac opens an OpenGL viewer 108 The user can change the initial viewer by c 109 and instead uncommenting one of the other / 110 HepRepFile or DAWNFILE (which produce files 111 HepRApp and DAWN viewers, respectively). N 112 open new viewers at any time from the comma 113 you already have a view in, say, an OpenGL 114 "viewer-0", then 115 /vis/open DAWNFILE 116 then to get the same view 117 /vis/viewer/copyView viewer-0 118 or to get the same view *plus* scene-modifi 119 /vis/viewer/set/all viewer-0 120 then to see the result 121 /vis/viewer/flush 122 123 The DAWNFILE, HepRepFile drivers are always 124 (since they require no external libraries), 125 that the Geant4 libraries have been built w 126 127 From Release 9.6 the vis.mac macro in examp 128 that demonstrate additional functionality o 129 displaying text, axes, scales, date, logo a 130 viewpoint and style. Consider copying thes 131 your application. To see even more command 132 ls or browse the available UI commands in t 133 Developers Guide, Section 7.1. 134 135 For more information on visualization, incl 136 install and run DAWN, OpenGL and HepRApp, s 137 for example, 138 http://geant4.slac.stanford.edu/Presentatio 139 (where [VIS] can be replaced by DAWN, OpenG 140 141 The tracks are automatically drawn at the e 142 for all events and erased at the beginning 143 144 B- USER INTERFACES 145 146 The user command interface is set via the G 147 in the main() function in exampleB1.cc 148 The selection of the user command interface 149 according to the Geant4 configuration or it 150 the third argument of the G4UIExecutive con 151 152 C- HOW TO RUN 153 154 - Execute exampleB1 in the 'interactive mo 155 % ./exampleB1 156 and type in the commands from run1.mac l 157 Idle> /control/verbose 2 158 Idle> /tracking/verbose 1 159 Idle> /run/beamOn 10 160 Idle> ... 161 Idle> exit 162 or 163 Idle> /control/execute run1.mac 164 .... 165 Idle> exit 166 167 - Execute exampleB1 in the 'batch' mode f 168 (without visualization) 169 % ./exampleB1 run2.mac 170 % ./exampleB1 exampleB1.in > exampleB1 171 172