Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/examples/advanced/iort_therapy/README

Version: [ ReleaseNotes ] [ 1.0 ] [ 1.1 ] [ 2.0 ] [ 3.0 ] [ 3.1 ] [ 3.2 ] [ 4.0 ] [ 4.0.p1 ] [ 4.0.p2 ] [ 4.1 ] [ 4.1.p1 ] [ 5.0 ] [ 5.0.p1 ] [ 5.1 ] [ 5.1.p1 ] [ 5.2 ] [ 5.2.p1 ] [ 5.2.p2 ] [ 6.0 ] [ 6.0.p1 ] [ 6.1 ] [ 6.2 ] [ 6.2.p1 ] [ 6.2.p2 ] [ 7.0 ] [ 7.0.p1 ] [ 7.1 ] [ 7.1.p1 ] [ 8.0 ] [ 8.0.p1 ] [ 8.1 ] [ 8.1.p1 ] [ 8.1.p2 ] [ 8.2 ] [ 8.2.p1 ] [ 8.3 ] [ 8.3.p1 ] [ 8.3.p2 ] [ 9.0 ] [ 9.0.p1 ] [ 9.0.p2 ] [ 9.1 ] [ 9.1.p1 ] [ 9.1.p2 ] [ 9.1.p3 ] [ 9.2 ] [ 9.2.p1 ] [ 9.2.p2 ] [ 9.2.p3 ] [ 9.2.p4 ] [ 9.3 ] [ 9.3.p1 ] [ 9.3.p2 ] [ 9.4 ] [ 9.4.p1 ] [ 9.4.p2 ] [ 9.4.p3 ] [ 9.4.p4 ] [ 9.5 ] [ 9.5.p1 ] [ 9.5.p2 ] [ 9.6 ] [ 9.6.p1 ] [ 9.6.p2 ] [ 9.6.p3 ] [ 9.6.p4 ] [ 10.0 ] [ 10.0.p1 ] [ 10.0.p2 ] [ 10.0.p3 ] [ 10.0.p4 ] [ 10.1 ] [ 10.1.p1 ] [ 10.1.p2 ] [ 10.1.p3 ] [ 10.2 ] [ 10.2.p1 ] [ 10.2.p2 ] [ 10.2.p3 ] [ 10.3 ] [ 10.3.p1 ] [ 10.3.p2 ] [ 10.3.p3 ] [ 10.4 ] [ 10.4.p1 ] [ 10.4.p2 ] [ 10.4.p3 ] [ 10.5 ] [ 10.5.p1 ] [ 10.6 ] [ 10.6.p1 ] [ 10.6.p2 ] [ 10.6.p3 ] [ 10.7 ] [ 10.7.p1 ] [ 10.7.p2 ] [ 10.7.p3 ] [ 10.7.p4 ] [ 11.0 ] [ 11.0.p1 ] [ 11.0.p2 ] [ 11.0.p3, ] [ 11.0.p4 ] [ 11.1 ] [ 11.1.1 ] [ 11.1.2 ] [ 11.1.3 ] [ 11.2 ] [ 11.2.1 ] [ 11.2.2 ] [ 11.3.0 ]

Diff markup

