10.21.2. pbc.ao2mo — Integral transformations for crystalline Gaussian type orbitals

The pbc.ao2mo module is an analog of the ao2mo module but with the Gaussian type atomic orbitals replaced by the corresponding crystalline orbitals.

10.21.2.2. Program reference

This ao2mo module is kept for backward compatiblity. It’s recommended to use pyscf.pbc.df module to get 2e MO integrals

pyscf.pbc.ao2mo.eris.assemble_eri(cell, orb_pair_invG1, orb_pair_G2, q=None, verbose=4)[source]

Assemble 4-index electron repulsion integrals. Returns:

(nmo1*nmo2, nmo3*nmo4) ndarray

pyscf.pbc.ao2mo.eris.general(cell, mo_coeffs, kpts=None, compact=False)[source]

pyscf-style wrapper to get MO 2-el integrals.

pyscf.pbc.ao2mo.eris.get_ao_eri(cell, kpts=None)[source]

Convenience function to return AO 2-el integrals.

pyscf.pbc.ao2mo.eris.get_ao_pairs_G(cell, kpts=None)[source]

Calculate forward (G|ij) and “inverse” (ij|G) FFT of all AO pairs.

Args:

cell : instance of Cell

Returns:
ao_pairs_G, ao_pairs_invG(ngrids, nao*(nao+1)/2) ndarray

The FFTs of the real-space AO pairs.

pyscf.pbc.ao2mo.eris.get_mo_eri(cell, mo_coeffs, kpts=None)[source]

Convenience function to return MO 2-el integrals.

pyscf.pbc.ao2mo.eris.get_mo_pairs_G(cell, mo_coeffs, kpts=None, q=None)[source]

Calculate forward (G|ij) FFT of all MO pairs. TODO: - Implement simplifications for real orbitals. Args:

mo_coeff: length-2 list of (nao,nmo) ndarrays

The two sets of MO coefficients to use in calculating the product |ij).

Returns:
mo_pairs_G(ngrids, nmoi*nmoj) ndarray

The FFT of the real-space MO pairs.

pyscf.pbc.ao2mo.eris.get_mo_pairs_invG(cell, mo_coeffs, kpts=None, q=None)[source]

Calculate “inverse” (ij|G) FFT of all MO pairs. TODO: - Implement simplifications for real orbitals. Args:

mo_coeff: length-2 list of (nao,nmo) ndarrays

The two sets of MO coefficients to use in calculating the product |ij).

Returns:
mo_pairs_invG(ngrids, nmoi*nmoj) ndarray

The inverse FFTs of the real-space MO pairs.