The applications entitled ERYA-Bulk and ERYA-Profiling (ERYA stands for Emitted Radiation Yield Analysis) are two programs which implement PIGE (Particle Induction Gamma-Ray Emission) analysis of samples which can be either homogeneous (handled by ERYA-Bulk) or heterogeneous (with multiple layers, which are simulated by ERYA-Profiling).The homogeneous model uses an analytical method to evaluate the nuclear yield as function of the mass fraction of the element(s) of interest. A routine is available to fit the experimental yields in order to compute the correct sample atomic composition.Otherwise, the heterogeneous model takes consideration of the physics with greater detail, including straggling in the energy lost by the projectiles, making a more realistic yield simulation, whose level of accuracy the user can control in exchange of computational time.Here, we present the latest developments of these codes, which include new features, functionalities and direct handling of different source files. ERYA-Bulk and ERYA-Profiling are currently compiled and tested for Linux, Windows and Mac OS X operating systems. Program summaryProgram Title: ERYA-Bulk, ERYA-ProfilingCPC Library link to program files:https://doi.org/10.17632/gnrvm4jt5v.1Developer's repository link:https://github.com/Arucard1983/ERYA-Bulk (ERYA-Bulk), https://github.com/Arucard1983/ERYA-Profiling (ERYA-Profiling)Licensing provisions: LGPL-v3Programming language: C++External routines: wxWidgets [1], wxMathPlot [2]Nature of problem: Compute the gamma-ray yield coming from a sample bombarded by a energetic (few MeV) beam of charged particles (namely protons). The yield corresponding to a given element depends on the mass fraction of this element and on the major composition of the sample which determines the rate of energy loss by the beam. It also depends on the detector efficiency, the collected beam charge (i.e., number of projectiles) and the cross-sections of the relevant gamma-producing nuclear reaction.All data inputs can be loaded from a file or inserted by the user. The energy straggling along the beam interaction with the sample, irrelevant for bulk analysis, is determinant for depth profiling.Solution method: The yield calculation is made by numerical integration of an analytical formula that depends on several quantities which can be analytical in nature or approximated by interpolation (the cross-section data interpolation is one example).The straggling and energy dispersion also depends on energy distributions which have different numerical approximations. A modular approach using the object-oriented programming helps to implement different models to the main integration routine, and make the source code more readable and prone for future extensions.A fitting feature was implemented on ERYA-Bulk to adjust the sample composition to the experimental yield results.
Read full abstract