Presentation is loading. Please wait.

Presentation is loading. Please wait.

Geant4 review from the aspect of a GATE developer and user Nicolas Karakatsanis.

Similar presentations


Presentation on theme: "Geant4 review from the aspect of a GATE developer and user Nicolas Karakatsanis."— Presentation transcript:

1 Geant4 review from the aspect of a GATE developer and user Nicolas Karakatsanis

2 Contents Tracking in parameterized volumes Tracking in parameterized volumes Performance of Geant4 with large voxelized phantoms Performance of Geant4 with large voxelized phantoms Profiling of GATE-GEANT4 performance Profiling of GATE-GEANT4 performance Variance Reduction Techniques with GEANT4 Variance Reduction Techniques with GEANT4 GEANT4 implementation of the ion source GEANT4 implementation of the ion source Radioactive Decay Module Radioactive Decay Module Dosimetry in GEANT4 Dosimetry in GEANT4 Further suggestions from the medical community Further suggestions from the medical community

3 Tracking in parameterized volumes Tracking in parameterized volumes In SPECT a detector is typically made of a scintillator capturing gammas emitted from a patient tracer. In SPECT a detector is typically made of a scintillator capturing gammas emitted from a patient tracer. In front of such a detector is a lead block with circa 150.000 air holes In front of such a detector is a lead block with circa 150.000 air holes In parallel beam applications all these holes have an identical form and are aligned along a rectangular grid. In parallel beam applications all these holes have an identical form and are aligned along a rectangular grid. We can model such a parallel beam collimator using arrays (repeaters) or using Geant4 replicas. We can model such a parallel beam collimator using arrays (repeaters) or using Geant4 replicas. Both options are available in GATE but for distributed computing only replicas are used since building the geometry goes fast (almost no overhead on a cluster). Both options are available in GATE but for distributed computing only replicas are used since building the geometry goes fast (almost no overhead on a cluster).

4 Tracking in parametrized volumes However also applying However also applying Fan collimators (oriented towards a focal line) Fan collimators (oriented towards a focal line) cone beam collimators (oriented towards a focal spot) cone beam collimators (oriented towards a focal spot) Hence, every individual hole has another form/orientation Hence, every individual hole has another form/orientation which can be pre-calculated and described in a closed analytical expression which can be pre-calculated and described in a closed analytical expression To model such collimators To model such collimators GATE uses G4 parametrised volumes. GATE uses G4 parametrised volumes. Building the geometry goes fast and flawless. Building the geometry goes fast and flawless. The tracking however is multiple orders slower The tracking however is multiple orders slower probably because every time a particle hits the collimator every form and distance is recalculated. probably because every time a particle hits the collimator every form and distance is recalculated.

5 Tracking in parametrized volumes Temporary solution Temporary solution Design of a "flying hole array“ Design of a "flying hole array“ only takes the 20 neighbouring holes around the interaction site into account. only takes the 20 neighbouring holes around the interaction site into account. Limitation if the energy of the gammas increases Limitation if the energy of the gammas increases because then can travel through many of the lead lamella, crossing over multiple holes (not known before how many holes) because then can travel through many of the lead lamella, crossing over multiple holes (not known before how many holes) Question Question How to increase calculation speed in an application with more than 10^4 parametrized inserts in one volume How to increase calculation speed in an application with more than 10^4 parametrized inserts in one volume Contact: Steven Staelens : steven.staelens@ugent.be steven.staelens@ugent.be

6 Performance of Geant4 with large voxelized phantoms Problem: Problem: The simulation time for a voxelized phantom in GATE is prohibitive (dependent on the number of total voxels). The simulation time for a voxelized phantom in GATE is prohibitive (dependent on the number of total voxels). This is a bottleneck in GATE when using voxelized phantom. This is a bottleneck in GATE when using voxelized phantom. Question Question Couldn't some implementation in Geant4 reduce this computing time? Couldn't some implementation in Geant4 reduce this computing time?

7 Performance of Geant4 with large voxelized phantoms Our analysis: Our analysis: Geant4 forces one step in material region boundary Geant4 forces one step in material region boundary This feature could be one of most important (if not the most important) factors that affects simulation speed when using large voxelised phantoms This feature could be one of most important (if not the most important) factors that affects simulation speed when using large voxelised phantoms Because G4 is dealing with each voxel as a different material region Because G4 is dealing with each voxel as a different material region Possible solution Possible solution If the material in one voxel is the same as that in its neighboring voxel, If the material in one voxel is the same as that in its neighboring voxel, Treat those two voxels as one region (no region boundary between those two voxels) Treat those two voxels as one region (no region boundary between those two voxels) Check that condition for all voxels Check that condition for all voxels

