SearchFill

SearchFill: A stochastic optimization code for detecting atomic vacancies in crystalline and non-crystalline systems. We present an implementation of a stochastic optimization algorithm applied to location of atomic vacancies. Our method labels an empty point in space as a vacancy site, if the total spatial overlap of a “virtual sphere”, centered around the point, with the surrounding atoms (and other vacancies) falls below a tolerance parameter. A Metropolis-like algorithm displaces the vacancies randomly, using an “overlap temperature” parameter to allow for acceptance of moves into regions with higher overlap, thus avoiding local minima. Once the algorithm has targeted a point with low overlap, the overlap temperature is decreased, and the method works as a steepest descent optimization. Our method, with only two free parameters, is able to detect the correct number and coordinates of vacancies in a wide spectrum of condensed-matter systems, from crystals to amorphous solids, in fact in any given set of atomic coordinates, without any need of comparison with a reference initial structure.