When RUMP converted from FORTRAN to C, one of the changes was to incorporate automatic generation of stopping power tables for all elements in all targets - choosing the energy range to match the needs of the simulation. The energy range of each table is determined at run time based on the beam energy being simulated. Multiple tables for different energy ranges, as well as multiple ion (for ERD), were added. Generation of the tables was based on an analytical model from J.F. Ziegler, J.P. Biersack, U. Littmark, Empirical Stopping Powers for Ions in Solids, IBM Research Report RC9250, 1982 and The Stopping and Range of Ions in Solids, Pergamon Press, New York, 1985 by the same authors..
The generation of stopping power tables happens outside of the user's
view, except for several information messages. These include the
creation of a new table (a table corresponds to a particle incident ion
with entries for all possible target Zs):
Created new stopping power table: 2 4.000000
0.360000 3.450000
signifies a new table for 4He, covering the energy range 0.36 to 3.45
MeV. As target nuclei are required, the table is filled in.
Fitting particle 4He for Z = 14 ... zsf ... maximum
deviation: 0.76%
This message specifies that the entry for Si (Z=14) was computed into
one of the 4He stopping power tables (multiple tables may exist if the
beam energy is changed significantly in different simulations).
Internally, RUMP continues to use a polynomial representation for the stopping power. This is necessary to efficiently implement Bragg's Law for complex target structures. The analytical models, however, are neither computationally efficient nor amenable for direct implementation of Bragg's Law. Consequently, RUMP "fits" a polynomial to the analytical models on the fly. Since the energy window changes between tables, the parameterization is always optimized for the energy range of interest. The maximum deviation (0.76% above) quantitatively shows how well the polynomial representation matches the analytical representation (neither of which is necessarily correct). Although this is an expensive computation, it need only be performed once for each ion/target pair unless the beam energy is significantly changed (either up or down).
config stop_type linearSwitching from linear to square root mode will improve the precision in several ways. First, the lower energy limit in the stopping power tables is dropped by a factor of two (reflecting the fact that it is easier to match across the Bragg peak). Second, the fit is simply better. For Si, the example above would create a table extending from 0.18 MeV to 3.45 MeV and the maximum deviation (over this extended range) decreases to 0.24%.
config stop_type sqrt
Recommendation 1: Add the line "config stop_type sqrt return" to your RUMP.INI file to automatically enable this mode by default.However, while the precision of fit to the analytical model is improved, the fit is still limited in accuracy to the accuracy of the underlying analytical expressions (i.e.. Ziegler model).
The electronic component to the stopping power is expressed as a complex inverse polynomial:
S_{e}(E) = E^{s} ln (e+BE) / P(E)Note that this form encompasses data from both papers. For Konac et al., a_{3} and a_{4} are zero, while in Niemann et al.'s formalism, s = 1/2. These coefficients are maintained in a data file .../rump/data/konac.dat, the default version of which (on May 18, 1999) is shown below. In this format, stopping powers for high Z elements can also be easily incorporate - simply fit the data to the format specified.
P(E) = a_{0} + a_{1} E^{1/4} + a_{2} E^{1/2} + a_{3} E^{3/4} + a_{4} E + a_{5} E^{(1+s)}
Recommendation 3: In publications, specify the source of the stopping power data with the reference to RUMP if appropriate.
# ================================================================================================== # Stopping power fits on specific incident/target ion pairs # This file contains data for the Konac form of the stopping power description # for all ions. The entries in this field will be used before resorting to # the default Ziegler stopping power calculations (scaled proton data). To # ================================================================================================== # Stopping power fit coefficients # # Primary Reference: # Konac 98: G. Konac, S. Kalbitzer, Ch. Klatt, D. Niemann, R. Stoll, # NIM B, 136-138 (1998) 159-165. # # Secondary data references: # Konac 98a: Konac 98, assuming velocity scaling from 1H and 4He # #=================================================================================================== # Inc Target Coefficients as per Konac 98 reference (a3) # Z M Z s a0 a1 a2 a3 a4 a5 beta #=================================================================================================== 1 1 6 0.39 3.40E-2 -3.93E-2 2.09E-2 0 0 7.89E-1 36.5 # Konac 98 1 2 6 0.39 3.40E-2 -3.93E-2 2.09E-2 0 0 7.89E-1 36.5 # Konac 98a 2 4 6 0.49 1.36E-3 2.47E-2 -1.81E-2 0 0 1.88E-1 36.5 # Konac 98 2 3 6 0.49 1.36E-3 2.47E-2 -1.81E-2 0 0 1.88E-1 36.5 # Konac 98a 1 1 14 0.37 4.16E-2 -1.47E-1 1.80E-1 0 0 2.79E-1 15.7 # Konac 98 1 2 14 0.37 3.66E-2 -1.24E-1 1.52E-1 0 0 2.93E-1 15.7 # Konac 98 2 3 14 0.52 8.24E-3 -2.02E-2 2.28E-2 0 0 8.18E-2 15.7 # Konac 98 2 4 14 0.52 7.93E-3 -1.93E-2 2.21E-2 0 0 8.25E-2 15.7 # Konac 98
Contact Mike Thompson if
you want to discuss these issues further.