{'fraction_non_alphanumeric': 0.0327677878009439, 'fraction_numerical': 0.018907939542386044, 'mean_word_length': 4.354070046377739, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 1, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 9, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
AlfaMC: a fast alpha particle transport Monte Carlo code

AlfaMC is a Monte Carlo simulation code for the transport of alpha particles. The code is based on the Continuous Slowing Down Approximation and uses the NIST/ASTAR stopping-power database. The code uses a powerful geometrical package allowing the coding of complex geometries. A flexible histogramming package is used which greatly easies the scoring of results. The code is tailored for microdosimetric applications where speed is a key factor. Comparison with the SRIM code is made for transmitted energy in thin layers and range for air, mylar, aluminum and gold. The general agreement between the two codes is good for beam energies between 1 and 12 MeV. The code is open-source and released under the General Public Licence.


Introduction
Alpha particles are highly ionizing and have low penetration in matter. Their energy ranges from 1.830 MeV ( 144 Nd) to 11.740 MeV ( 266m Mt) (Table, 2004) although most common alpha sources will emit particles in the 4 to 9 MeV range (Table, 2004). In condensed matter their range is typically below 100 µm, while in air at STP they can reach a few centimeters (Berger, 2011;Turner, 2007). The energy transfer from an alpha particle to atomic electron in a single collision is small. For non-relativistic particles of relative velocity β and  =1/1− 2 the maximum energy transfer T max to an electron of mass m e is approximately given by (Beringer, 2012) T max ≈2m e c 2 β 2 γ 2 where c is the speed of light. For an alpha particle of 10 MeV this results in a maximum energy transfer of only 5.4 keV. These electrons will lose their energy in the vicinity of the interaction point with the alpha particle and their transport can be neglected by the Monte Carlo code. Due to the alpha particle high mass, the emission of bremsstrahlung radiation at these energies is completely negligible. For these reasons the Continuous Slowing Down Approximation (CSDA) (Turner, 2007) which assumes that a charged particle loses energy continuously along its path at the linear rate given by the instantaneous stopping power is an adequate approximation at this energy range.
General purpose Monte Carlo programs as MCNPX, GEANT3, GEANT4 or FLUKA (Agostinelli, 2003;Allison, 2006;GEANT, 1993;MCNPX, 2012;FLUKA, 2012) can simulate the transport and energy loss of alpha particles in matter. They can simulate complex geometries, but their speed is in general low. The state-of-the-art SRIM program (SRIM, 2008;Ziegler, 1985) on the other hand is relatively fast but allows only simple slab geometry.
To overcome some of these problems several application specific codes have been developed. Unfortunately, for most of them there is a limited access to the code or even to documentation describing the underlying models.
There is thus the need for an open-source fast Monte Carlo package capable of dealing with complex geometries. The AlfaMC package was developed to fill this gap. The package is able to simulate complex geometrical bodies and spatially-distributed alpha particle sources. It has a sophisticated scoring and histogramming set of routines. The package uses the National Institute of Standards and Technology (NIST) ASTAR database where stopping powers for 74 materials (26 elements and 48 compounds and mixtures) are available. Stopping power data for new materials based on this set can be generated using the Alfamaterial.f program. The alpha particle transport is based on the Continuous Slowing Down Approximation. Gaussian or Landau distributed energy straggling is performed. A simple Fermi small-angle multiple scattering model is adopted.

Stopping-power computation
Charged particles interact with the electrons and nuclei of the medium primarily through the Coulomb electric force . For alpha particles most of these interactions individually transfer only minute fractions of the incident particle's kinetic energy. It is a convenient approximation to regard the alpha particle as losing its kinetic energy gradually and without hard collisions with the atomic electrons in a process referred to as the "Continuous Slowing-Down Approximation" (CSDA).
Based on the CSDA the AlfaMC code assumes that average energy loss per unit length is given by the unrestricted stopping power of the alpha particle.
where m= ln S 2 −ln S 1 ln E 2 −ln E 1 . (3) For unevenly spaced grids and non-linear functions and the logarithmic interpolation will give a better approximation to the function value than the one that can be obtained with a linear interpolation. The use of precomputed lookup tables greatly improves the computation time, since the computation of stopping powers is one of the most performed operations. The precomputed S value depends on the energy and its extraction from the table is made using the energy related index i=int(E*1000) since the table energy interval is 1/1000 MeV.

Energy straggling
The total continuous energy loss of an alpha particle is a stochastic quantity with a distribution often called the straggling function. In the tracking model followed by AlfaMC no secondary particles are produced and the continuous energy loss is unrestricted. For thick slabs the energy loss distribution approaches a Gaussian (Leo, 1994) but for thin traversed slabs other distributions can be considered (Leo, 1994;GEANT, 1993;Tsoulfanidis, 1995). A cut parameter κ can be defined to set the limit between the thin and thick slab as (GEANT, 1993;Leo, 1994) Δ E=κ T max where  E is the energy deposited in the slab and T max the maximum energy transfer in a single collision given by (Beringer, 2012) T max = 2 m e c 2 β 2 γ 2 1+2 γ m e /m α +m e 2 /m α 2 (4) where m  is the alpha particle mass.
Usually it is assumed that for 10 the Gaussian model is a good approximation, while for the intermediate values 0.01≤ 10 the straggling function follows a Vavilov distribution (Vavilov, 1957;Schorr, 1974). For lower κ values (ie ≤0.01 ) the energy straggling function is given by the Landau distribution (Leo, 1994).
The AlfaMC code has two options on what concerns the energy straggling. A first option uses only the Gaussian model. A second option uses the Gaussian/Vavilov/Landau models depending on the κ parameter. The latter option is more slower than the first one (three times slower on average). In most cases the difference introduced in the energy FWHM is small so the option to use only the Gaussian model is a reasonable one. This option is the program default. To choose between them the istrag flag is set via a call to the alSetStrag routine.
This call can be made anytime during the program execution. Thus, the user has the ability to switch between straggling models during a run. The routines needed to generate the Vavilov and Landau distributions are not native to AlfaMC and are supplied in a separate library.

The Gaussian distribution
If the number of collisions of the alpha particle with the atomic electrons when traversing an absorber is large and each energy loss can be considered as independent then the Central Limit Theorem can be applied. A Gaussian distribution is then expected for the energy loss in the absorber with a certain standard deviation. Several forms have been proposed for this Gaussian straggling distribution. The first form was proposed by N. Bohr in 1913(Bohr, 1913 and in his model the variance of the energy loss distribution is given as [Ramirez, 1969;Strittmatter, 1976;Chu, 1976] where e is the elementary charge,  0 the vacuum permittivity, N the number of atoms per unit volume,  x the slab thickness, Z the medium atomic number and z  the alpha particle atomic number. Since N= N A /A where ρ is the density, A the atomic weight and NA the Avogadro number, using the relation r e =1/4   0 e 2 /m e c 2 the variance can be written as with  x in cm and ρ in g/cm 3 . A quantum mechanical theory has been developed by Bethe andLivingston (Livingston 1937, Strittmatter, 1976;Tsoulfanidis, 1995) who found a value for the variance equal to where Z' is the the effective atomic number (Strittmatter, 1976) and Ii and Zi are the ionization potential and number of electrons of the i shell of the stopping atom. While the Bohr's result is independent of the particle energy, the Bethe-Linvingston's result has a small energy dependence, relevant for high energies (Tsoulfanidis, 1995).
More comprehensive theories have been developed for thick slabs such as the Payne (Payne, 1969) or Tschalar theories (Tschalar, 1970)  Berger (Schorr, 1974;Seltzer, 1964) which is suitable for a fast Monte Carlo. This formulation introduces a correction to the energy straggling variance depending on the particle relative velocity b and maximum energy transfer T max For alpha particles up to a few tens of MeV the correction introduced by this formula relative to  B is negligible. In fact since the maximum energy transfer in a single collision is given by eq. 4 in the limit m e ≪m  and ≈1 we get T max ≈2m e c 2 β 2 =1.022β 2 MeV. Under these conditions the relative velocity is much less than the unit so that (1−β 2 / 2)≈1 and finally  2 ≈ B 2 .

The Landau distribution
For very thin absorbers or gases the number of collisions can be too small for the Central Limit Theorem to hold. Large energy fluctuations are possible and the straggling function is no longer symmetrical. If the mean energy loss is approximated by the Bethe-Bloch constant the cut parameter will be given by =/T max . For ≤0.01 the straggling distribution is successfully described by the Landau theory. For an energy loss ε the Landau distribution f  , x  may be written in terms of a universal  function such as The Landau variable  is defined as (GEANT, 1993) where C=0.577215... is the Euler's constant. In AlfaMC the  is obtained from a modified version of the GEANT3 routine GLANDG (GEANT, 1993).

The Vavilov distribution
For intermediate thickness absorbers where 0.01≤ 10 the energy loss distribution can be obtained from the Vavilov theory. This theory relates the energy loss distribution f  , x  of a charged particle with an universal function  v  v , , 2  just in the same way as the Landau theory where the Vavilov variable  v is defined as (GEANT, 1993) The Vavilov  v is related to  by the relation (GEANT, 1993) = v /−ln  and the relation between  and the energy loss is AlfaMC uses the GVAVIV routine from GEANT3. This routine samples the  Landau instead of the  v variable.

Alpha particle multiple scattering
An alpha particle traversing a medium is deflected through many small-angles, mostly due to Coulomb scattering from nuclei. The distribution of the scattering angle after traversing a small layer is roughly Gaussian for small angle values. At larger angles (greater than a few standard deviations) the distribution has a Rutherford scattering-like behavior, with larger tails than those of a Gaussian distribution. The Molière's (Bethe 1953) and Fermi's (Rossi, 1941) theories have been widely used to describe the multiple scattering of heavy charged particles.
The theory of Fermi results in the Gaussian approximation for small angles, has an intuitive physical meaning and is easy to implement in the MC code. For these reasons was the adopted as the multiple scattering model in AlfaMC.
For a particle traversing a thin slab of matter of thickness s with incidence direction along the z axis, one can define the deflection angles θ x and θ y (figure 1), measured relatively to the incidence direction in the xz and yz planes. According to the Fermi's theory (Beringer, 2012;Wong, 1990) the θ x and  y deflection angles have independent Gaussian distributions given by with i=x,y. The standard deviation of the distribution  0 can be approximated by (Wong, 1990;Beringer, 2012) where X 0 is the material radiation length. Lynch and Dahl (Lynch, 1991) have looked into to the problem of parameterizing  0 and propose several approximations. The adopted by where the 4/5 factor was empirically determined, for better comparison with the SRIM results (see section on comparison with SRIM).
The material radiation length X 0 has been calculated and tabulated by Y.S. Tsai (Tsai, 1974) and can be given by the formula where α is the fine structure constant, r e the electron classical radius, N A the Avogadro number, A the mass number, and Z the atomic number. For A=1 g mol -1 , 4  r e 2 N A / A=716.408 g cm −2  −1 when expressing X 0 in g cm -2 . The function f(z) can be approximated for elements up to uranium by (Beringer, 2012) f Z=a where a= Z (Davies, 1954). The functions L rad and L' rad are given in table 1. is applicable to one path of length t. Dividing the path into steps (i.e. s=s 1 +s 2 ) will introduce a bias since θ 0 (s 1 + s 2 )≠ √ θ 0 2 ( s 1 )+θ 0 2 (s 2 ) . AlfaMC neglects this effect, introducing a systematic bias in the lateral straggling.
Figure 2. Relation between the particle step s and the actual path length t.
In Monte Carlo transport of an alpha particle, due to the multiple scattering the actual path length t made by the alpha particle is bigger than the step s (figure 2). From the Fermi-Eyges theory we have the relation (Nelson, 1985) t =s 1 where  0  t is given by eq. 16. Assuming a constant momentum p during the step and approximating t by s in the integral one gets where K=[13.6 MeV Z  /pc  ] 2 /X 0 and X 0 in cm. For 1 µm steps or smaller the correction is less than 0.1% for low Z materials and energies above 1 MeV. The correction becomes more important as the alpha particle decreases its energy and  0  t increases. The correction might also be important for high-Z material where  0  t also has a larger value due to the increase in the Coulomb cross-section. The effect enters the used formulas through the decrease of X 0 with Z which can be observed in the approximate equation (Beringer, 2012) In AlfaMC the K factor is computed as K=θ 0 2 /s and θ 0 is taken from eq. 17.
Apart from the path length correction, there is also a transverse correction. In fact the particle position after a step s is computed as x ,y , z=x 0, y 0, z 0 s  u 0 where  u 0 =u 0, v 0, w 0  is the particle's direction vector entering the slab. Due to multiple scattering the particle position should be x ', y ' , z ' , a distance  from x ,y , z . Since t is bigger than the triangle hypotenuse we can say that  2 t As far as s stays small and t≈s the lateral displacement  is very small and can be neglected.
In the laboratory reference frame upon entering the slab the particle's direction vector is The  x and  y are generated in the reference frame where the particle initial direction is assumed to be the z axis. In this frame the particle's initial direction is given by the the vector  q 0 = e ' z and the new direction after traversing the slab is The model is valid for small  x and  y but since they are independently sampled there is a (small) probability that v x 2 v y 2 1 . To ensure this is not the case the module of vector  v is computed and the direction cosines obtained as and the direction vector is  v=cos  e ' x cos   e ' y cos   e ' z .
We notice the choice of the x and y axis in this reference frame is arbitrary as long as the x,y,z axis are orthogonal to each other. A possible choice is to define the x axis in the particle reference frame as  e ' x = e ' z ×  e z and the y axis as  e ' y = e ' z × e ' x .
Using this reference frame the rotation of the direction vector to the laboratory frame is given where D=  u 0 2 v 0 2  .

Alpha-particle effective charge
While slowing down the alpha-particles capture electrons from the medium reducing the effective electrical charge.
Several author have studied the effect putting forward a number of parameterizations. In a simple model the effect can be parametrized in terms of the reduced particle velocity where v 0 is the Bohr electron velocity v 0 = e 2 4 πε 0 ℏ =α c= c 137 and u=β c , so that (Hatano 2011) The effect is already included in the NIST stopping-power, but not in the energy straggling and multiple-scattering since the adopted models tend to give smaller values than the ones foreseen by more realistic models.

The program flow
The AlfaMC code is written in Fortran language and the main code is found in the library AlfaMCLIB.f . It uses the ULYSSES (Ulysses, 2012) package for the particle tracking in the geometry and the ULHISTOS package for scoring and histogramming (Ulhistos, 2012).
ULYSSES is a package, designed to make particle tracking in complex volumes and score the results. The histogramming routines are grouped in a library called ULHISTOS. The ULYSSES package is written in FORTRAN and some knowledge of the language is necessary for an efficient usage of the program. There are several volumes available in ULYSSES that can be used to build complex bodies. Examples of available volumes are the rectangular box, the cylinder, the sphere, the cone, etc. Volumes can be rotated in space. The geometry system used by ULYSSES allows for the construction of rather complex structures by adding (or subtracting) volumes. The volume organization is made using mother-daughter logic. Any volume may have daughter volumes inside. All the volumes have a mother volume except the universe volume which contains all volumes. A volume may have more than one mother, that is, it may be shared by more than one volume. The scoring of results is handled by the ULHISTOS library. One or two-dimensional histograms are possible. Apart from booking, filling and outputting histograms, the ULHISTOS library contains several routines to perform operations on the histograms and to extract statistical results. where dxdE is the reciprocal of the stopping power. If the computed value is lower or higher than the step size cuts defined by the user the step size reverts to the limit. To ensure proper randomness in successive events a Gaussian sampling of the step size is further done with a standard deviation fixed in 20% of the precomputed step size. The particle is then tracked through the geometry. Starting at the current  x 0 position, a new position along direction  u is found as  x=  x 0 s⋅ u . If a volume boundary is crossed the step size is shortened so that the particle is left at the boundary but on the new volume side. After determining the particle's new position the a new particle direction  u' due to multiple scattering is computed. This direction will be assumed to be the particle's fight direction after the step is completed. A correction to the step length due to multiple scattering is made and the energy loss in the step computed. Results such particles fluencies or deposited energy in the tracking volume can be scored. When crossing volume boundaries, the deposited energy in the step must be assigned to the previous volume since the particle is left on the boundary line between volumes. After the step the program checks if the particle still has the energy above the energy cut and did not exit the setup. If both requirements are met the program will advance the particle one more step. Otherwise, final event results (like the total deposited energy in a volume) are scored, and the program will generate a new particle. When the total number of requested particles are generated the program outputs the final results.

The materials database
The AlfaMC package provides the program AlfaMaterial.f to compute stopping-power data.
where wi and ρi are the fraction by weight and density of the ith element.
Besides stopping-power, AlfaMaterial computes other useful parameters for the tracking of alpha particles, namely the radiation length X0, the mean excitation energy, the effective atomic number and effective mass number. The radiation length X0 is computed according to equation 18 (Beringer, 2012, Tsai, 1974.
The radiation length in a compound or mixture may be approximated by where wj and X0j are the fraction by weight and radiation length of the jth element.
The mean excitation energy value I for elements is obtained from the table available at NIST (NIST, 2012b). For a compound or mixture the mean excitation energy value can be approximated by (Attix, 2008, Geary, 1976 ln where fi is the proportion by weight of element i. In the case of a compound where Ni is the number of atoms of element i in the compound. The I value obtained with this formula will be within 5% of the value quoted by NIST for low effective atomic number compounds (Zeff < 8) while deviations up to 15% can be obtained for higher Zeff. The impact of this discrepancies on the AlfaMC results in the present 2.0 version is zero since this parameter is not used in the simulation The atomic weights of elements are obtained from (Atomic weights, 2009;Wieser, 2011).

Geometry and histogramming
A strong feature in AlfaMC is the ability to simulated complex geometrical setups and to score results using the ULYSSES and ULHISTOS packages (Ulysses, Ulhistos, 2012. To use the ULYSSES package, the user must supply a geometry and a source routine, along with the main program. A set of predefined volumes (boxes, ellipsoids, tubes, etc.) can be combined to build complex geometrical bodies, where the particles will be tracked. In the source routine, also supplied by the user, the starting position, direction and energy of the particle is generated.

Comparison with SRIM
The SRIM program (SRIM, 2008) contains updated values of the stopping powers for most ion nuclei including helium ions. Using a simple slab geometry several physical quantities can be compared when computed by AlphaMC and SRIM. The comparison will be made for 4 different media: a gas (air) 5 mm thick, a low Z medium with absorption properties close to human tissue (mylar) 3 µm thick, a medium Z absorbent material (aluminum) 2 µm thick and a high Z material (gold) 1 µm thick. Thicknesses where chosen in such a way that, percentage energy loss is of same order of magnitude for all 4 targets. For each data point a run of 10000 events was made.

Transmitted energy
The transmitted energy of alpha particles (figure 5) traversing different thicknesses of the four chosen media is computed by AlfaMC and SRIM program. The thicknesses where chosen in such a way that, depending on the beam energy, the layer could represent alpha particle behavior from a thick to a thin absorber. The energy ranges from 0.1 to 12 MeV. The average value and standard deviation (energy straggling) were computed using a 3  interval relatively to the full distribution. This procedure minimizes the bias due to non-Gaussian tails. Except for the cases of low energy beam where the transmitted energy is very low the agreement between SRIM and AlfaMC is within 1 to 2% that is the same uncertainty as the computation statistical error ( figure 6). If instead of the transmitted energy, we analyze the energy lost (deposited) by the alpha particle in the layer then the agreement in the low energy is better than 10%. For the energy straggling (measured by the energy standard deviation) the general agreement between SRIM and AlfaMC is within 6%.

Lateral dispersion
The value of the lateral dispersion on the coordinates perpendicular to the beam axis (standard deviation on x or y) is a measure of the multiple scattering lateral straggling. Four different parameterizations of the polar scattering angle have been considered (Lynch, 1991).
Three of them are variations of the Highland formula (Highland, 1975;Highland, 1979) and a four formula proposed by Lynch and Dahl (Lynch, 1991) and modified in Geant3 manual (GEANT, 1993) where F=0.98, For air, mylar aluminum and gold the value of the lateral dispersion has been computed by AlfaMC and compared to the value obtain in the SRIM simulation in the 1 to 12 MeV range.
The obtained results are presented in figure 7.
We conclude that none of the models give a satisfactory description of the multiple scattering lateral straggling for the entire studied range. The values of  02 and  04 ratios have a strong energy dependence which is undesirable. On the other hand the values of  01 and  03 have a more smooth energy dependence, but giving too high values for the lateral straggling. For  03 this higher value can be compensated introducing an empirical factor of 4/5 in the formula. For a layer of 5 mm of air the lateral dispersion of alpha particles is presented in the figure 8.
A good agreement is seen between the results of the two simulation programs.

Range of alpha particles
There is more than one quantity that can be defined under the name of range of a charged particle. Unfortunately authors are not always clear about to which type of range they are referring to. F. Attix (Attix, 2008) defines range as "The range R of a charged particle of a given type and initial energy in a given medium is the expectation value of the pathlength p that it follows until it comes lo rest (discounting thermal motion)". This is clearly a difficult quantity to measure, although being easily obtained from the computational point of view.
A closely related quantity is the called CSDA range (Attix, 2008;Johns 1983) representing the pathlength of the particle in the CSDA approximation. This quantity can be computed from the stopping power by where T 0 is the particle initial kinetic energy. The above defined range R and the CSDA range R CSDA have almost identical values for heavy charged particles. The small difference comes from the occurrence of discrete and discontinuous energy losses along the path. The CSDA range is a quantity that can be computed with AlfaMC.
Another defined quantity is the projected range. As defined by F. Attix (attix, 2008) "the projected range <t> of a charged particle of a given type and initial energy in a given medium is the expectation value of the farthest depth of penetration of the particle in its initial direction". This is a quantity that can be experimentally determined in a transmission experiment. We can think of a pencil beam of particles perpendicularly traversing a variable thickness slab and measuring the number of particles that come out of the slab as we increase the slab thickness. For heavy charged particles and excluding the cases of nuclear interaction, almost all of them will transverse the absorbing material until a certain thickness t 1 is reached. After that thickness a rapidly decrease on the detected particles is observed. The thickness t max for which no charged particle come out of the slab is called the maximum penetration depth. The projected range can be obtained as where dN t/dt is the number of particles stopping at depths between t and t+dt. For practical reasons the projected range can be obtained from the experimental curve as slab thickness for which the beam intensity reduces to 50% of the plateau value . This range value is also known as mean range R 50 (Knoll, 2010;Johns, 1983). Yet another quantity called the extrapolated range R e can be defined. This is obtained by extrapolating at R 50 the nearly linear portion of the end of the transmission curve to zero (Knoll, 2010). From their definition it is clear that the relation 〈 t〉≃R 50 R e R must exist.
All this quantities can be obtained by simulation, in particular by AlfaMC. The CSDA range is obtained as the average over the number of simulated alpha particles of the sum of all steps given during the transport of each alpha particle. The program uses the multiple scattering corrected step to obtain the value of the CSDA range. The projected range is obtained by AlfaMC as the average depth of penetration of the alpha particles up to their full stop.
The projected range was computed by AlfaMC and SRIM for air, mylar, aluminum and gold for a number of energies in the range 0.1 to 12 MeV using 10 4 events in each case. Figure 9 shows the ratio of the projected range as computed by SRIM and AlfaMC as a function of the particle kinetic energy. The ratio of the projected range given by SRIM and NIST in their original tables is also presented.
We start noticing the differences between the projected ranges given by SRIM and the NIST/ASTAR tables for low energies, that can be as much as 9%. On what concerns AlfaMC, from these results we conclude that except for low alpha energies (< 0.5 MeV) the computed range ratio SRIM/AlfaMC agrees with the SRIM/NIST range ratio within 2 to 3% at energies up to 2 MeV and is better than that for higher energies. The fact AlfaMC gives a higher error at low energies is related to the fact the computation is based on a set of given values in a Projected range ratio Figure 9. Projected range ratios between SRIM and AlfaMC for air, mylar aluminum and gold.
The project range curves in air for 1 MeV alpha particles for SRIM and AlfaMC is presented in the figure 10. There is, in this case, a 4% difference between the average value given by AlfaMC and SRIM, which can be assigned to the underlying difference between the SRIM and ASTAR/NIST values. A larger difference exist between the standard deviation obtained by each of the programs being the SRIM value 60% larger in this case. As it can be seen from figure 11, except for high energy values, the range straggling in SRIM has larger values than in AlfaMC. This can in part be due to the non-gaussian high angle multiple scattering which is not present in AlfaMC. This difference in the multiple scattering models is particularly important at the end of the alpha particle path where their energy is low. As expected the lateral dispersion at the end of the path has larger values for SRIM. This can be confirmed in figure 12 where the ratios between the standard deviations of the lateral dispersion curves are presented for air, mylar, aluminum and gold. For 1 MeV alpha particles in air the dispersion curve for SRIM and AlfaMC is presented in figure 13. Figure 14 shows the AlfaMC simulation of the transport of 0.5 MeV alpha particles in air.

Conclusions
AlfaMC is a fast MC for the transport of alpha particles in complex geometries. The program uses the ASTAR / NIST precomputed stopping power tables to get the alpha particles energy loss. The default energy straggling is assumed to be Gaussian, but a more comprehensive description using the Vavilov and Landau distributions is also available using modified routines from GEANT3. A simple model is adopted for the multiple Coulomb scattering, based on a Gaussian distribution. The need to use fast multiple scattering sampling distributions is a major cause for uncertainty in AlfaMC at low energies.
When slowing down in matter ions will capture electrons from the medium reducing the effective electrical charge. The effect is somehow taken into account in the NIST/ASTAR stopping-power values since in the low-energy region they are calculated from fitting formulas that represent experimental data for many elements and a limited number of compounds. The effect is not taken into account in the computation of the energy straggling or multiple scattering, since a reduction in the effective charge from +2e would decrease both effects at low energy, increasing the difference to SRIM results.
The comparison with the well established SRIM program shows that AlfaMC can deliver meaningful results in the 1 to 12 MeV range for the alpha particle's energy. For energies lower than 1 MeV, AlfaMC results are less accurate and differences greater than 10% can be found between the results of both programs.
The AlfaMC program speed was compared with SRIM and the general-purpose Monte Carlo code (FLUKA) running on the same CPU for a simple slab geometry. A 10 MeV alpha particle beam was set to irradiate a 10 µm-thick Al foil. Under these conditions the particle losses about 1 MeV crossing the foil and eventual different cut-offs have little influence in program speed. This is important since SRIM does not allow any user cut-off control. It was found that FLUKA would take 5.5 more time than AlfaMC per primary particle, while SRIM would take 63 more time per event than AlfaMC.
Appendix A

Rotation from the particle reference frame to the laboratory reference frame
Let  u 0 =u ,v , w be the unit vector of the particle direction. The parameters (u,v,w) are the cosine of the projection angles on the x,y,z axis u=cos  x v=cos y w=cos  z We choose the particle reference frame to have the z axis in the particle's motion direction and thus  e ' z =u  e x v  e y w  e z We notice the choice of the x' and y' axis in this reference frame is arbitrary as long as the x',y',z' axis are orthogonal to each other. A possible choice is to define the x' axis in the particle reference frame as  e ' x = e ' z ×  e z /∥ e ' z ×  e z ∥ and the external product is given by the following determinant  e ' z ×  e z = | e x e y e z u v w 0 0 1 | =v  e x −u  e y .
We have for the norm ∥ e ' x ∥=∥ e ' z ×  e z ∥=u 2 v 2 , so finally the unit vector of x' frame is where we defined D=u 2 v 2 .
In matrix notation these relation provide the rotation from the laboratory frame to the particle frame  x ' y ' The rotation from the particle frame to the laboratory frame is given by the inverse matrix, which is the transposed matrix  x y The choice made for the x' and y' breaks in the case the particle runs parallel to the z axis (i.e.  e z =  e ' z . In this case, both reference frames (laboratory and particle) are coincident.