Results and analysis
Table of contents
- Implementation overview
- ROOT Analysis files
- Note about python import in ROOT
- Text analysis files
- References
Implementation overview
As the simulation runs, it keeps track of three main elements in relation to DNA damage.
- Energy depositions in each chromosome
- Energy depositions and track length in the cell
- DNA damage in the DNA geometry
At the end of each event, the DNA damage events are collected and analysed, reconstructing the damage pattern in the DNA and assigning it a complexity.
In the damage model, a probability is assigned that certain events cause strand breaks (i.e. \(Pr(\ce{e^{-}_{aq}} + \mathrm{Sugar} \rightarrow \mathrm{SSB})\)). These conditions are tested at the end of each event when the analysis runs to determine the damage that occurs.
At the completion of the run, the following outputs in a ROOT file are saved:
Histograms
- SSB counter (ssb_counts)
- Deposit energy in SSBs (ssb_energies_ev)
- DNA fragment size
- Strand interaction positions
Tuples
- Primary Source
- Primary
- Energy
- PosX in um
- PosY in um
- PosZ in um
- Momentum X
- Momentum Y
- Momentum Ζ
- Source (Break Source Frequency)
- Primary
- Energy
- None
- SSBd
- SSBi
- SSBm
- DSBd
- DSBi
- DSBm
- DSBh
- Damage (DNA damage locations)
- Event
- Primary
- Energy
- TypeClassification
- SourceClassification
- Position_x_um
- Position_y_um
- Position_z_um
- Size_nm
- FragmentLength
- BaseDamage
- StrandDamage
- DirectBreaks
- IndirectBreaks
- EaqBaseHits
- EaqStrandHits
- OHBaseHits
- OHStrandHits
- HBaseHits
- HStrandHits
- EnergyDeposited_eV
- InducedBreaks
- Chain
- Strand
- BasePair
- Name
ROOT Analysis files
An output ROOT data file (molecular-dna.root) is created by the simulation. ROOT6.x should be installed.
Several ROOT macro files are provided to analyse the corresponding results:
- cylinders.C : to plot damage from cylinders geometry
- phage.C : to plot damage from phage geometry
- plasmid.C : to plot damage from plasmid geometry
- ecoli.C : to plot damage from E.coli geometry
- human_cell.C, human_cell_alphas.C and human_cell_chromosomes.C: to plot damage and fragments distribution from human cell geometries (as in [3] for human_cell_alphas.C, as in [4] for human_cell_chromosomes.C)
Simply do:
root cylinders.C
These macros calculate mean quantities and the associated standard error of the mean (SEM) [5].
A python macro file is provided to modify ROOT output in SDD [2] file format:
- createSDD.py : to use it, insert the command “python3 createSDD.py”. If error with ROOT, simply source /path/to/root/bin/thisroot.(c)sh, do “pip install pyroot” and try again.
Note about python import in ROOT
If python cannot import ROOT, please configure your ROOT version to include PyROOT.
For further instruction refer to the documentation of ROOT, paragraph 19.1.4.2, see link.
Text analysis files
Individual damage files can ge generated to display graphically hits on strands, using the command:
analysisDNA/saveStrands
They use the following naming scheme:
- “D” for a direct damage
- “I” for an indirect damage
- ”~” if hit without damage
- ”-“ if not hit
- “X” for bith damage types
The numbers 6 and 7 represent damage source and damage complexity, respectively.
References
[1] Computational modelling of lowenergy electron-induced DNA damage by early physical and chemical events, H. Nikjoo et al., Int. J. Radiat. Biol. 71 (1997) 467–483 - link
[2] A new standard DNA damage (SDD) data format, J. Schuemann et al., Rad. Res. 191 (2019) 76-92 - link
[3] Geant4-DNA simulation of human cancer cells irradiation with helium ion beams, K. Chatzipapas et al., Phys. Med. 112 (2023) 102613 - link
[4] Development of a novel computational technique to create DNA and cell geometrical models for Geant4-DNA, K. Chatzipapas et al., Phys. Med. 127 (2024) 104389 - link
[5] What to use to express the variability of data: Standard deviation or standard error of mean?, Mohini P. Barde, Prajakt J. Barde, Perspectives in Clinical Research 3(3) (2012) 113-116 - link