8 Performance of Geant4 with large voxelized phantoms Possible solution (..continue) Possible solution (..continue) Create an option in stepping function Create an option in stepping function to test if the material in next region is the same as current one. to test if the material in next region is the same as current one. If yes If yes no boundary is applied here and no boundary is applied here and a normal step is taken a normal step is taken A flag can turn on/off the previous option A flag can turn on/off the previous option

9 Performance of Geant4 with large voxelized phantoms Solution developed in GATE Solution developed in GATE A compressedMatrix phantom object can be used instead of the parameterizedBoxMatrix A compressedMatrix phantom object can be used instead of the parameterizedBoxMatrix generate a compressed phantom where voxel size is variable generate a compressed phantom where voxel size is variable All adjacent voxels of the same material are fused together to form the largest possible rectangular voxel. All adjacent voxels of the same material are fused together to form the largest possible rectangular voxel. A compressed phantom uses A compressed phantom uses less memory and also less memory and also less CPU less CPU It is possible to exclude regions in the phantom from being compressed through the use of an "exclude list" of materials It is possible to exclude regions in the phantom from being compressed through the use of an "exclude list" of materials Question Question Using compressedMatrix phantom Using compressedMatrix phantom reduce the CPU time but only by maybe 30%. reduce the CPU time but only by maybe 30%. A more efficient way to track particles in a voxelized geometry is welcomed A more efficient way to track particles in a voxelized geometry is welcomed Contact: Richard Taschereau: RTaschereau@mednet.ucla.edu RTaschereau@mednet.ucla.edu

10 Profiling of GATE-Geant4 performance Profiling tools Profiling tools Grpof and Valgrind (GNU profiling tools) Grpof and Valgrind (GNU profiling tools) Profiling results indicate Profiling results indicate Use of voxelized maps Use of voxelized maps degrade Geant4 performance degrade Geant4 performance Significant increase of the computation time consumed by the method Significant increase of the computation time consumed by the method CLHEP :: Hep3vector G4ThreeVector which is used by the Geant4 class G4ParameterizedNavigation Geant4 navigation follows a voxel-to-voxel approach =>time-consuming approach Possible Solutions Possible Solutions Need for optimization Need for optimization Merging of neighboring voxels with similar attributes Merging of neighboring voxels with similar attributes Definition of maps using ray-tracing techniques Definition of maps using ray-tracing techniques Abandon discrete maps definition – introduce volume rendering Abandon discrete maps definition – introduce volume rendering

11 Profiling of GATE-Geant4 performance Contact for profiling results: Nicolas Karakatsanis : knicolas@mail.ntua.grknicolas@mail.ntua.gr

12 Profiling of GATE-Geant4 performance Further questions from the medical community Further questions from the medical community Profiling results indicate bottleneck caused by the G4 Navigator Profiling results indicate bottleneck caused by the G4 Navigator Will it be possible for GATE to define its own navigator that would inherit properties from the G4 navigator? Will it be possible for GATE to define its own navigator that would inherit properties from the G4 navigator?

13 Current VRT Implementations Variance Reduction Techniques (VRTs) Variance Reduction Techniques (VRTs) Importance sampling Importance sampling Photon splitting Photon splitting Russian roulette Russian roulette Weight window sampling Weight window sampling Weight roulette Weight roulette Scoring Scoring A number of VRT implementations are already available in Geant4, but A number of VRT implementations are already available in Geant4, but Some of the Geant4 classes can be optimized more, Some of the Geant4 classes can be optimized more, Further classes implementing VRTs could be developed Further classes implementing VRTs could be developed

14 Suggested VRTs for Geant4 Alternative photon splitting technique for G4 Alternative photon splitting technique for G4 If the first photon of the annihilation pair is detected If the first photon of the annihilation pair is detected => second photon splits into multiple photons with equal weights and total weight sum of 1 => second photon splits into multiple photons with equal weights and total weight sum of 1 Degree of splitting depends on the probability of detection Degree of splitting depends on the probability of detection Probability is dependent on axial position and emission angle Probability is dependent on axial position and emission angle Therefore geometrical importance sampling is based on axial position and emission angle Therefore geometrical importance sampling is based on axial position and emission angle Therefore prior knowledge of the geometry of the detector systems is required Therefore prior knowledge of the geometry of the detector systems is required High detection probability => photon splits into a small number of secondary photons High detection probability => photon splits into a small number of secondary photons Low detection probability => photon splits into a large number of secondary photons Low detection probability => photon splits into a large number of secondary photons Result Result Accuracy is not affected Accuracy is not affected 3 – 4 times increase in efficiency of the application 3 – 4 times increase in efficiency of the application

