gpytorchwrapper.src.kernels.perminv_kernel

Classes

PermInvKernel(n_atoms, idx_equiv_atoms[, ...])

This class is a base class for all permutationally invariant kernels.

class gpytorchwrapper.src.kernels.perminv_kernel.PermInvKernel(n_atoms: int, idx_equiv_atoms: list[list[int]], select_dims: list[int] | None = None, ard: bool = False, **kwargs)[source]

Bases: Kernel

This class is a base class for all permutationally invariant kernels. It handles the ARD expansion automatically and provides a method to generate the permutations of the distances.

Parameters:
  • n_atoms (int) – The total number of atoms in the system

  • idx_equiv_atoms (list[list[int]]) – List of lists representing the groups of permutationally invariant atoms

  • select_dims (Tensor) – The indices of the dimensions to be selected

  • ard (bool) – Whether to use ARD or not

  • kwargs – Additional keyword arguments

select_dims

The indices of the dimensions to be selected

Type:

Tensor

ard

Whether to use ARD or not

Type:

bool

Raises:
  • NotImplementedError – If the ard_num_dims keyword is used instead of ard.

  • ValueError – If the expected number of unique distances does not match the amount generated by the ARD expansion.