Skip to main content

Computing neighbor lists for atomistic system

Project description

Vesin: fast neighbor lists for atomistic systems

Documentation Tests

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

Vesin is a C library that computes neighbor lists for atomistic system, and tries to be fast and easy to use. We also provide a Python package to call the C library.

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=points,
    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-0.2.0.tar.gz (25.9 kB view details)

Uploaded Source

Built Distributions

vesin-0.2.0-py3-none-win_amd64.whl (46.9 kB view details)

Uploaded Python 3 Windows x86-64

vesin-0.2.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (49.2 kB view details)

Uploaded Python 3 manylinux: glibc 2.17+ x86-64

vesin-0.2.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (48.1 kB view details)

Uploaded Python 3 manylinux: glibc 2.17+ ARM64

vesin-0.2.0-py3-none-macosx_11_0_arm64.whl (18.2 kB view details)

Uploaded Python 3 macOS 11.0+ ARM64

vesin-0.2.0-py3-none-macosx_10_13_x86_64.whl (18.3 kB view details)

Uploaded Python 3 macOS 10.13+ x86-64

File details

Details for the file vesin-0.2.0.tar.gz.

File metadata

  • Download URL: vesin-0.2.0.tar.gz
  • Upload date:
  • Size: 25.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.9

File hashes

Hashes for vesin-0.2.0.tar.gz
Algorithm Hash digest
SHA256 7c49e11aa46c06ae8e3154d52b462ae0e19aa090eda4b226b7fd5a4e35e87a30
MD5 bbd603b84769afbf7db597e3625535f5
BLAKE2b-256 4ea54e64b1d9296c3cc83652d59955706a36c823bf0b30636daf25aec385fc90

See more details on using hashes here.

File details

Details for the file vesin-0.2.0-py3-none-win_amd64.whl.

File metadata

  • Download URL: vesin-0.2.0-py3-none-win_amd64.whl
  • Upload date:
  • Size: 46.9 kB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.9

File hashes

Hashes for vesin-0.2.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 bae51063068dd788747d8284eba48755d9607ef77e5c1460833eee8917fd4a4c
MD5 752ee1f93774b3b218cdd835bc45b4be
BLAKE2b-256 44770938596d58e838edf9241a4d108ab8763f240cd806d0de6c9df4846e637c

See more details on using hashes here.

File details

Details for the file vesin-0.2.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for vesin-0.2.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 73f8157280f9c2086aee9b0b09d660bd533459727830f59e9592c0578ab8ad7e
MD5 b7b525f6fa96ff2654888235a0af7ef2
BLAKE2b-256 11491a480a2bfee1c006b0502b4c4f8b8a28049d42ce8fa5867c7efb6d2a32eb

See more details on using hashes here.

File details

Details for the file vesin-0.2.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for vesin-0.2.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 96c4969dac2f8dddf34681c9d952b451aaed89062eee0dc8697931487cf7dd6a
MD5 f916ac63064f1f8f48a26108186340db
BLAKE2b-256 e1f0323958504117d4e26ba70a10da9046214cd02e5e83f38cac7d2daf0d4fd3

See more details on using hashes here.

File details

Details for the file vesin-0.2.0-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for vesin-0.2.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 94f54d4032572151c058d49e28f1b13a1deb393601f3cc9854037cf1d831f0d3
MD5 fedd231483f78647415e6b8d778be0ca
BLAKE2b-256 dda672c000ce6f7ad44be6e8478c5f49d9008392b063208e5386efc6a3694e86

See more details on using hashes here.

File details

Details for the file vesin-0.2.0-py3-none-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for vesin-0.2.0-py3-none-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 8b596c96b5ac4099327f79d7f884515c3850a8156c5dc3afd7f856a0fe2face2
MD5 43f8a1688a4d1ebe382364135dd17e01
BLAKE2b-256 cb5d6ede24f10e4568b33510c10e10b668ad44e467fe923bd2fd2d5994cd7933

See more details on using hashes here.

Supported by

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