Skip to content

Latest commit

 

History

History
88 lines (54 loc) · 2.66 KB

File metadata and controls

88 lines (54 loc) · 2.66 KB

Changelog

All notable changes to vesin are documented here, following the keep a changelog format. This project follows Semantic Versioning.

Version 0.5.3 - 2026-03-10

Fixed

  • We now use the same cudart library from Python and C++ when using torch tensors with vesin.NeighborList.

Version 0.5.2 - 2026-02-26

Fixed

  • The results are now returned with the same dtype as the input even when we return an empty neighbor list

Version 0.5.1 - 2026-02-24

Added

  • Added vesin.metatomic.compute_requested_neighbors_from_options to allow computing all neighbor lists requested by a metatomic model in a TorchScript-compatible way.

Changed

  • Users can control how much memory is allocated for the CUDA neighbor list with the VESIN_CUDA_MAX_PAIRS_PER_POINT environment variable.
  • We now also try to load libcudart.so.{11,12,13} if the code can not find libcudart.so on Linux.

Version 0.5.0 - 2026-02-19

Added

  • vesin can now compute neighbor lists on GPUs using CUDA. This is automatically integrated in vesin-torch, and can be used with CuPy in the vesin python package.
  • vesin.NeighborList now accepts either numpy arrays, cupy arrays or torch tensor for the points, box, and periodic parameters.

Version 0.4.2 - 2025-11-06

Changed

  • arbitrary box orientations are now supported with mixed PBC (#88)

Version 0.4.1 - 2025-11-03

Added

  • vesin-torch wheels on PyPI now support PyTorch v2.9

Version 0.4.0 - 2025-10-27

Added

  • vesin now offers a Fortran API, you can enable it by giving the -DVESIN_FORTRAN=ON option to cmake (#50)
  • the single file build now contains a comment mentionning which version of vesin the file corresponds to.

Changed

  • The periodic argument to vesin_neighbors() in C and C++, NeighborList.compute() in all other languages can now be set separatly for each box dimension, allowing mixed periodic and non-periodic boundary conditions.
  • VesinDevice in C and C++ is now a struct containing both a device kind (i.e. CPU, CUDA, etc.) and a device index.