Currently the code only can be used for 4 elements: Ge, Si, Ar, Ne. Part of what makes this difficult is the differing slowing-down parameters for each element. However, within the Lindhard framework we should be able to unify all of these (we currently use the Lindhard framework anyway).
The result of this poor coding choice is that there are several functions that are redundant in the sense that they are repeated for each element. We can unify this treatment even without sacrificing the accuracy of the slowing down. In fact we currently use a constant-acceleration version of Lindhard, so we can easily change over to the full version of Lindhard (deceleration dependent on energy) and gain accuracy.
Currently the code only can be used for 4 elements: Ge, Si, Ar, Ne. Part of what makes this difficult is the differing slowing-down parameters for each element. However, within the Lindhard framework we should be able to unify all of these (we currently use the Lindhard framework anyway).
The result of this poor coding choice is that there are several functions that are redundant in the sense that they are repeated for each element. We can unify this treatment even without sacrificing the accuracy of the slowing down. In fact we currently use a constant-acceleration version of Lindhard, so we can easily change over to the full version of Lindhard (deceleration dependent on energy) and gain accuracy.