get_pair_displacements

torch_sim.transforms.get_pair_displacements(*, positions, cell=None, pbc=True, pairs=None, shifts=None)[source]

Compute displacement vectors and distances between atom pairs.

Parameters:
  • positions (torch.Tensor) – Atomic positions [N, 3].

  • cell (Optional[torch.Tensor]) – Unit cell matrix [3, 3].

  • pbc (bool) – Whether to apply periodic boundary conditions.

  • pairs (Optional[Tuple[torch.Tensor, torch.Tensor]]) – (i, j) indices for specific pairs to compute.

  • shifts (Optional[torch.Tensor]) – Shift vectors for periodic images [n_pairs, 3].

Returns:

  • Displacement vectors [n_pairs, 3].

  • Distances [n_pairs].

Return type:

tuple[Tensor, Tensor]