Skip to main content

Computing neighbor lists for atomistic system, in TorchScript

Project description

Vesin: fast neighbor lists for atomistic systems

Documentation Tests

English 🇺🇸⁠/⁠🇬🇧 Occitan Arpitan French 🇫🇷 Gallo‑Italic Catalan Spanish 🇪🇸 Italian 🇮🇹
neighbo(u)r vesin vesin voisin visin veí vecino vicino

Vesin is a fast and easy to use library computing neighbor lists for atomistic system. We provide an interface for the following programing languages:

  • C (also compatible with C++). The project can be installed and used as a library with your own build system, or included as a single file and built directly by your own build system;
  • Python;
  • TorchScript, with both a C++ and Python interface;

Installation

To use the code from Python, you can install it with pip:

pip install vesin

See the documentation for more information on how to install the code to use it from C or C++.

Usage instruction

You can either use the NeighborList calculator class:

import numpy as np
from vesin import NeighborList

# positions can be anything compatible with numpy's ndarray
positions = [
    (0, 0, 0),
    (0, 1.3, 1.3),
]
box = 3.2 * np.eye(3)

calculator = NeighborList(cutoff=4.2, full_list=True)
i, j, S, d = calculator.compute(
    points=positions,
    box=box,
    periodic=True,
    quantities="ijSd"
)

We also provide a function with drop-in compatibility to ASE's neighbor list:

import ase
from vesin import ase_neighbor_list

atoms = ase.Atoms(...)

i, j, S, d = ase_neighbor_list("ijSd", atoms, cutoff=4.2)

See the documentation for more information on how to use the code from C or C++.

Benchmarks

You can find below benchmark result computing neighbor lists for increasingly large diamond supercells, using an AMD 3955WX CPU and an NVIDIA 4070 Ti SUPER GPU. You can run this benchmark on your system with the script at benchmarks/benchmark.py. Missing points indicate that a specific code could not run the calculation (for example, NNPOps requires the cell to be twice the cutoff in size, and can't run with large cutoffs and small cells).

Benchmarks

License

Vesin is is distributed under the 3 clauses BSD license. By contributing to this code, you agree to distribute your contributions under the same license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vesin_torch-0.4.2.tar.gz (36.5 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

vesin_torch-0.4.2-py3-none-win_amd64.whl (812.1 kB view details)

Uploaded Python 3Windows x86-64

vesin_torch-0.4.2-py3-none-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (909.6 kB view details)

Uploaded Python 3manylinux: glibc 2.24+ x86-64manylinux: glibc 2.28+ x86-64

vesin_torch-0.4.2-py3-none-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl (861.0 kB view details)

Uploaded Python 3manylinux: glibc 2.24+ ARM64manylinux: glibc 2.28+ ARM64

vesin_torch-0.4.2-py3-none-macosx_11_0_arm64.whl (860.1 kB view details)

Uploaded Python 3macOS 11.0+ ARM64

File details

Details for the file vesin_torch-0.4.2.tar.gz.

File metadata

  • Download URL: vesin_torch-0.4.2.tar.gz
  • Upload date:
  • Size: 36.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for vesin_torch-0.4.2.tar.gz
Algorithm Hash digest
SHA256 ae52fc35de0ba8e3cf82005451e40be852c973852bab066d89e2bc525a73c8e4
MD5 dc37d317ebfc7721168b9a00ed22b000
BLAKE2b-256 6d6bf56dd15a6ae5ae1745be5be1fd2e7afabae713b8f1f7750ea896e24f67bf

See more details on using hashes here.

File details

Details for the file vesin_torch-0.4.2-py3-none-win_amd64.whl.

File metadata

  • Download URL: vesin_torch-0.4.2-py3-none-win_amd64.whl
  • Upload date:
  • Size: 812.1 kB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for vesin_torch-0.4.2-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 951b21922f51236efddcd41250b88ad38cb0b031463123e8a34642e15ceb03a1
MD5 fdeac30e12ef5f91ad66d226e79db82f
BLAKE2b-256 3591c45cc56afbf545989c57c1ab54bf9d6a96d23a2f96f4e7d5a831a8bc7c93

See more details on using hashes here.

File details

Details for the file vesin_torch-0.4.2-py3-none-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for vesin_torch-0.4.2-py3-none-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 80ff62b2fd1f3afb5632cc911bc32fdd3c82e541d1fccec71680362ccced87f0
MD5 6e82e18278649f15714b8a819e4923e0
BLAKE2b-256 ac1756cd86df5cedca93a7973546abd1ae2f0a1e202c17ca928b377477119332

See more details on using hashes here.

File details

Details for the file vesin_torch-0.4.2-py3-none-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for vesin_torch-0.4.2-py3-none-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 11cb1109bf606f75a8035f0207373e03edff5ed04bf0fb84f69c55da7eaae7ee
MD5 3fd1483756d3aee3a59580c980a927b7
BLAKE2b-256 1d35d304d15e8a6a67a49994e8208a7e62c40277a5d8cfb9114091dd431683e0

See more details on using hashes here.

File details

Details for the file vesin_torch-0.4.2-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vesin_torch-0.4.2-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3299217ba803e442c52613ec4f9fe4cbd2cc2b2538836b902d12eb0d2d6296d8
MD5 f41f2ce0ac1a6367f6c06521a2d3a4f4
BLAKE2b-256 de3b517af8e11dc8f321929669be69ad1d29dae757d656c6427613179865c3aa

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page