CellListMap.jl implements an efficient cell list scheme for the computation of interactions, neighbor lists, or any other property dependent on the distances between pairs of two- or three-dimensional particles, within a cutoff.
It maps a generic function to be computed for each pair of particles, using periodic boundary conditions of any type. Parallel and serial implementations can be used. The user defined function will be evaluated only for the pairs closer to each other than the desired cutoff distance.
Once Julia is installed, install the
CellListMap package from the Julia REPL with:
julia> import Pkg julia> Pkg.add("CellListMap")
0.7.22, a new simpler, higher level interface was introduced, that will facilitate the use of
CellListMap without any loss in performance. The new interface is flexible enough for the majority of applications. It may become the default interface in the future. See the PeriodicSystems interface menu for details.
The user might be more comfortable in using the package to compute the list of neighboring particles. A custom interface for this application is provided though the Neighbor lists interface.
Note that, in general, neighbor lists are used to compute other pairwise dependent properties, and these can be, in principle, computed directly with
CellListMap without the need to compute or store the lists of neighbors.
The Low level interface allows the customization and optimization of very demanding calculations (although the PeriodicSystems interface does not have any performance limitation and is easier to use).