Differences between /examples/advanced/iort_therapy/README (Version 11.3.0) and /examples/advanced/iort_therapy/README (Version 10.6)


  1                                                     1 
  2        =======================================      2        =========================================================
  3                      Text version of the iort_      3                      Text version of the iort_therapy README file
  4              =================================      4              =========================================================
  5                                                     5 
  6  Main Authors:                                      6  Main Authors:
  7  G.Russo(a,b), C.Casarino*(c), G.C. Candiano(c      7  G.Russo(a,b), C.Casarino*(c), G.C. Candiano(c), G.A.P. Cirrone(d), F.Romano(d)
  8                                                     8  
  9  Contributor Authors:                               9  Contributor Authors:
 10  S.Guatelli(e)                                     10  S.Guatelli(e)
 11                                                    11 
 12  Past Authors:                                     12  Past Authors:
 13  G.Arnetta(c), S.E.Mazzaglia(d)                    13  G.Arnetta(c), S.E.Mazzaglia(d)
 14                                                    14 
 15  (a) Fondazione Istituto San Raffaele G.Giglio <<  15  (a) Fondazione Istituto San Raffaele G.Giglio, Cefalù, Italy
 16                                                    16 
 17  (b) IBFM-CNR , Segrate (Milano), Italy            17  (b) IBFM-CNR , Segrate (Milano), Italy
 18                                                    18 
 19  (c) LATO (Laboratorio di Tecnologie Oncologic <<  19  (c) LATO (Laboratorio di Tecnologie Oncologiche), Cefalù, Italy
 20                                                    20  
 21  (d) Laboratori Nazionali del Sud of the INFN,     21  (d) Laboratori Nazionali del Sud of the INFN, Catania, Italy
 22                                                    22 
 23  (e) University of Wollongong, Australia           23  (e) University of Wollongong, Australia
 24                                                    24 
 25                                                    25 
 26   *Corresponding author, email to carlo.casari     26   *Corresponding author, email to carlo.casarino@polooncologicocefalu.it
 27 ----------------------------------------------     27 -------------------------------------------------------------------------------------------------
 28                                                    28 
 29 iort_therapy:                                      29 iort_therapy:
 30                                                    30 
 31 WHAT IT IS, WHAT IT DOES AND WHAT IT WILL PROV     31 WHAT IT IS, WHAT IT DOES AND WHAT IT WILL PROVIDE          
 32                                                    32 
 33 iort_therapy is a Geant4-based application spe     33 iort_therapy is a Geant4-based application specifically developed to address typical needs related to the Intra-Operative Radio-Therapy (IORT) technique. 
 34                                                    34  
 35 iort_therapy is capable to simulate a well spe <<  35 iort_therapy is capable to simulate a well specified intra-operative electron radio-therapy facility: the collimator beam line system of a typical medical mobile linac and the relative target (water-phantom). iort_therapy application is currently used by the G.Russo team in clinical and research activities carried out in Fondazione Istituto San Raffaele G.Giglio Hospital (Cefalù, Italy) where a NOVAC7 linac is installed.
 36                                                    36 
 37 iort_therapy, is flexible and show many capabi     37 iort_therapy, is flexible and show many capabilities. Its geometrical set-up, for example, is completely interchangeable permitting a simple switch between different geometrical collimator system configurations; the possibility to simulate a composite metallic shielding disc inside the water-phantom was also implemented.
 38                                                    38 
 39                                                    39 
 40 Folder structure of iort_therapy                   40 Folder structure of iort_therapy
 41                                                    41 
 42 iort_therapy distribution contain these sub-fo     42 iort_therapy distribution contain these sub-folders:
 43                                                    43 
 44 \src: where source .cc files are stored            44 \src: where source .cc files are stored
 45 \include: where header .hh files are stored        45 \include: where header .hh files are stored
 46                                                    46 
 47 Currently this folders structure is in develop     47 Currently this folders structure is in development and in the meanwhile new features and capabilities will be added. 
 48                                                    48 
 49                                                    49 
 50 DOWNLOAD AND INSTALLATION                          50 DOWNLOAD AND INSTALLATION
 51                                                    51 
 52 iort_therapy source code is released inside th     52 iort_therapy source code is released inside the official distribution of the Geant4 toolkit in the $G4INSTALL/examples/AdvancedExamples folder.
 53                                                    53 
 54 To run iort_therapy you must first install the     54 To run iort_therapy you must first install the Geant4 package. Once Geant4 is installed the example must be first compiled (with the command gmake inside the
 55 ../iort_therapy folder). When compilation is c     55 ../iort_therapy folder). When compilation is completed the program can be executed.
 56                                                    56 
 57 A CMakeLists.txt file is provided together wit     57 A CMakeLists.txt file is provided together with a standard GNUmakefile for compilation. 
 58                                                    58 
 59 A complete guide for the Geant4 installation i     59 A complete guide for the Geant4 installation in different operating systems can be found inside the official installation Geant4 pages.
 60                                                    60 
 61                                                    61 
 62 GEOMETRICAL SET-UP                                 62 GEOMETRICAL SET-UP
 63                                                    63 
 64 The idea of iort_therapy is to provide a tool      64 The idea of iort_therapy is to provide a tool useful for Users interested in the field of electron intra-operative radio-therapy. These can include the simple calculation of dose distribution curves in water or other materials, the possibility to study and plan dose distribution in the tumor treatment region with different clinical set-up, and to optimize radio-protection of normal patient tissues simulating a composite metallic shielding disc.
 65                                                    65 
 66 The main component of the simulation is the co     66 The main component of the simulation is the collimator beam line system, the phantom, the detector and the composite metallic shielding disc.
 67                                                    67 
 68                                                    68 
 69 COLLIMATOR BEAM LINE SYSTEM                        69 COLLIMATOR BEAM LINE SYSTEM
 70                                                    70 
 71 At moment iort_therapy include the simulation      71 At moment iort_therapy include the simulation of a collimator beam line system, based on a typical medical mobile linac structure us the NOVAC7. This  collimator beam line is elaborated in the files CollimatorXXBeamLine.cc , where XX may be 40, 50, 60, 70 ,80 or 100 (mm) depending on the diameter collimator set-up chosen. 
 72 In fact, there is also a facility in iort_ther     72 In fact, there is also a facility in iort_therapy that allows the user to make a choice, via macro, between alternative collimator beam line set-up. This can be done by using command:
 73                                                    73 
 74 /geometrySetup/selectGeometry <name>               74 /geometrySetup/selectGeometry <name>
 75                                                    75 
 76 where <name> is coll40, coll50, coll60, coll70     76 where <name> is coll40, coll50, coll60, coll70, coll80 or coll100 depending on the diameter collimator set-up chosen (40mm, 50mm, 60mm, 70mm, 80mm or 100mm). The standard "default" geometry is coll60.
 77                                                    77 
 78 The Collimator beam line system class file         78 The Collimator beam line system class file
 79                                                    79 
 80 The following is the description of the elemen     80 The following is the description of the elements of the collimator beam line system from the accelerator head to the final collimator. This line is completely simulated inside this class.
 81                                                    81 
 82 The main elements are the accelerator head and     82 The main elements are the accelerator head and the applicator.
 83 The accelerator head performs as a primary col     83 The accelerator head performs as a primary collimator system. It consists of titanium exit window and a cylindrical PMMA structure where two monitor chambers are installed.
 84 The applicator consists of a cylindrical PMMA      84 The applicator consists of a cylindrical PMMA tube (the final collimator). In the order we have implemented the following functions:
 85                                                    85 
 86   IortBeamLineVacuumSource();                      86   IortBeamLineVacuumSource();
 87   IortBeamLineTitaniumWindows();                   87   IortBeamLineTitaniumWindows();
 88   IortBeamLineMonitorChambers();                   88   IortBeamLineMonitorChambers();
 89   IortBeamLineBlocks() ;                           89   IortBeamLineBlocks() ;
 90   IortBeamLineJunctions();                         90   IortBeamLineJunctions(); 
 91   IortBeamLineFinalCollimator();                   91   IortBeamLineFinalCollimator();
 92                                                    92 
 93 The user has now the possibility to vary, via      93 The user has now the possibility to vary, via messenger, the inner and outer radius of the final collimator.
 94                                                    94 
 95                                                    95 
 96 THE PHANTOM                                        96 THE PHANTOM 
 97                                                    97 
 98 At the end of the beam line a phantom (a box o     98 At the end of the beam line a phantom (a box of 20cmx20cmx20cm default dimensions) is reproduced.
 99 Inside it, a user-defined region (the detector     99 Inside it, a user-defined region (the detector) is divided (via the ROGeomtry classes of Geant4) in cubic and identical voxels. The voxels size can be varied as well as the voxelized region.
100 At the end of a simulation run the dose deposi    100 At the end of a simulation run the dose deposited by primaries and secondaries in each voxel is collected. This information is available as an .out file.  
101                                                   101 
102 THE DETECTOR                                      102 THE DETECTOR
103                                                   103 
104 A scoring mesh is set to score the dose in the    104 A scoring mesh is set to score the dose in the phantom (see defaultMacro.mac)
105                                                   105 
106 As concern the cut and stepMax values, the def    106 As concern the cut and stepMax values, the default configuration implies a cut value of 0.01 mm in the whole  world (use the command /physic/setCuts <length>  in order to set the cut for all, and the command /physic/setDetectorCuts <length> to set the cut for the detector only)  and a stepMax of 0.01 mm just in the phantom (use the command /Step/waterPhantomStepMax 0.01 mm).
107 In any case it is strongly recommended to use     107 In any case it is strongly recommended to use a stepMax value not bigger than 5% of the dose slice thickness.
108                                                   108 
109                                                   109 
110 SHIELDING DISC                                    110 SHIELDING DISC
111                                                   111 
112 Inside the detector is positioned a double lay    112 Inside the detector is positioned a double layered shielding disc. For both layers it is possible via macro to change the outer and inner radius, the thickness, the position along the beam axis and the material.
113 NOTE 1: to delete the disc out the entire geom    113 NOTE 1: to delete the disc out the entire geometry the relative macro command must be used!!
114 NOTE 2: to re-insert the disc in the entire ge    114 NOTE 2: to re-insert the disc in the entire geometry the relative macro command must be used!!
115                                                   115   
116                                                   116 
117 PHYSICS PROCESSES AND PHYSICS MODELS IMPLEMENT    117 PHYSICS PROCESSES AND PHYSICS MODELS IMPLEMENTATION
118                                                   118 
119 EM Standard option 4 is activated. The user ca    119 EM Standard option 4 is activated. The user can change the physics list interactively.
120                                                   120 
121                                                   121 
122 INTERACTIVE COMMANDS                              122 INTERACTIVE COMMANDS
123                                                   123 
124 How to change Phantom, Detector and Shielding     124 How to change Phantom, Detector and Shielding Disc geometries
125                                                   125 
126 In order to let the end user to change phantom    126 In order to let the end user to change phantom and detector geometries and voxelization, some interactive commands have been provided. All parameters are mandatory, except those inside square brackets.
127                                                   127 
128                                                   128 
129 Phantom geometry                                  129 Phantom geometry
130                                                   130 
131 (1) The phantom size. As usually, zero or nega    131 (1) The phantom size. As usually, zero or negatives values mean: <<don't change it>>.
132 (2) The phantom position respect to the world.    132 (2) The phantom position respect to the world. In this case specified values refer to the three components of the position of the phantom's center respect to the world's.
133                                                   133 
134 Command synopsis:                                 134 Command synopsis:
135                                                   135 
136 /changePhantom/size <dimX> <dimY> <dimZ> <[uni    136 /changePhantom/size <dimX> <dimY> <dimZ> <[unit]> # 20 20 20 cm
137 /changePhantom/position <posX> <posY> <posZ> <    137 /changePhantom/position <posX> <posY> <posZ> <[unit]> # 4.5 0 0 cm
138                                                   138 
139                                                   139 
140 Detector geometry                                 140 Detector geometry 
141                                                   141 
142 The user can change:                              142 The user can change:
143                                                   143 
144 (1) The detector (box) size.                      144 (1) The detector (box) size.
145                                                   145  
146 (2) The displacement between the phantom and t    146 (2) The displacement between the phantom and the detector.  Displacement parameters refer to the lower left corner of the detector respect to that of the phantom, by the point of view of the beam. In this case zero or positive values are allowed, while the negatives ones mean: << don't change it>>.
147                                                   147 
148 Command synopsis:                                 148 Command synopsis:
149 /changeDetector/size <dimX> <dimY> <dimZ> <[un    149 /changeDetector/size <dimX> <dimY> <dimZ> <[unit]>
150 /changeDetector/displacement <dispX> <dispY> <    150 /changeDetector/displacement <dispX> <dispY> <dispZ> <[unit]> 
151                                                   151 
152 The user has to change the scoring mesh accord    152 The user has to change the scoring mesh accordingly via UI commands. 
153                                                   153 
154                                                   154 
155 Shielding Disc geometry                           155 Shielding Disc geometry
156                                                   156 
157 Command synopsis:                                 157 Command synopsis:
158                                                   158 
159 /ProtectionDisc1/OuterRadiusDisc1 <dim>           159 /ProtectionDisc1/OuterRadiusDisc1 <dim>       # default -> 40*mm ; 
160 /ProtectionDisc1/InnerRadiusDisc1 <dim>           160 /ProtectionDisc1/InnerRadiusDisc1 <dim>       # default -> 0*mm
161 /ProtectionDisc1/HeightDisc1      <dim>           161 /ProtectionDisc1/HeightDisc1      <dim>       # default -> 2*mm
162 /ProtectionDisc1/XPositionDisc1  <dimX>           162 /ProtectionDisc1/XPositionDisc1  <dimX>       # default -> -11*mm   
163 /ProtectionDisc1/material    <G4_Material>        163 /ProtectionDisc1/material    <G4_Material>    # default -> G4_WATER ;
164                                                   164 
165 /ProtectionDisc2/OuterRadiusDisc2 <dim>           165 /ProtectionDisc2/OuterRadiusDisc2 <dim>       # default -> 40*mm ;
166 /ProtectionDisc2/InnerRadiusDisc2 <dim>           166 /ProtectionDisc2/InnerRadiusDisc2 <dim>       # default -> 0*mm
167 /ProtectionDisc2/HeightDisc2      <dim>           167 /ProtectionDisc2/HeightDisc2      <dim>       # default -> 1*mm
168 /ProtectionDisc2/XPositionDisc2  <dimX>           168 /ProtectionDisc2/XPositionDisc2  <dimX>       # default -> -8*mm
169 /ProtectionDisc2/material    <G4_Material>        169 /ProtectionDisc2/material    <G4_Material>    # default -> G4_WATER ;
170                                                   170 
171                                                   171 
172 All   these    commands    must be   followed     172 All   these    commands    must be   followed   by the  command  /changePhantom/update
173 in order to check and eventually apply changes    173 in order to check and eventually apply changes to the real geometry.
174 Moreover  they  must   be    issued  between      174 Moreover  they  must   be    issued  between   runs  (so   where you   want but   after  the /run/initialize initialization command, or the G4State_Idle Geant4 state machine).
175 Obviously all the previous sizes must be set i    175 Obviously all the previous sizes must be set in order to maintain the detector fully inside the phantom, otherwise system complains.
176                                                   176 
177                                                   177 
178 To Delete Disc geometry                           178 To Delete Disc geometry
179                                                   179 
180 Command synopsis:                                 180 Command synopsis:
181                                                   181 
182 /DeleteProtectionDisc/delete                      182 /DeleteProtectionDisc/delete
183                                                   183 
184 To Re-insert Disc geometry                        184 To Re-insert Disc geometry
185                                                   185 
186 Command synopsis:                                 186 Command synopsis:
187                                                   187 
188 /InsertProtectionDisc/insert                      188 /InsertProtectionDisc/insert
189                                                   189 
190 **** To set initial beam features                 190 **** To set initial beam features
191                                                   191 
192 By default, the beam propagates along the posi    192 By default, the beam propagates along the positive X direction with Gaussian momentum and Y-Z distributions. 
193 It is possible to select: particle type, mean     193 It is possible to select: particle type, mean energy and relative standard deviation, X,Y and Z coordinates, Y and Z standard deviations and, finally, the beam spread along X direction (Theta). 
194                                                   194 
195 Command synopsis:                                 195 Command synopsis:
196                                                   196 
197 /gun/particle                                     197 /gun/particle 
198 /beam/energy/meanEnergy                           198 /beam/energy/meanEnergy 
199 /beam/energy/sigmaEnergy                          199 /beam/energy/sigmaEnergy  
200 /beam/position/Xposition                          200 /beam/position/Xposition
201 /beam/position/Yposition                          201 /beam/position/Yposition
202 /beam/position/Yposition/sigmaY                   202 /beam/position/Yposition/sigmaY
203 /beam/position/Zposition                          203 /beam/position/Zposition
204 /beam/position/Zposition/sigmaZ                   204 /beam/position/Zposition/sigmaZ 
205 /beam/momentum/Theta                              205 /beam/momentum/Theta
206                                                   206  
207 HOW RUN iort_therapy                              207 HOW RUN iort_therapy
208                                                   208 
209 Run the example in interactive mode               209 Run the example in interactive mode                                      
210                                                   210 
211 > $G4WORDIR/bin/Linux-g++/iort_therapy            211 > $G4WORDIR/bin/Linux-g++/iort_therapy
212                                                   212 
213 In this case the main file (iort_therapy.cc) p    213 In this case the main file (iort_therapy.cc) performs different operations depending on which environment variable is activated;
214 For example, if the environment variable G4UI_    214 For example, if the environment variable G4UI_USE_TCSH is activated, iort_therapy will start with the TCSH User Interface that has many useful functionalities. On the other hand, if this first variables is not defined, the program will continue searching for the G4UI_USE_QT variable and, finally, will open the standard G4UITerminal.
215                                                   215 
216 Run the example using macro files                 216 Run the example using macro files          
217                                                   217 
218 iort_therapy can be launched using a macro fil    218 iort_therapy can be launched using a macro file:
219                                                   219 
220 > $G4WORDIR/bin/Linux-g++/iort_therapy macroFi    220 > $G4WORDIR/bin/Linux-g++/iort_therapy macroFile.mac
221                                                   221 
222 The defaultMacro.mac file is contained in the     222 The defaultMacro.mac file is contained in the main directory of iort_therapy and is automatically read in case the user launch the executable without a parameter.
223                                                   223 
224                                                   224 
225 SIMULATION OUTPUT                                 225 SIMULATION OUTPUT
226                                                   226 
227 Store results in an ASCII file                    227 Store results in an ASCII file
228                                                   228 
229 A .out ASCII file is generated at the end of e    229 A .out ASCII file is generated at the end of each run, Dose.out. 
230 The file contains four columns; the first thre    230 The file contains four columns; the first three columns represent the voxel indexes (that univocally identify the voxel volume), while the last column represents the dose  in Gray deposited in that given voxel.
231                                                   231 
232                                                   232 
233                                                   233