GAMOS 5.2.0 User's Guide
Total Page:16
File Type:pdf, Size:1020Kb
GAMOS 5.2.0 User’s Guide Release 5.2.0 GAMOS Collaboration January 20, 2018 CONTENTS 1 Introduction 3 1.1 About this document...........................................3 1.2 Introduction to GAMOS.........................................3 1.3 Structure of GAMOS...........................................4 1.4 The plug-in concept...........................................4 2 Getting started 5 2.1 Getting the code and installing it.....................................5 2.1.1 Installing in Linux and Mac OS................................5 2.1.2 Installing in Windows......................................8 2.2 Running an example in Linux or Mac OS................................8 2.3 Running an example in Windows....................................9 2.3.1 GAMOS Graphical User Interface...............................9 2.4 Compiling GAMOS........................................... 10 2.4.1 Compiling your new code.................................... 10 3 Geometry 13 3.1 Building your geometry with a text file................................. 13 3.1.1 Description of geometry text file format............................ 13 3.1.2 Dumping your Geant4 geometry in text file format...................... 37 3.1.3 Adding new tags to your input text file............................. 37 3.1.4 Parallel geometries....................................... 39 3.2 Building complex geometries in a simple way.............................. 40 3.3 Building a simple geometry with one material.............................. 40 3.4 Building your geometry with C++ code................................. 40 3.5 Phantom geometries........................................... 40 3.5.1 Simple phantom geometries.................................. 40 3.5.2 Setting off visualization of phantom geometries........................ 41 3.5.3 Reading DICOM files...................................... 41 3.6 Movements................................................ 41 3.7 Geometry utilities............................................ 43 3.8 Magnetic and electric fields....................................... 44 4 Visualization 47 4.1 3D Geant4 visualization......................................... 47 4.2 2D visualization............................................. 47 5 Generator 49 5.1 Using GAMOS generator........................................ 49 5.1.1 Introduction........................................... 49 5.1.2 Particle sources......................................... 49 i 5.1.3 Distributions.......................................... 51 5.2 Reading your generator particles from a text file............................ 56 5.3 Reading your generator particles from a binary file........................... 57 5.4 Event generator changing energy and material............................. 58 5.5 Event generator histograms....................................... 58 5.6 Biasing generator distributions...................................... 58 5.7 Building your generator with C++.................................... 59 5.8 Using ions................................................ 59 6 Physics 61 6.1 GAMOS electromagnetic physics lists.................................. 61 6.1.1 Basic electromagnetic physics list............................... 61 6.1.2 GAMOS electromagnetic extended physics list........................ 63 6.1.3 Standard electromagnetic physics list options......................... 63 6.1.4 Multiple scattering models................................... 63 6.1.5 Bremsstrahlung angular distributions.............................. 64 6.2 GAMOS hadrontherapy physics list................................... 64 6.3 Microdosimetry physics list....................................... 65 6.4 Other physics lists............................................ 65 6.5 Optical photons.............................................. 66 6.5.1 Using optical photons as primary generator.......................... 68 6.6 X-ray refraction............................................. 68 6.7 Coulomb scattering............................................ 68 6.8 Atomic deexcitation processes...................................... 68 6.9 Decay process.............................................. 69 6.10 Radioactive decay process........................................ 69 6.11 Cerenkov process............................................. 69 6.12 Coulomb scattering............................................ 70 6.13 Nuclear processes of electromagnetic particles............................. 70 6.14 Replacing process models........................................ 70 6.14.1 Replacing a set process models................................. 70 6.14.2 Replacing one process model.................................. 70 6.15 Removing a process from a physics list................................. 71 6.16 Production cuts.............................................. 72 6.16.1 Production cuts by region.................................... 72 6.16.2 Energy cuts to range cuts conversion.............................. 73 6.16.3 Minimum and maximum production cuts........................... 73 6.16.4 Apply cuts for all processes................................... 73 6.17 User limits................................................ 74 6.18 Automatic optimisation of cuts..................................... 74 6.18.1 Range rejection......................................... 75 6.19 Building your physics list with C++ code................................ 76 7 User Actions 77 7.1 Adding a filter.............................................. 77 7.2 Adding a classifier............................................ 77 7.3 User action name............................................. 78 7.4 Creating your GAMOS user action................................... 78 8 Sensitive Detector and Hits 79 8.1 Sensitive detectors............................................ 79 8.1.1 Attaching a sensitive detector to a volume........................... 79 8.1.2 Building your sensitive detector with C++ code........................ 80 8.2 Hits.................................................... 80 ii 8.3 Hits digitization and reconstruction................................... 81 8.3.1 Hits digitization......................................... 81 8.3.2 Hits and digits reconstruction.................................. 81 8.3.3 Examples of reconstructed hit builders............................. 82 8.4 Detector effects.............................................. 83 8.4.1 Energy resolution........................................ 83 8.4.2 Time resolution......................................... 83 8.4.3 Detector measuring time.................................... 84 8.4.4 Detector dead time....................................... 84 8.4.5 Minimum hit energy...................................... 85 8.5 Identifying each sensitive detector copy................................. 86 8.6 Storing and retrieving hits........................................ 86 8.6.1 File format........................................... 87 8.6.2 Storing reconstructed hits.................................... 87 8.7 Hits histograms.............................................. 88 9 Scoring 91 9.1 Creating a scorer............................................. 91 9.2 Scorer classes............................................... 92 9.2.1 Scoring in voxelised phantoms................................. 95 9.3 Filter classes............................................... 96 9.4 Scorer printers.............................................. 96 9.5 Classifiers................................................ 97 9.6 Multiplying by data........................................... 97 9.7 Multiplying by distribution........................................ 97 9.8 Convergence testing........................................... 97 9.9 Point detector scorer........................................... 99 9.9.1 Theoretical basis........................................ 99 9.9.2 GAMOS implementation.................................... 100 9.9.3 Variance reduction techniques................................. 103 9.9.4 Sum scoring results and plot them............................... 105 10 Variance reduction techniques 107 10.1 Introduction............................................... 107 10.2 Importance sampling........................................... 107 10.3 Geometrical biasing........................................... 108 10.4 Biasing operations............................................ 108 10.4.1 Cross section biasing...................................... 109 10.4.2 Force collision......................................... 109 10.4.3 Uniform bremsstrahlung splitting................................ 109 10.4.4 Directional bremsstrahlung splitting.............................. 110 10.4.5 Equal weight particle splitting................................. 110 11 Histogramming 111 11.1 Histogram formats............................................ 111 11.2 Histograms in CSV format........................................ 111 11.3 Changing histogram minimum, maximum and number of bins..................... 112 11.4 Histograms name separator....................................... 112 11.5 Output files name............................................. 112 11.6 Analysing your histograms with ROOT................................. 113 11.6.1 Printing the histograms in graphics files............................ 113 11.6.2 Comparing histograms in two files............................... 113 11.7 Creating your own histogram...................................... 114 12 Analysis (extracting data) 115 iii 12.1 Introduction: GAMOS data......................................