15 Suggested VRTs for Geant4 Alternative photon–splitting technique for G4 (…continue) Alternative photon–splitting technique for G4 (…continue) Second photon-splitting – avoid adding noise to scatter estimation Second photon-splitting – avoid adding noise to scatter estimation If the first photon is detected without having undergone Compton interaction If the first photon is detected without having undergone Compton interaction Second photon splits at the annihilation point Second photon splits at the annihilation point Else if the second photon is detected Else if the second photon is detected First photon splits at the Compton interaction point First photon splits at the Compton interaction point Else Else No coincidence is recorded No coincidence is recorded Repeat previous steps for each event Repeat previous steps for each event Addition photon transport algorithms could be implemented Addition photon transport algorithms could be implemented Delta scattering including energy discrimination Delta scattering including energy discrimination Flags implementation Flags implementation user can easily activate or not the various VRT options user can easily activate or not the various VRT options

16 Suggested actions regarding VRTs Collaboration between Collaboration between GATE VRTs workgroup GATE VRTs workgroup Geant4 VRTs workgroup Geant4 VRTs workgroup Aim of collaboration Aim of collaboration Determination of the existing G4 classes need to be optimized Determination of the existing G4 classes need to be optimized Determination of further G4 classes possibly needed to be implemented Determination of further G4 classes possibly needed to be implemented Implementation of GATE-specific classes within the Geant4 framework Implementation of GATE-specific classes within the Geant4 framework Publication of a GATE-specific patch for Geant4 Publication of a GATE-specific patch for Geant4 Suggested VRTs for Geant4 follow: Suggested VRTs for Geant4 follow: Implementation of flags (probably at GATE) for each one of the following VRTs Implementation of flags (probably at GATE) for each one of the following VRTs => VRTs should be activated or deactivated by the user => VRTs should be activated or deactivated by the user Contact: Nicolas Karakatsanis : knicolas@mail.ntua.gr knicolas@mail.ntua.gr

17 GEANT4 – VRTs implementation Further questions regarding VRTs implementation at Geaant4 Further questions regarding VRTs implementation at Geaant4 Are there any validation data regarding the variance reduction techniques currently available in Geant4? Are there any validation data regarding the variance reduction techniques currently available in Geant4? Are people actually using them? Are people actually using them? Who are the persons involved in Who are the persons involved in the developments of VRT and the developments of VRT and the validation of these techniques? the validation of these techniques?

18 G4 implementation of the Ion source G4 Ion source implementation problem G4 Ion source implementation problem Too many memory leaks Too many memory leaks => leading to abnormal termination of lengthy simulations => leading to abnormal termination of lengthy simulations Contact: Nicolas Karakatsanis : knicolas@mail.ntua.grknicolas@mail.ntua.gr

19 RDM (radioactive decay module) Is it efficient, in terms of computational time, for instance when considering sources such as Is it efficient, in terms of computational time, for instance when considering sources such as Fluorine 18 or Fluorine 18 or Iodine 124 ? Iodine 124 ? Computational problems arise when Computational problems arise when we have to simulate billions of such decays we have to simulate billions of such decays

20 Dosimetry with GEANT4 Comparisons between GEANT4 and other codes in the past indicate Comparisons between GEANT4 and other codes in the past indicate always some discrepancies between GEANT and the other MC codes, like EGS4 (more or less the gold standard) always some discrepancies between GEANT and the other MC codes, like EGS4 (more or less the gold standard) When performing "Rogers' > experiment" using GATE(GEANT4), EGS and MCNP, When performing "Rogers' > experiment" using GATE(GEANT4), EGS and MCNP, observe differences in absorbed dose at boundaries between materials. observe differences in absorbed dose at boundaries between materials. Therefore problem seems to be associated with both Therefore problem seems to be associated with both the set of low energy processes used and the set of low energy processes used and particle transport particle transport

