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