Skip to content

Latest commit

 

History

History
67 lines (41 loc) · 3.61 KB

File metadata and controls

67 lines (41 loc) · 3.61 KB

Stable Dev Build Status codecov Aqua QA Package Downloads

CellListMap.jl

This package is for computing interactions or any other property that is dependent on the distances between pairs of two- or three-dimensional particles, within a cutoff. It maps a function to be computed pairwise using cell lists, using periodic boundary conditions of any type. Parallel and serial implementations can be used.

It allows the fast computation of any quantity from the pairs that are within the desired cutoff, for example pairwise potentials and forces, neighbor lists, minimum distances, an average distance or an histogram of distances, etc. This is done by passing the function to be evaluated as a parameter of the pairwise! function, which receives a NeighborPair struct for each pair.

The user guide provides direct examples of each of these applications.

Installation

Download and install Julia for your platform from this http url. Version 1.10 or greater is required.

Install it as usual for registered Julia packages:

julia> import Pkg

julia> Pkg.add("CellListMap")

Brief overview

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.

The package provides an interface to compute a generic function for each pair of particles closer than a cutoff, using general periodic boundary conditions. Parallel and serial implementations can be used.

Some benchmarks

The goal here is to provide a good implementation of cell lists. We compare it with the implementation of the nice cython/python halotools package, in the computation of an histogram of mean pairwise velocities.

The full test is available at this repository. And we kindly thank Carolina Cuesta for providing the example. These benchmarks were run on an Intel(R) Core(TM) i7-12700, using 8 CPUs.

Citation

If you use this software and need to cite it, please use the following reference:

L. Martínez, CellListMap.jl: Efficient and customizable cell list implementation for calculation of pairwise particle properties within a cutoff. Computer Physics Communications, 279, 108452, 2022. https://doi.org/10.1016/j.cpc.2022.108452