qml.qchem.repulsion_integral

repulsion_integral(basis_a, basis_b, basis_c, basis_d, normalize=True)[source]

Return a function that computes the electron-electron repulsion integral for four contracted Gaussian functions.

Parameters
  • basis_a (BasisFunction) – first basis function

  • basis_b (BasisFunction) – second basis function

  • basis_c (BasisFunction) – third basis function

  • basis_d (BasisFunction) – fourth basis function

  • normalize (bool) – if True, the basis functions get normalized

Returns

function that computes the electron repulsion integral

Return type

function

Example

>>> symbols  = ['H', 'H']
>>> geometry = np.array([[0.0, 0.0, 0.0], [0.0, 0.0, 1.0]], requires_grad = False)
>>> alpha = np.array([[3.425250914, 0.6239137298, 0.168855404],
>>>                   [3.425250914, 0.6239137298, 0.168855404],
>>>                   [3.425250914, 0.6239137298, 0.168855404],
>>>                   [3.425250914, 0.6239137298, 0.168855404]], requires_grad = True)
>>> mol = qml.qchem.Molecule(symbols, geometry, alpha=alpha)
>>> basis_a = mol.basis_set[0]
>>> basis_b = mol.basis_set[1]
>>> args = [mol.alpha]
>>> repulsion_integral(basis_a, basis_b, basis_a, basis_b)(*args)
0.45590152106593573