|
Gimenez-Alventosa, V., Gimenez, V., & Oliver, S. (2021). PenRed: An extensible and parallel Monte-Carlo framework for radiation transport based on PENELOPE. Comput. Phys. Commun., 267, 108065–12pp.
Abstract: Monte Carlo methods provide detailed and accurate results for radiation transport simulations. Unfortunately, the high computational cost of these methods limits its usage in real-time applications. Moreover, existing computer codes do not provide a methodology for adapting these kinds of simulations to specific problems without advanced knowledge of the corresponding code system, and this restricts their applicability. To help solve these current limitations, we present PenRed, a general-purpose, standalone, extensible and modular framework code based on PENELOPE for parallel Monte Carlo simulations of electron-photon transport through matter. It has been implemented in C++ programming language and takes advantage of modern object-oriented technologies. In addition, PenRed offers the capability to read and process DICOM images as well as to construct and simulate image-based voxelized geometries, so as to facilitate its usage in medical applications. Our framework has been successfully verified against the original PENELOPE Fortran code. Furthermore, the implemented parallelism has been tested showing a significant improvement in the simulation time without any loss in precision of results. Program summary Program title: PenRed: Parallel Engine for Radiation Energy Deposition. CPC Library link to program files: https://doi .org /10 .17632/rkw6tvtngy.1 Licensing provision: GNU Affero General Public License (AGPL). Programming language: C++ standard 2011. Nature of problem: Monte Carlo simulations usually require a huge amount of computation time to achieve low statistical uncertainties. In addition, many applications necessitate particular characteristics or the extraction of specific quantities from the simulation. However, most available Monte Carlo codes do not provide an efficient parallel and truly modular structure which allows users to easily customise their code to suit their needs without an in-depth knowledge of the code system. Solution method: PenRed is a fully parallel, modular and customizable framework for Monte Carlo simulations of the passage of radiation through matter. It is based on the PENELOPE [1] code system, from which inherits its unique physics models and tracking algorithms for charged particles. PenRed has been coded in C++ following an object-oriented programming paradigm restricted to the C++11 standard. Our engine implements parallelism via a double approach: on the one hand, by using standard C++ threads for shared memory, improving the access and usage of the memory, and, on the other hand, via the MPI standard for distributed memory infrastructures. Notice that both kinds of parallelism can be combined together in the same simulation. Moreover, both threads and MPI processes, can be balanced using the builtin load balance system (RUPER-LB [30]) to maximise the performance on heterogeneous infrastructures. In addition, PenRed provides a modular structure with methods designed to easily extend its functionality. Thus, users can create their own independent modules to adapt our engine to their needs without changing the original modules. Furthermore, user extensions will take advantage of the builtin parallelism without any extra effort or knowledge of parallel programming. Additional comments including restrictions and unusual features: PenRed has been compiled in linux systems withg++ of GCC versions 4.8.5, 7.3.1, 8.3.1 and 9; clang version 3.4.2 and intel C++ compiler (icc) version 19.0.5.281. Since it is a C++11-standard compliant code, PenRed should be able to compile with any compiler with C++11 support. In addition, if the code is compiled without MPI support, it does not require any non standard library. To enable MPI capabilities, the user needs to install whatever available MPI implementation, such as openMPI [24] or mpich [25], which can be found in the repositories of any linux distribution. Finally, to provide DICOM processing support, PenRed can be optionally compiled using the dicom toolkit (dcmtk) [32] library. Thus, PenRed has only two optional dependencies, an MPI implementation and the dcmtk library.
|
|
|
Oliver, S., Gimenez-Alventosa, V., Berumen, F., Gimenez, V., Beaulieu, L., Ballester, F., et al. (2023). Benchmark of the PenRed Monte Carlo framework for HDR brachytherapy. Z. Med. Phys., 33(4), 511–528.
Abstract: Purpose: The purpose of this study is to validate the PenRed Monte Carlo framework for clinical applications in brachytherapy. PenRed is a C++ version of Penelope Monte Carlo code with additional tallies and utilities. Methods and materials: Six benchmarking scenarios are explored to validate the use of PenRed and its improved bachytherapy-oriented capabilities for HDR brachytherapy. A new tally allowing the evaluation of collisional kerma for any material using the track length kerma estimator and the possibility to obtain the seed positions, weights and directions processing directly the DICOM file are now implemented in the PenRed distribution. The four non-clinical test cases developed by the Joint AAPM-ESTRO-ABG-ABS WG-DCAB were evaluated by comparing local and global absorbed dose differences with respect to established reference datasets. A prostate and a palliative lung cases, were also studied. For them, absorbed dose ratios, global absorbed dose differences, and cumulative dose-volume histograms were obtained and discussed. Results: The air-kerma strength and the dose rate constant corresponding to the two sources agree with the reference datatests within 0.3% (Sk) and 0.1% (K). With respect to the first three WG-DCAB test cases, more than 99.8% of the voxels present local (global) differences within +/- 1%(+/- 0.1%) of the reference datasets. For test Case 4 reference dataset, more than 94.9%(97.5%) of voxels show an agreement within +/- 1%(+/- 0.1%), better than similar benchmarking calculations in the literature. The track length kerma estimator scorer implemented increases the numerical efficiency of brachytherapy calculations two orders of magnitude, while the specific brachytherapy source allows the user to avoid the use of error-prone intermediate steps to translate the DICOM information into the simulation. In both clinical cases, only minor absorbed dose differences arise in the low-dose isodoses. 99.8% and 100% of the voxels have a global absorbed dose difference ratio within +/- 0.2%for the prostate and lung cases, respectively. The role played by the different segmentation and composition material in the bone structures was discussed, obtaining negligible absorbed dose differ-ences. Dose-volume histograms were in agreement with the reference data.Conclusions: PenRed incorporates new tallies and utilities and has been validated for its use for detailed and precise high-dose-rate brachytherapy simulations.
|
|