Calculando 2e-integrais com PySCF

Sep 02 2020

Questão

Na teoria Hartree-Fock, a integral de dois elétrons é dada por:

$[ij|kl]$ = $\int dx_{1}dx_{2}(\chi_{i}(x_{1})\chi_{j}(x_{1})\frac{1}{r_{12}}\chi_{k}^{*}(x_2)\chi_{l}(x_{2})$

Estou interessado em escrever a integral 2e para o átomo de Hélio (para um determinado conjunto de base) em PySCF. Quero fazer isso com e sem ajuste de densidade (DF) / resolução de identidade (RI).

Tentativa

Em minha tentativa de produzir a integral 2e a partir de PySCF (sem DF / RI), usei o seguinte código:

from pyscf import gto
mol = gto.M(atom='He 0 0 0', basis='6-31g')
eri = mol.intor('int2e', aosym='s8')
print(eri)

>> [1.54393568 0.78544719 0.42702546 0.80395186 0.47618957 0.61593794]

Onde tenho outro arquivo para comparar, esperava um conjunto de dados muito maior. Também imaginei que deveria haver um loop SCF; no entanto, isso não é indicado pela documentação PySCF.

Obrigado desde já por qualquer ajuda.


Observação: esta questão está relacionada às seguintes questões anteriores:

  • Integrais de um centro de dois elétrons entre 1s STO
  • Quais programas podem fazer integrais de elétrons e cálculos SCF com mais de uma CPU?
  • Integrais de dois elétrons com correlação de troca

Respostas

2 Tyberius Sep 02 2020 at 23:04

Achei que poderia valer a pena abordar alguns dos equívocos na pergunta, pois eles são provavelmente bastante comuns.

Sem SCF anterior

Os integrais de dois elétrons AO (e, na verdade, todos os integrais AO usados ​​no procedimento SCF) podem ser gerados antes de fazer qualquer ciclo. Isso ocorre porque eles estão apenas entre os orbitais atômicos, que sabemos desde o início do cálculo. Na prática, você provavelmente verá integrais de dois elétrons recomputados durante o ciclo SCF, mas isso é apenas para evitar o armazenamento de ~$N^4$ esses valores, que se tornam exorbitantes, mesmo para cálculos bastante pequenos.

Para calcular integrais de MO, você precisaria ter concluído todos os ciclos SCF, mas contanto que não esteja fazendo nenhum método Post-SCF, você não precisa realmente transformar explicitamente as integrais de AO em MO para calcular o energia.

Menos integrais do que o esperado

Isso se resume à simetria. Para$\ce{He}$ com o conjunto de base 6-31G, você tem dois orbitais atômicos, que devem levar a $2^4=16$integrais de dois elétrons. No entanto, como as integrais têm simetria permutacional (veja esta questão em Chem SE ), existem na verdade apenas 6 integrais únicas, que você escreveu em sua questão.