Back to home page

EIC code displayed by LXR

 
 

    


Warning, /geant4/examples/advanced/exp_microdosimetry/README is written in an unsupported language. File is not indexed.

0001      ========================================================
0002                       Geant4 - exp_microdosimetry example
0003      =========================================================
0004 
0005                              README
0006                       ---------------------
0007 
0008 
0009 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)
0010 
0011 ------------------------------------------------------------------------
0012 
0013 Contact: susanna@uow.edu.au
0014          francesco.romano@ct.infn.it
0015          geant4-advanced-examples@cern.ch
0016         
0017 ------------------------------------------------------------------------
0018 
0019 List of external collaborators: 
0020 J. Magini and G. Parisi - University of Surrey, United Kingdom
0021 J. Davis and D. Bolst - University of Wollongong, NSW, Australia
0022 G. Milluzzo- INFN-Sezione di Catania, Catania, Italy
0023 
0024 -----------------------------------------------------------------
0025 ----> Introduction.                                                     
0026                                                                        
0027 The exp_microdosimetry example models different detectors for microdosimetry in space applications. The example lets the user
0028 choose between the models of a simplified diamond (1), a micro-diamond (2), a simplified silicon (3), a silicon microdosimeter (4), and a two-stage diamond detector (5):
0029 
0030 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 
0031 for radioprotection applications in space environments",IEEE Transactions on Nuclear Science, 
0032 Vol. 59, pp. 3110-3116, 2012.
0033 
0034 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.
0035 
0036 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.
0037 
0038 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 .
0039 
0040 The type of detectors, its shape, and its position can be set via the included "geometry.mac" macro.
0041 This macro is called in both the vis.mac and run.mac macro files, and include the following options:
0042 - a macro command to choose the type of detector between the above (/geometrySetup/selectDetector "...")
0043 - 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
0044 - two equivalent macro commands (/geometrySetup/detectorDimension/secondStage/...) to customise the second stage of the detector, if (5) is used
0045 - a macro command to choose whether to place the detector in vacuum or inside a water phantom (/geometrySetup/enableWaterPhantom "true/false")
0046 - a macro command for use with the water phantom to set the detector's width in water (/geometrySetup/detectorPosition/setDepth "...")
0047 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.
0048 
0049 An isotropic field of Galactic Cosmic Rays (GCR) protons is incident on the device. 
0050 The energy deposition is calculated in the sensitive detectors. 
0051  
0052 In particular in this example it is shown how to:
0053 - model a realistic isotropic field of GCRs by means of the General Particle Source   
0054 - model a realistic detector in Geant4
0055 - customise the detector's geometry and its position at runtime via macros
0056 - retrieve the information of secondary particles originated in the SV
0057 - define the physics by means of a Geant4 Modular Physics List
0058 - characterise the response of a realistic detector
0059 - save results in an analysis ROOT or plaintext csv file using the Geant4 analysis component.             
0060 
0061 The example can be executed in multithreading mode
0062 
0063 ------------------------------------------------------------------------
0064 ----> 1.Experimental set-up.                                            
0065 
0066 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).
0067 - 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.
0068 - 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.
0069 
0070 All SV structures are active.
0071 
0072 The primary radiation field is defined by means of the GeneralParticleSource in the file
0073 primary.mac
0074                            
0075 -------------------------------------------------------------------------
0076 ----> 2.SET-UP 
0077                                           
0078 A standard Geant4 example CMakeLists.txt is provided.                   
0079 
0080 Setup for analysis:
0081 By default, the example has no analysis component. 
0082 
0083 To compile and use the application with the analysis on, build the example with the following command:
0084 cmake -DWITH_ANALYSIS_USE=ON -DGeant4_DIR=/path/to/Geant4_installation /path/to/exp_microdosimetry example     
0085 
0086 When the analysis is enables, the default output format is one compatible with ROOT
0087 The user can switch to a plaintext csv by uncommenting the corresponding macro command in output.mac (/analysis/useRoot false)
0088           
0089 Two data analysis scripts are provided for use with each output format:
0090 - 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/)
0091 - 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/)
0092 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)
0093 
0094 ------------------------------------------------------------------------
0095 ----> 3.How to run the example.                                         
0096 
0097 - Batch mode:
0098   ./exp_microdosimetry run.mac
0099                                                                        
0100 - Interative mode:                                                      
0101   ./exp_microdosimetry
0102    vis.mac is the default macro, executed in interactive mode.         
0103                                                                          
0104 ---------------------------------------------------------------------------------
0105 ----> 4. Primary radiation Field
0106 
0107 The radiation field is defined with the General Particle Source.
0108 Look at the macro primary.mac .
0109 
0110 NOTE: To maximise efficiency the field has been modelled with a limiting angle to reduce redundant events.
0111 
0112 This macro contains a proton field of Galactic Cosmic Rays (GCR)
0113 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
0114                                                                        
0115 ------------------------------------------------------------------------
0116 ----> 5. Simulation output                                               
0117 
0118 **** SEQUENTIAL MODE
0119 The output is radioprotection.root, containing 
0120   - an ntuple with the A, Z, and energy of the secondary particles originated in the diamond microdosimeters.                  
0121   - an ntuple withe the energy spectrum (in MeV) of primary particles.
0122   - an ntuple with the energy deposition per event(in keV)  in the SV.                                                          
0123 
0124 When outputting to plaintext csv a separate file is used for each ntuple, following the naming scheme:
0125 radioprotection_nt_10?.csv
0126 
0127 where ? is the number of the ntuple
0128 
0129 
0130 **** MULTITHREAD mode
0131 output files:
0132 exp_microdosimetry.root_t0
0133 ..
0134 ..
0135 exp_microdosimetry.root_t#
0136 
0137 where # is the number of threads
0138 
0139 When outputting to plaintext csv a separate file is used for each ntuple, following the naming scheme:
0140 exp_microdosimetry_nt_10?_t#.csv
0141 
0142 where ? is the number of the ntuple
0143 
0144 
0145 when using ROOT type: source MergeFiles to merge the output of each thread in a single one
0146 when using Python, the first script takes care of parsing and merging the ntuples
0147 
0148 -------------------------------------------------------------------------------
0149 ----> 6.Visualisation                                                     
0150 
0151 a macro is provided ad example of visualisation:  vis.mac 
0152 
0153 For any problem or question please contact Susanna Guatelli, susanna@uow.edu.au
0154 
0155 -------------------------------------------------------------------------------
0156 ----> 7. Analysis                                                     
0157 Two sets of macro:
0158 - ProcessMicro.C for ROOT output
0159 - 1_plot_distributions.py and 2_calculate_means_rbe.py (to be executed in this order) for csv output
0160 
0161 Each macro performs analysis of the energy deposition stored in the ntuple and performs the following microdosimetry operations:
0162 -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 
0163 -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
0164 -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.
0165 -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
0166 LET Spectra: Microdosimetric Analysis Using Biological Weighting Functions”, Radiation Protection Dosimetry 52.1-4, pp. 347–352, 1994
0167 -The macro also generates the common "microdosimetric spectra" or yd(y) in a semi-log plot
0168 
0169 When using the two-stage detector (5), no analysis script is currently included for the second stage
0170 
0171 ------------------------------------------------------------------------------
0172 -----> Future developments
0173 
0174 1) Further macros will be included for placing a variable number of sensitive volumes
0175 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
0176 3) A new script will be added to provide a dE-E plot for use with the telescope detector (5)