Implementation of Lubaehevsky-Stillinger Algorithm to pack hard spheres

To generate a model of a polycrystalline material with specified grain size distribution (e.g coming from a Monte Carlo Grain Growth simulation) the Paper "Effects of grain size distribution and stress heterogeneity on yield stress of polycrystals: A numerical approach" proposes to use the Lubaehevsky-Stillinger Algorithm to get the distribution of Germs which in turn yields the specified polyhedron size distribution by doing a Voronoi tesselation on the Germs.

Thus an implementation of this algorithm to solve the problem to pack a set of polydisperse spheres into a certain volume (e.g a cuboid) would come in handy.

Could anyone point me to an implementation in Mathematica of such a packing algorithm?

• Here's the first program that showed up in a google search. It's not in Mathematica, but maybe you could use it and import some of the results into Mathematica. code.google.com/p/packing-generation – wgwz Feb 19 '15 at 17:02
• @ skywalker. Thanks for the code, which I found too. However the code is much too complex to transfer it into Mathematica, unfortunately. – Rainer Feb 19 '15 at 17:40
• I was thinking more like, run the code, get the data you need and then import the data into Mathematica. Then analyze whatever you need to in Mathematica. Don't know if that's even possible in this case, just an idea. – wgwz Feb 19 '15 at 18:35
• O.k. let me describe my problem a little more detailed. I have the whole implementation of simulating microcrystalline microstructure covered in Mathematica already. This means I have implemented the POTTS Model MC simulation, the extraction of the grain size distribution, the modeling of the different properties of the polycrystalline material model (resistivity, stress, etc.) covered in Mathematica. Implementing an interface to an external C based program is just the last resort if there is really no other solution possible. – Rainer Feb 19 '15 at 18:58