Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/examples/advanced/STCyclotron/

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 ]

Name Size       Last modified (GMT) Description
Back Parent directory       2024-12-05 15:16:16
Folder Macro/       2024-12-05 15:16:16
Folder include/       2024-12-05 15:16:16
Folder src/       2024-12-05 15:16:16
File CMakeLists.txt 2488 bytes       2024-12-05 15:16:16
File GNUmakefile 951 bytes       2024-12-05 15:16:16
File History 3238 bytes       2024-12-05 15:16:16
File Plot.C 43025 bytes       2024-12-05 15:16:16
File README 19245 bytes       2024-12-05 15:16:16
C++ file STCyclotron.cc 4288 bytes       2024-12-05 15:16:16
File STCyclotron.out 8561 bytes       2024-12-05 15:16:16
File init.mac 326 bytes       2024-12-05 15:16:16
File init_parameters.mac 3788 bytes       2024-12-05 15:16:16
File init_vis.mac 256 bytes       2024-12-05 15:16:16
File run.mac 200 bytes       2024-12-05 15:16:16
File vis.mac 3383 bytes       2024-12-05 15:16:16

  1 
  2      =========================================================
  3               Geant4 - Solid-target cyclotron example
  4      =========================================================
  5 
  6                              README
  7                       ---------------------
  8 
  9 // 
 10 // March 2014 - September 2014                                                              //
 11 // The code was written by :                                                                //
 12 //                Floriane Poignant - floriane.poignant@gmail.com                           //
 13 //                with the support of Scott Penfold (University of Adelaide, Australia)     //
 14 //                                                                                          //
 15 //  for a colloboration work between the University of Adelaide & the SAHMRI                //
 16 //  (J. Asp, P. Takhar)                                                                     //
 17 //                                                                                          //   
 18 //******************************************************************************************//
 19 
 20 -------------------------------
 21 ----    I) Introduction    ----
 22 -------------------------------
 23 
 24 
 25 This project was realised by F. Poignant at the University of Adelaide, for a collaboration
 26 between the University of Adelaide, the SAHMRI and Comecer (company in charge of the design
 27 of the solid target). The aim was to model a solid target of the cyclotron to study to 
 28 production of the radioisotope of interest for proton irradiation, and to be able to estimate
 29 any undesired secondary product, especially isotopes of the product of interest.
 30 
 31 For more details about this project and the results, see : 
 32     http://www.physicamedica.com/article/S1120-1797%2816%2930023-0/abstract
 33 
 34 
 35 Anyone who would like to study the production of radioisotope for low current and low energy
 36 irradiation can use this simulation.
 37 
 38 The solid target system is made of a tube surrounded by aluminium, a foil, a volume of helium
 39 between the foild and the target, and the target set on a plate of platinium.
 40 
 41 ------------------------------------
 42 ----  II) Setting the database  ----
 43 ------------------------------------
 44 
 45 Beforehand, you first need to make sure that the database used for inelastic collisions of primary
 46 particles is set up correctly. You can download formated data of the TENDL and ENDF-VII0 database
 47 at the following links:
 48 
 49 TENDL data: 
 50 - CMake can download and install this dataset, add
 51     -DGEANT4_INSTALL_DATASETS_TENDL=ON 
 52   to your CMake options. 
 53 - or, download via download page searching for TENDL download 
 54   https://cern.ch/geant4/support/download
 55 - or direct download:
 56   https://cern.ch/geant4-data/datasets/G4TENDL.1.3.2.tar.gz
 57 
 58 ENDF-VII0:
 59 ftp://gdo-nuclear.ucllnl.org/pub/G4LEND/ (G4 Low Energy Nuclear Data)
 60 
 61 In your bashrc file, add the following:
 62 export G4PARTICLEHPDATA=/PATH_TO_TENDL____OR____ENDF_DATABASE
 63 export G4NEUTRONHPDATA=/PATHTO_GEANT4_INSTALLATION_FOLDER/share/Geant4-vXX.XX/data/G4NDL4.5
 64 export G4PHP_DO_NOT_ADJUST_FINAL_STATE=1
 65 export G4PHP_MULTIPLICITY_METHOD=Poisson
 66 
 67 
 68 ------------------------------------
 69 ----  III) Input parameters     ----
 70 ------------------------------------
 71 
 72 -----Macro/init_parameters.mac, file available also in the main directory.
 73 
 74 To study the optimization of the isotope production, a list of parameters can be changed in
 75 the Macro/init_parameters.mac (or using the Geant4 User Interface):
 76 
 77 PART1) Beam parameters
 78 
 79    Different parameters can be changed for the beam : type of particle, energy, energy distribution,
 80    shape of the beam, etc ... To design your own beam, please refer to the Geant4 User's Guide for
 81    Application Developpers.
 82 
 83    Time and current parameters
 84    As Geant4 doesn't model any time scale, the current/particles generated relation is established as
 85    the following:
 86    - for one event generated, the number of particles represent 10E-11 second of a real experiment. It
 87    is calculated the following way :
 88            NumberOfParticle = beamCurrent*timePerEvent/chargeParticle
 89        where - beamCurrent is a parameter that can be changed, in ampere
 90            - timePerEvent is set to 10E-11 second.
 91        - chargetParticle is the charger of the particle 
 92        in Coulomb (for example, the value is 1.9E-19 C for proton).
 93    Then, the user can choose the time of irradiation. Note that a simulation for a real time of irradiation
 94    would be too long. The time of irradiation parameter enables to get results for the real time of irradiation
 95    from a smaller time simulation.
 96 
 97 PART2) Target parameters:
 98    - the target thickness. Must be smaller than 38.32 mm, which is the length of the tube containing the target.
 99    - the target diameter. Must be smaller than 15 mm, which is the diameter of the tube containing the target.
