CellListMap.jl: Efficient and customizable cell list implementation for calculation of pairwise particle properties within a cutoff

N-body simulations and trajectory analysis rely on the calculation of attributes that depend on pairwise particle distances within a cutoff. Interparticle potential energies, forces, distribution functions, neighbor lists, and distance-dependent distributions, for example, must be calculated. Cell l...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Computer physics communications 2022-10, Vol.279, p.108452, Article 108452
1. Verfasser: Martínez, Leandro
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:N-body simulations and trajectory analysis rely on the calculation of attributes that depend on pairwise particle distances within a cutoff. Interparticle potential energies, forces, distribution functions, neighbor lists, and distance-dependent distributions, for example, must be calculated. Cell lists are widely used to avoid computing distances outside the cutoff. However, efficient cell list implementations are difficult to customize. Here, we provide a fast and parallel implementation of cell lists in Julia that allows the mapping of custom functions dependent on particle positions in 2 or 3 dimensions. Arbitrary periodic boundary conditions are supported. Automatic differentiation and unit propagation can be used. The implementation provides a framework for the development of new analysis tools and simulations with custom potentials. The performance of resulting computations is comparable to state-of-the-art implementations of neighbor list algorithms and cell lists, available in specialized software. Examples are provided for the computation of potential energies, forces, distribution of pairwise velocities, neighbor lists and other typical calculations in molecular and astrophysical simulations. The Julia package is freely available at http://m3g.github.io/CellListMap.jl. Interfacing with Python and R with minimal overhead is possible. Program Title: CellListMap.jl CPC Library link to program files:https://doi.org/10.17632/5kf5zh9zms.1 Developer's repository link:http://github.com/m3g/CellListMap.jl Licensing provisions: MIT Programming language: Julia Nature of problem: Particle simulations and trajectory analysis, in chemistry, atomic and molecular physics, and astrophysics, require the computation of pairwise properties within a cutoff, for example potential energies, forces, distance distributions, among others. Cell lists can be used to accelerate these computations and are used in major simulation software, but these implementations cannot be easily adapted for novel custom calculations, simulations, and novel research. Solution method: This package provides a fast and customizable implementation of cell lists for the development of new simulation and analysis software for particle simulations. To provide a customizable implementation, the Julia language was used, allowing the user to write high-level yet performant custom functions to be mapped into pairs of particles satisfying the distance constraint desired. State-of-the art performance i
ISSN:0010-4655
1879-2944
DOI:10.1016/j.cpc.2022.108452