contact_utils.compute_symmetric_contacts_batch

contact_utils.compute_symmetric_contacts_batch(central_atom_label, contact_atom_label, central_atom_idx, contact_atom_idx, central_atom_frac_coords, contact_atom_frac_coords, lengths, strengths, in_los, symmetry_A, symmetry_T, symmetry_A_inv, symmetry_T_inv, cell_matrix, device)[source]

Expand intermolecular contacts by applying precomputed symmetry operations.

Parameters:
  • central_atom_label (List[List[str]]) – Original central-atom labels for each structure.

  • contact_atom_label (List[List[str]]) – Original contact-atom labels for each structure.

  • central_atom_idx (torch.LongTensor, shape (B, C)) – Central-atom indices per contact.

  • contact_atom_idx (torch.LongTensor, shape (B, C)) – Contact-atom indices per contact.

  • central_atom_frac_coords (torch.Tensor, shape (B, C, 3)) – Fractional coordinates of central atoms.

  • contact_atom_frac_coords (torch.Tensor, shape (B, C, 3)) – Fractional coordinates of contact atoms.

  • lengths (torch.Tensor, shape (B, C)) – Contact distances.

  • strengths (torch.Tensor, shape (B, C)) – Contact strength metrics.

  • in_los (torch.Tensor, shape (B, C)) – Line-of-sight contact mask.

  • symmetry_A (torch.Tensor, shape (B, C, 3, 3)) – Symmetry rotation matrices.

  • symmetry_T (torch.Tensor, shape (B, C, 3)) – Symmetry translation vectors.

  • symmetry_A_inv (torch.Tensor, shape (B, C, 3, 3)) – Inverse symmetry rotation matrices.

  • symmetry_T_inv (torch.Tensor, shape (B, C, 3)) – Inverse symmetry translation vectors.

  • cell_matrix (torch.Tensor, shape (B, 3, 3)) – Real-space cell matrices for each structure.

  • device (torch.device) – Device on which to perform computations.

Returns:

Dictionary of extended contact parameters:
  • inter_cc_central_atom : List[List[str]]

  • inter_cc_contact_atom : List[List[str]]

  • inter_cc_central_atom_idx : torch.LongTensor, shape (B, 2C)

  • inter_cc_contact_atom_idx : torch.LongTensor, shape (B, 2C)

  • inter_cc_central_atom_coords : torch.Tensor, shape (B, 2C, 3)

  • inter_cc_contact_atom_coords : torch.Tensor, shape (B, 2C, 3)

  • inter_cc_central_atom_frac_coords : torch.Tensor, shape (B, 2C, 3)

  • inter_cc_contact_atom_frac_coords : torch.Tensor, shape (B, 2C, 3)

  • inter_cc_length : torch.Tensor, shape (B, 2C)

  • inter_cc_strength : torch.Tensor, shape (B, 2C)

  • inter_cc_in_los : torch.Tensor, shape (B, 2C)

  • inter_cc_symmetry_A : torch.Tensor, shape (B, 2C, 3, 3)

  • inter_cc_symmetry_T : torch.Tensor, shape (B, 2C, 3)

  • inter_cc_symmetry_A_inv : torch.Tensor, shape (B, 2C, 3, 3)

  • inter_cc_symmetry_T_inv : torch.Tensor, shape (B, 2C, 3)

  • inter_cc_mask : torch.BoolTensor, shape (B, 2C)

Return type:

dict