100    - the target material : there are two ways to change the material of the target :     
101       - If the material is natural, the user can choose to use the NIST database.
102       - If the material is enriched, the user can set up their own material. The material created is made of a
103       number of elements. The number of elements can be set up by the user. Then, one element can be created in
104       two different ways : it can be a natural element, using the NIST database, or it can be made of a number
105       of isotopes that the user can set up. Please, note that the order to declare parameters is important and
106       has to be the following : 
107                    1) Material settings
108            2) Element i settings
109            3) Isotopes settings for the element i
110            4) Element i+1 settings 
111            5) Isotopes settings for the element i+1, .... and so on.
112       For example, to create an target of nickel enriched to 60% of Ni64 : one will create a new material, made
113       of two elements : natural nickel and pure Ni64. The natural nickel will be an element created using the NIST
114       database. The pure Ni64 will be an element made of one isotope : Ni64. In case you want to create a pure 64Ni
115       target, the materialis made of one element, made itself of one isotope (Ni64). Few examples are provided in 
116       the folder "Macro/Material/Target" that can be executed in the init_parameters.mac.
117 
118 PART3) Foil parameters:
119    - the foil thickness. 
120    - the foil material. With this parameter, it is possible to change the foil material in order to study some specific
121      aspects of the reaction. Refers to the change of target material for more detail.
122 
123 PART4) Histograms:
124    The histograms parameters can be changed in order to fit to the expected range for a given data. For example, for a
125    proton beam with an expected energy of 16 MeV when reaching the target, the beam energy profile range can be set up
126    between 15. to 17. MeV.
127 
128 -----Macro/Vis/vis.mac
129    This file sets up the visualisation parameters. vis.mac is also available in the main directory.
130 
131 -----Macro/GUI/gui.mac
132    This file sets up the tool bars and buttons that enables to modify the parameters using the Geant4 User Interface.
133 
134 ------------------------------------
135 ---- IV) Running the simulation ----
136 ------------------------------------
137 
138 To run your simulation, create a "STCyclotron-build" directory. Go in the build directory, and compile:
139       cmake PATHTO_SOURCE_DIRECTORY (corresponding to the path to the STCyclotron directory).
140       make
141  
142 It will create and executable 'STCyclotron'. To run your simulation, type:
143       ./STCyclotron
144 
145 If the Graphical User Interface is activated and your Geant4 environment is correctly set, a Graphical User Interface
146 should open. On the top, the tool bar enables the user to execute the different commands. There are few menus : one for
147 the beam parameters, one for the target material, one for the geometry of the target, one for the foil material, and one
148 for the foil geometry. Through this tool bar, you can modify the main parameters you need to run your simulation.
149 
150 The viewer shows you the structure of the target system. The proton beam arrives from the left and is transported through
151 the tube and the foil before impacting the target. The yellow tube is either void (before the blue foil) or pressured helium
152 (after the foil). The out-layer is made of aluminum or gold. The target is displayed in green.
153 
154 To send protons, type
155      /run/beamOn 1
156 
157 /!\IMPORTANT/!\ If the number of runs you launch is larger than a few, desactivate the viewer (Menu 'Viewer' -> 'Disable
158 Viewer') otherwise it will crash. This is due to the number of particles sent per event, that is quite large. The viewer
159 has a limit of the number of particles it can display on the screen.
160 
161 Note that the number of particles per event is set according to the current, so that one event represents 10^-11 second
162 of irradiation. For 30 μA, it corresponds to 1 875 protons. This value was chosen so the number of protons per event won't
163 be too high. If you work on high current (over 100 μA) you might need to change the set up. This time is defined in the
164 PrimaryGeneratorAction class. Also note that, for one event, all primaries are set up with the same primary coordinates.
165 You need to launch a high enough number of runs (~ 1000) if you want a good statistics on results such as the beam intensity.
166 
167 At the end of the run, type 'exit' to leave the Geant4 User Interface. Execute the file Plot.C by typing
168        root Plot.C
169 It will create many PDF files. To exit ROOT, type
170     .q
171 
172 ------------------------------------
173 ----         V) Output          ----
174 ------------------------------------
175 
176 Different types of output are available.
177 
178 1) The .root file:
179    This ROOT file gives a list of histograms representing the following data :
180     
181   a) 1D histograms :
182        - n°0: The energy distribution of primary particles (e.g. protons) when reaching the target (MeV).
183        - n°1: The energy distribution of primary particles (e.g. protons) when reaching the foil   (MeV).
184        - n°2: The energy distribution of primary particles (e.g. protons) going out of the target  (MeV).
185        - n°3: The energy distribution of primary particles (e.g. protons) going out of the foil    (MeV).
186        - n°4: The depth of isotope production in your target (number of particles as a function of the foil
187               thickness in mm).
188        - n°5-8:  energy spectrum of particles produced in the target following inelastic collision of primary
189                  particles (e.g. protons) with the target material (MeV).
190            In order: 5 = positrons; 6 = electrons; 7 = gammas; 8 = neutrons.
191              - n°9-14: energy spectrum of particles produced in the target following decay of isotopes produced in
192                  the target (MeV).
193            In order: 9 = positrons; 10 = electrons; 11 = gammas; 12 = neutrons; 13 = nu; 14 = anti_nu
194            (electron (anti)neutrinos).
195   
196   b) 2D histograms :
197      - n°0: the beam intensity profile before hiting the target (mm x mm).
198      - n°1: the beam intensity profile before hiting the foil (mm x mm).
199      - n°2: the radioisotopes produced according to their Z and A number.
200      - n°3: the energy of the primary particles (e.g. protons) according to depth in the target (mm x MeV).
201      - n°4: the beam intensity going out from the target (mm x mm).
202      - n°5: the beam intensity going out from the foil (mm x mm).
203 
204      /!\ the histograms are not normalized /!\. The file 'Plot.C' renormalize the histograms and plot them into
205      PDFs as explained below.
206 
207 2) .txt files:
208    Several text files are provided :
209 
210 ----a) Output_General.txt
211    This file summarizes the parameters used during the simulation:
212     - Geam parameters: primary particles (by default protons), energy of the primary particles (MeV), current
213       of the beam (Ampere), irradiation time (hour(s)), and current factor. This last factor is a rescaling
214       factor: in the simulation, the number of particles sent is calculated for a current obtained before the foil,
215       while the current in the actual cyclotron the current is measured after the foil. This parameter therefore
216       rescales the number of particles to match the current arriving at the target.
217   - simulation parameters: equivalent time per event (by default set at 10^-11 second), number of events run
218       during the simulation, number of primaries per event (calculated according to the time per event, the beam
219       current and the charge of the primary particle), total number of particles sent during the simulation.
220   - Geometry parameters: target thickness, diameter and foil thickness.
221 
222    It also provides the heating of the target and the foil (W/mm3).
223 
224 ----b) Output_ParentIsotopes.txt
225    This file provides a list of radioisotopes produced during the irradiation of the target. For each isotope, it contains:
226     - Name of the isotope.
227   - Number of isotopes created during the simulation. Can be used to evaluate the accuracy of your predictions.
228   - Decay constant (s-1).
229   - Half life time (hour(s)).
230   - Process that induced its creation.
231   - Number of isotopes produced per second of irradiation.
232   - Number of isotopes produced at the end of the beam.
233   - Activity induced by the isotope at the end of the beam (mCi).
234 
235 ----c) Output_DaughterIsotopes.txt
236    This file provides a list of unstable daughter radioisotopes produced due to the decay on unstable primary (parent) radiosotopes.
237    Note that it may be empty. As for the file Output_ParentIsotopes.txt, it contains:
238       - Name of the daughter isotope.
239       - Name of the parent isotope.
240   - Decay constant of the parent isotope (s-1).
241   - Decay constant of the daughter isotope (s-1).
242   - Half life time of the parent isotope (hour(s)).
243   - Half life time of the daughter isotope (hour(s)).
244   - Number of daughter isotopes produced per second of irradiation.
245   - Number of daughter isotopes produced at the end of the beam.
246     - Activity induced by the daughter isotope at the end of the beam (mCi).
247 
248 ----d) Output_StableIsotopes.txt
249    For information, this file provides a list of stable isotopes (name and number of isotopes produced during the simulation)
250    that are produced in the target due to the decay of radioisotopes.
251 
252 ----e) Output_Particles.txt
253    For information, this file provides a list of other particles such as electrons, etc., (name and number of isotopes produced
254    during the simulation) that are produced in the target.
255 
256    This folder provides pdf format of the histograms generated in the root file, using a the macro 
257    file Plot.C to generate it. It also provides the following curves :
258     - the number of each isotope according to the time, from the start of the irradiation to 
259     the end of the irradiation, but also until few hours after the end of the irradiation.
260   - the variation of activity from the end of the irradiation time to few hours after.
261 
262 3) PDF Files:
263 
264    After running the 'Plot.C' file, you obtain many PDF files that are created in a folder 'Results'. This code reads the different
265    outputs from the simulation (.root file and .txt files), normalize the results and plot them in PDFs in various folders:
266 
267 ----a) Results/BeamData folder
268    - BeamEnergyInFoil.pdf and BeamEnergyInTarget.pdf: beam energy distribution before entering the foil/target using histograms 1D0 and 1D1,
269      normalized to the number of primary protons and the bin width.
270    - BeamEnergyOutFoil.pdf and BeamEnergyOutTarget.pdf: beam energy distribution when exiting the foil/target, using histograms 1D2 and 1D3,
271      normalized to the number of primary protons and the bin width.
272    - BeamIntensityInFoil.pdf and BeamIntensityInTarget.pdf:  beam intensity before entering the foil/target using histograms 2D0 and 2D1,
273      normalized per primary particle and to the bins widths.
274    - BeamIntensityOutTarget.pdf: beam intensity when exiting the target using histogram 2D4, normalized per primary particle and to the bins
275      widths.
276    - EnergyDepth.pdf: energy of protons as a function of the depth in the target.
277 
278 ----b) Results/IsotopesProduction
279    - ActivityOfXX.pdf and YieldOfXX.pdf
280      Shows the production of the isotope XX (number of nuclei or activity) as a function of the time, starting from the beginning of
281      irradiation and up to 30 hours. Note that if the time of irradiation is longer than 30 hours, you must change the maximum time
282      to display the activity or yield by opening the file 'Plot.C' and changing tMax.
283    - ActivitySaturationOfXX.pdf and YiedSaturationOfXX.pdf
284      Shows the saturation reached for the production of the isotope XX (number of nuclei or activity) as a function of the time, if the
285      time of irradiation is set 'infinite'.
286    - Activity.pdf/Activity.jpg and Yield.pdf/Yield.jpg
287      Shows the activity (or yield) of all the isotopes produced during the irradiation as a function of the time up to 30 hours on the
288      same graph.
289    - TotalActivity.pdf
290      Shows the sum of the activities induced by all the radioisotope up to 30 hours.
291    - RadioisotopeProduction.pdf/RadioisotopeProduction.jpg
292      Shows the number of isotopes produced per primary particles, as a function of Z and A.
293    - DepthCreation.pdf
294      Shows the depth at which radioisotopes were created.
295 
296 ----c) ParticlesEnergySpectra
297        Subfolder: beam. Energy spectra (normalized per primary particles and bin width) of particles created following the inelastic
298        interaction of the beam with the target (1D 5->8).
299        Subfolder: decay. Energy spectra (normalized per primary particles and bin width) of particles created following the decay of
300        radioisotopes created in the target (1D 9->14).
301        
302 ------------------------------------
303 ----  VI) Checking the results  ----
304 ------------------------------------
305 
306 Keep a critical mind with the results : they are highly dependent on the accuracy of the database used. You can verify the coherence
307 of your results on checking the nuclear database you are using. Go to the following website:
308    http://www.oecd-nea.org/janis/book/
309 
310 In the web access part, you can click on the “protons” to access the database of protons.  Click on the atom which your target is made of.
311 For example, for the production of Copper 64, Nickel 64 is used, so you will click on 28-Ni. The list of isotopes of Nickel is available.
312 Click on 28-Ni-64 and select the nuclear reaction you are interested in. The cross sections will be displayed on your screen for different
313 nuclear databases and experiments.
314 
315 The computed values can be used to be compared to experimental ones using the EXFOR website. Go on this website:
316     https://www-nds.iaea.org/exfor/exfor.htm
317 Enter the parameters of the irradiation (i.e., atomic target, reaction, etc.). Then click on submit. You will have different experimental
318 data available. Tick the ones you are interested in. Tick “Quick plot” and then click on retrieve. It will display a plot with different
319 experimental values. On the right, you can tick “use my data”. Do it and add the data from the JANIS Book website. Make sure the units
320 are coherent. Rename your data. Tick “authors” and “legend”. Then click on repaint. You can save your plot buy clicking on PostScript and
321 selecting a PDF format.
322 
323 These tools can be used to check on the accuracy of the database at a given energy.