21 Dosimetry with GEANT4 Problem Problem Option between two sets of low energy processes viz. "Penelope" and "low > energy“ Option between two sets of low energy processes viz. "Penelope" and "low > energy“ A little bewildering A little bewildering Both sets yield different results Both sets yield different results The simple user have to pick the one that is "right" for him The simple user have to pick the one that is "right" for him Suggestion Suggestion Only one is necessary -> the "right“ one Only one is necessary -> the "right“ one Question Question Which set of low energy processes should be chosen for dosimetry purpose? Which set of low energy processes should be chosen for dosimetry purpose? Any data regarding the validation of absorbed dose as calculated using Geant4? Any data regarding the validation of absorbed dose as calculated using Geant4?

22 Using G4 for medical applications – Further suggestions Build-in Profiling features (time-profiling) a verbose option could display the average time (and RAM ?) spent for each physical processes, for the stepping process, for the navigation part and for the initialisation part Makefile management improvement Cmake management tool easier maintenance and smoother linking of third-party libraries especially important for medical applications, often linked with other software or libraries (e.g. image management)

23 Using G4 for medical applications – Further suggestions Voxelized scene Voxelized scene a bug with the Nested parameterisation? David Sarrut exchanged mail with G4 developer community slight differences with conventional parameterisations not a problem due to roundoff error or machine precision probably a problem which occurs in some infrequent situation (particle moving along boundary...) A class managing a 3D matrix of objects (voxels) should be useful for image management, 3D distribution of measurables for example deposit dose but also any other measurable such as Beta+ emitters different from the way such matrix is represented for navigation (parameterized volume, G4Boxs or other) 3D managing class characteristics 3D managing class characteristics Fast voxel access voxel spacing management capabilities to store any object type visualization features, storing, retrieving... David Sarrut is ready to help build such class David Sarrut is ready to help build such class

24 Using G4 for medical applications – Further suggestions The documentation on the facrange (facgeom and related) parameters seems important for medical application users “Wiki” documentation cooperative community-build documentation in a “wiki” format interesting way to improve the documentation, particularly in the developer section “Wiki” technology is now well known and mature allows any user to modify and improve the on-line documentation Our experience shows that is very efficient and it also encourages information exchange in the community Contact for these questions: David.Sarrut@creatis.insa-lyon.fr buvat@imed.jussieu.fr

25 Beta Ray Point Source Distributions Using GEANT4 – Comparative Study Aim calculate doses from extended source distributions in homogeneous media averaging doses over finite volumes Basic Method Calculate dose-point-kernels in an infinite water medium Definition: radial distributions of dose around isotropic point sources of electrons or beta emitters.

26 Beta Ray Point Source Distributions Using GEANT4 – Comparative Study L. Maigne, C.O. Thiam Laboratoire de Physique Corpusculaire, 24 avenue des Landais, 63177 AUBIERE cedex

27 Beta Ray Point Source Distributions Using GEANT4 – Comparative Study Method Method In Monte Carlo simulations, the dose around a point source is obtained by scoring the energy deposited in thin concentric spherical shells around the source per particle decay Dose estimation techniques exist for photons the linear track length kerma estimator of Williamson estimates the kerma by scoring tracks crossing a volume But no alternatives for electrons

28 Beta Ray Point Source Distributions Using GEANT4 – Comparative Study where:   r is the radial distance to the middle of the spherical shells   rE the nominal CSDA range   ρ the density of the medium   D(r,E) the dose per incident particle at distance r Scoring of energy deposited in spherical shells =>  obtain dose point kernels in water for 50keV, 100 keV, 200 keV, 1MeV and 4 MeV monoenergetic electron point sources The dose distribution is converted into a dimensionless quantity

29 Beta Ray Point Source Distributions Using GEANT4 – Comparative Study Comparison of G4 Versions (50keV, 100keV)

30 Beta Ray Point Source Distributions Using GEANT4 – Comparative Study Comparison of G4 Versions (1MeV, 2MeV)

31 Beta Ray Point Source Distributions Using GEANT4 – Comparative Study Comparison of G4 Versions (3MeV, 4MeV)

32 Beta Ray Point Source Distributions Using GEANT4 – Comparative Study Conclusion High discrepancies between G4.5 and G4.6, G4.6 and G4.7 => Possible cause: Multiple scattering implementation?

33 Beta Ray Point Source Distributions Using GEANT4 – Comparative Study Comparison of Geant4 with other MC calculations ( kinetic energy = 50keV, 100keV ) Comparison of Geant4 with other MC calculations ( kinetic energy = 50keV, 100keV )

