Geant4 Cross Reference

Cross-Referencing   Geant4
Geant4/examples/advanced/exp_microdosimetry/

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 include/       2024-12-05 15:16:16
Folder src/       2024-12-05 15:16:16
File 1_plot_distributions.py 3944 bytes       2024-12-05 15:16:16
File 2_calculate_means_rbe.py 3460 bytes       2024-12-05 15:16:16
File CMakeLists.txt 2506 bytes       2024-12-05 15:16:16
File GNUmakefile 718 bytes       2024-12-05 15:16:16
File History 9082 bytes       2024-12-05 15:16:16
File LoadPlotNtuple.C 1898 bytes       2024-12-05 15:16:16
File MergeFiles 141 bytes       2024-12-05 15:16:16
File ProcessMicro.C 11222 bytes       2024-12-05 15:16:16
File README 12570 bytes       2024-12-05 15:16:16
C++ file exp_microdosimetry.cc 4032 bytes       2024-12-05 15:16:16
File exp_microdosimetry.out 48804 bytes       2024-12-05 15:16:16
File geometry.mac 1262 bytes       2024-12-05 15:16:16
File output.mac 119 bytes       2024-12-05 15:16:16
File physics.mac 493 bytes       2024-12-05 15:16:16
File primary.mac 26287 bytes       2024-12-05 15:16:16
File run.mac 318 bytes       2024-12-05 15:16:16
File vis.mac 2353 bytes       2024-12-05 15:16:16
File weight_function.csv 12729 bytes       2024-12-05 15:16:16

  1      ========================================================
  2           Geant4 - exp_microdosimetry example
  3      =========================================================
  4 
  5                              README
  6                       ---------------------
  7 
  8 
  9 The exp_microdosimetry example, originally named "Radioprotection", is currently developed and mantained by Susanna Guatelli (Centre For Medical Radiation Physics (CMRP), University of Wollongong, NSW, Australia) and Francesco Romano (INFN - Sezione di Catania, Catania, Italy)
 10 
 11 ------------------------------------------------------------------------
 12 
 13 Contact: susanna@uow.edu.au
 14    francesco.romano@ct.infn.it
 15          geant4-advanced-examples@cern.ch
 16         
 17 ------------------------------------------------------------------------
 18 
 19 List of external collaborators: 
 20 J. Magini and G. Parisi - University of Surrey, United Kingdom
 21 J. Davis and D. Bolst - University of Wollongong, NSW, Australia
 22 G. Milluzzo- INFN-Sezione di Catania, Catania, Italy
 23 
 24 -----------------------------------------------------------------
 25 ----> Introduction.                                                     
 26                                                                        
 27 The exp_microdosimetry example models different detectors for microdosimetry in space applications. The example lets the user
 28 choose between the models of a simplified diamond (1), a micro-diamond (2), a simplified silicon (3), a silicon microdosimeter (4), a two-stage diamond detector (5) and a SiC microdosimeter (6):
 29 
 30 1) A semplified diamond microdosimeter is based on the detector developed by Prof. Anatoly Rosenfeld and his team at the Centre For Medical Radiation Physics, CMRP, University of Wollongong, NSW, Australia. The design of the device is documented in J. Davis, et al., "Characterisation of a novel diamond-based microdosimeter prototype 
 31 for radioprotection applications in space environments",IEEE Transactions on Nuclear Science, 
 32 Vol. 59, pp. 3110-3116, 2012.
 33 
 34 2) The microdiamond detector is based on the detectors developed by the Research Group of The University of Rome "Tor Vergata". The design and performances of the detector are documented in C. Verona et al., "Spectroscopic properties and radiation damage investigation of a diamond based Schottky diode for ion-beam therapy microdosimetry", Journal of Applied Physics, vol. 118, 2015, and in C. Verona et al., "Toward the use of single crystal diamond based detector for ion-beam therapy microdosimetry", Radiation Measurements, vol. 110, 2018.
 35 
 36 3-4) Both silicon microdosimeters are based on the "Bridge" microdosimeter, developed by the Centre For Medical Radiation physics, University of Wollongong, documented in chapter 7 of the PhD Thesis of D. Bolst “Silicon microdosimetry in hadron therapy using Geant4”, https://ro.uow.edu.au/theses1/619/ . (3) contains a simplified geometry with only four sensitive volumes, while (4) includes the complete design.
 37 
 38 5) The diamond telescope is based on the detector developed by University of Rome "Tor Vergata". Its design and characterisation are documented in Cesaroni et al., "", Nucl. Instrum. Methods. Phys. Res. A, vol.947, 2019, DOI:https://doi.org/10.1016/j.nima.2019.162744 , and in C. Verona et al., "Characterisation of a monolithic ΔE-E diamond telescope detector using low energy ion microbeams", Radiation Measurements, vol. 159, 2022, DOI:https://doi.org/10.1016/j.radmeas.2022.106875 .
 39 6) A sempliefied version of a Silicon Carbide (SiC) based microdosimeter developed at INFN-CT, including the 370 um thick substrate. The default size are the following: 100x100x22 um. 
 40 
 41 The type of detectors, its shape, and its position can be set via the included "geometry.mac" macro.
 42 This macro is called in both the vis.mac and run.mac macro files, and include the following options:
 43 - a macro command to choose the type of detector between the above (/geometrySetup/selectDetector "...")
 44 - two macro commands to customise the width and thickness of the sensitive volumes (/geometrySetup/detectorDimension/setWidth "...", /geometrySetup/detectorDimension/setThinckness "..."). It won't take effect when using (1) and (4), as these are finalised designs
 45 - two equivalent macro commands (/geometrySetup/detectorDimension/secondStage/...) to customise the second stage of the detector, if (5) is used
 46 - a macro command to choose whether to place the detector in vacuum or inside a water phantom (/geometrySetup/enableWaterPhantom "true/false")
 47 - a macro command for use with the water phantom to set the detector's width in water (/geometrySetup/detectorPosition/setDepth "...")
 48 The above only take effect only if the macro command /geometrySetup/applyChanges is applied. If the user forgets to run this last command a warning is issued at runtime.
 49 
 50 An isotropic field of Galactic Cosmic Rays (GCR) protons is incident on the device. 
 51 The energy deposition is calculated in the sensitive detectors. 
 52  
 53 In particular in this example it is shown how to:
 54 - model a realistic isotropic field of GCRs by means of the General Particle Source   
 55 - model a realistic detector in Geant4
 56 - customise the detector's geometry and its position at runtime via macros
 57 - retrieve the information of secondary particles originated in the SV
 58 - define the physics by means of a Geant4 Modular Physics List
 59 - characterise the response of a realistic detector
 60 - save results in an analysis ROOT or plaintext csv file using the Geant4 analysis component.             
 61 
 62 The example can be executed in multithreading mode
 63 
 64 ------------------------------------------------------------------------
 65 ----> 1.Experimental set-up.                                            
 66 
 67 The diamond microdosimeter can be set either in vacuum (for space radioprotection applications) or at a user-defined depth within a water phantom (for clinical applications).
 68 - if placing the detector in a vacuum, its centre coincides with the centre of the world volume. The world is a box with size 10 cm, filled with vacuum.
 69 - if placing the detector in a water phantom, its centre coincides with the chosen depth inside the water phantom. The water phantom is a water box of width 5 cm and length equal to the detector depth + 2 cm. It's placed in a world volume filled with air having twice its size, located so that a depth equal to 0 cm corresponds to the centre of the world.
 70 
 71 All SV structures are active.
 72 
 73 The primary radiation field is defined by means of the GeneralParticleSource in the file
 74 primary.mac
 75                            
 76 -------------------------------------------------------------------------
 77 ----> 2.SET-UP 
 78                                           
 79 A standard Geant4 example CMakeLists.txt is provided.                   
 80 
 81 Setup for analysis:
 82 By default, the example has no analysis component. 
 83 
 84 To compile and use the application with the analysis on, build the example with the following command:
 85 cmake -DWITH_ANALYSIS_USE=ON -DGeant4_DIR=/path/to/Geant4_installation /path/to/exp_microdosimetry example     
 86 
 87 When the analysis is enables, the default output format is one compatible with ROOT
 88 The user can switch to a plaintext csv by uncommenting the corresponding macro command in output.mac (/analysis/useRoot false)
 89           
 90 Two data analysis scripts are provided for use with each output format:
 91 - for ROOT output (exp_microdosimetry.root), plot.C is provided. If the user intends to use this macro, ROOT must be installed (http://root.cern.ch/drupal/)
 92 - for csv output (exp_microdosimetry_*.csv), 1_plot_distributions.py and 2_calculate_means_rbe.py (in this order). If the user intends to use these macros, Python 3 must be installed (https://www.python.org/)
 93 Both scripts plot the microdosimetric spectrum resulting from the simulation, calculate the microdosimetric means, and provide one or more RBE estimates (this is just provided as an example, and the user is encouraged to look into RBE modelling himself)
 94 
 95 ------------------------------------------------------------------------
 96 ----> 3.How to run the example.                                         
 97 
 98 - Batch mode:
 99   ./exp_microdosimetry run.mac
100                                                                        
101 - Interative mode:                                                      
102   ./exp_microdosimetry
103    vis.mac is the default macro, executed in interactive mode.         
104                                                                          
105 ---------------------------------------------------------------------------------
106 ----> 4. Primary radiation Field
107 
108 The radiation field is defined with the General Particle Source.
109 Look at the macro primary.mac .
110 
111 NOTE: To maximise efficiency the field has been modelled with a limiting angle to reduce redundant events.
112 
113 This macro contains a proton field of Galactic Cosmic Rays (GCR)
114 If this example is used for medical applications (with a water phantom) the user is encouraged to replace this macro with one that might simulate a therapeutic beam of interest
115                                                                        
116 ------------------------------------------------------------------------
117 ----> 5. Simulation output                                               
118 
119 **** SEQUENTIAL MODE
120 The output is radioprotection.root, containing 
121   - an ntuple with the A, Z, and energy of the secondary particles originated in the diamond microdosimeters.                  
122   - an ntuple withe the energy spectrum (in MeV) of primary particles.
123   - an ntuple with the energy deposition per event(in keV)  in the SV.                                                          
124 
125 When outputting to plaintext csv a separate file is used for each ntuple, following the naming scheme:
126 radioprotection_nt_10?.csv
127 
128 where ? is the number of the ntuple
129 
130 
131 **** MULTITHREAD mode
132 output files:
133 exp_microdosimetry.root_t0
134 ..
135 ..
136 exp_microdosimetry.root_t#
137 
138 where # is the number of threads
139 
140 When outputting to plaintext csv a separate file is used for each ntuple, following the naming scheme:
141 exp_microdosimetry_nt_10?_t#.csv
142 
143 where ? is the number of the ntuple
144 
145 
146 when using ROOT type: source MergeFiles to merge the output of each thread in a single one
147 when using Python, the first script takes care of parsing and merging the ntuples
148 
149 -------------------------------------------------------------------------------
150 ----> 6.Visualisation                                                     
151 
152 a macro is provided ad example of visualisation:  vis.mac 
153 
154 For any problem or question please contact Susanna Guatelli, susanna@uow.edu.au
155 
156 -------------------------------------------------------------------------------
157 ----> 7. Analysis                                                     
158 Two sets of macro:
159 - ProcessMicro.C for ROOT output
160 - 1_plot_distributions.py and 2_calculate_means_rbe.py (to be executed in this order) for csv output
161 
162 Each macro performs analysis of the energy deposition stored in the ntuple and performs the following microdosimetry operations:
163 -Bins the event by event energy deposition stored in the ntuple into a histogram (both with linear and logarithmic binning) and converts to lineal energy 
164 -Calculates the quantities: mean lineal energy (yF), the dose mean lineal energy (yD), the quality factor (Q) using the weighting factors from the ICRP 60 report
165 -In addition to these quantities the macro also calculates an estimate for the RBE using the modified MK model. This model is not generally used for shielding/radiation proction but in hadron therapy, but is provided for interest.
166 -The Python macro also includes an RBE estimate via weight function. For more info about this RBE model, see T. Loncol et al, “Radiobiological Effectiveness of Radiation Beams with Broad
167 LET Spectra: Microdosimetric Analysis Using Biological Weighting Functions”, Radiation Protection Dosimetry 52.1-4, pp. 347–352, 1994
168 -The macro also generates the common "microdosimetric spectra" or yd(y) in a semi-log plot
169 
170 When using the two-stage detector (5), no analysis script is currently included for the second stage
171 
172 ------------------------------------------------------------------------------
173 -----> Future developments
174 
175 1) Further macros will be included for placing a variable number of sensitive volumes
176 2) A new macro messenger will be included to allow the user to stop the simulation after a given number of recorded events, in order to have more control over the statistics of the simulation
177 3) A new script will be added to provide a dE-E plot for use with the telescope detector (5)