EGS (program)
The EGS (Electron Gamma Shower) computer code system is a general purpose package for the Monte Carlo simulation of the coupled transport of electrons and photons in an arbitrary geometry for particles with energies from a few keV up to several hundreds of GeV. It originated at SLAC but National Research Council of Canada and KEK have been involved in its development since the early 80s. Development of the original EGS code ended with version EGS4. Since then two groups have re-written the code with new physics: EGSnrc. EGSnrc is a general-purpose software toolkit that can  be applied to build Monte Carlo simulations of coupled electron-photon transport, for particle energies ranging from 1 keV to 10 GeV. It is widely used internationally in a variety of radiation-related fields. The EGSnrc implementation improves the accuracy and precision of the charged particle transport mechanics and the atomic scattering cross-section data. The charged particle multiple scattering algorithm allows for large step sizes without sacrificing accuracy - a key feature of the toolkit that leads to fast simulation speeds. EGSnrc also includes a C++ class library called egs++ that can be used to model elaborate geometries and particle  sources. EGSnrc is open source and distributed on GitHub under the GNU Affero General Public License. Download EGSnrc for free, submit bug reports, and contribute pull requests on a group GitHub page. The documentation for EGSnrc is also available online. EGSnrc is distributed with a wide range of applications that utilize the radiation transport physics to calculate specific quantities. These codes have been developed by numerous authors over the lifetime of EGSnrc to support the large user community. It is possible to calculate quantities such as absorbed dose, kerma, particle fluence, and much more, with complex geometrical conditions. One of  the most well-known EGSnrc applications is BEAMnrc, which was developed as part of the OMEGA project. This was a collaboration between the National Research Council of Canada and a research group at the University of Wisconsin–Madison. All types of medical linear accelerators can be modelled using the BEAMnrc's component module system.