34 Beta Ray Point Source Distributions Using GEANT4 – Comparative Study Comparison of Geant4 with other MC calculations ( kinetic energy = 1MeV, 2MeV ) Comparison of Geant4 with other MC calculations ( kinetic energy = 1MeV, 2MeV )

35 Beta Ray Point Source Distributions Using GEANT4 – Comparative Study Comparison of Geant4 with other MC calculations ( kinetic energy = 3MeV, 4MeV ) Comparison of Geant4 with other MC calculations ( kinetic energy = 3MeV, 4MeV )

36 Beta Ray Point Source Distributions Using GEANT4 – Comparative Study Conclusion Conclusion High discrepancies between Geant4.8 and other MC packages (around 10%) High discrepancies between Geant4.8 and other MC packages (around 10%) Possible reason: still undefined Possible reason: still undefined

37 Beta Ray Point Source Distributions Using GEANT4 – Comparative Study Study of G4example TestEm5 Study of G4example TestEm5 Transmission of electrons through a thin layer of water (1.02 mm). Layer at 1.273 cm from the monoenergetic electron source World filled with air. Energy of electrons is 4 MeV. One million of electrons have been generated Influence of the angular distribution for different G4 versions on electron multi-scattering simulation Influence of the angular distribution for different G4 versions on electron multi-scattering simulation

38 Beta Ray Point Source Distributions Using GEANT4 – Comparative Study Plotted the space angle of transmitted electrons at the exit of the water layer and the projected angle on the y and z direction of the same scattering angle (Note: cut-off value in range for electrons is 0.0043 mm, equivalent to 1 keV in air and 2 keV in water medium) Higher discrepancies between G4.8 and G4.6 due to multiple scattering implementation.

39 Dosimetric characteristics of an I125 Brachytherapy Source Using Geant4 – A comparative study L. Maigne, C.O. Thiam Laboratoire de Physique Corpusculaire, 24 avenue des Landais, 63177 AUBIERE cedex

40 Dosimetric characteristics of an I125 Brachytherapy Source Using Geant4 – A comparative study Source capsule 0.05 mm thick titanium tube, density of 4.54 g.cm^-3 Radioactive seed core cylindrical ceramic shell outer and inner diameters of 0.60 and 0.22 mm length of 3.50 mm density of 2.88 g.cm^-3 (Alumina Al2O3) Uniform activity distribution of 10^-22 MBq of 125-I Gold marker (inside the radioactive seed core) density of 19.32 g.cm^-3, 0.17 mm diameter Length of 3.5 mm long permits radiographic localisation of the seed

41 Dosimetric characteristics of an I125 Brachytherapy Source Using Geant4 – A comparative study 2D dose distribution around cylindrically symmetric sources, the dose rate at point (r,θ) can be written as Line source model Line source model The radial dose function g(r) accounts for the effects of absorption and scatter in the medium along the transverse axis of the source 2D anisotropy function F(r, theta) describes the variation in dose as a function of polar angle relative to the transverse plane

42 Dosimetric characteristics of an I125 Brachytherapy Source Using Geant4 – A comparative study Considering the 125-I brachytherapy sources, the simulations were performed in liquid water 1 476 000 gamma particles were generated for each simulations Cut applied on the electrons is 1 meter High enough because the maximum range of secondary electrons is small comparing to the recovering ring dimensions. The cut on X-rays is fixed to 1 keV

43 Dosimetric characteristics of an I125 Brachytherapy Source Using Geant4 – A comparative study Comparison of G4 Standard / Low Energy

44 Dosimetric characteristics of an I125 Brachytherapy Source Using Geant4 – A comparative study Comparison of G4 Versions (Low-Energy package)

45 Dosimetric characteristics of an I125 Brachytherapy Source Using Geant4 – A comparative study Comparisons with other MC and measurements (low-energy package) Comparisons with other MC and measurements (low-energy package)

46 Dosimetric characteristics of an I125 Brachytherapy Source Using Geant4 – A comparative study Conclusions Conclusions Little discrepancies between Standard and Low Energy packages (7%), Better agreement between Low-energy package and other MC => to be explained Good agreement between G4 versions Good agreement with other Monte Carlo and measurements


Download ppt "Geant4 review from the aspect of a GATE developer and user Nicolas Karakatsanis."

Similar presentations


Ads by Google