Density-fitting tools
ElemCo.DFTools
— ModuleThis module contains various utils for density fitting.
Exported functions
ElemCo.DFTools.generate_3idx_integrals
— Functiongenerate_3idx_integrals(EC::ECInfo, cMO::SpinMatrix, fitbasis="mpfit"; save3idx=true)
Generate $v_p^{qL}$ with $v_{pr}^{qs} = v_p^{qL} δ_{LL'} v_r^{sL'}$ and store in file mmL
. If save3idx
is false, no 3-index integrals are calculated, only save pseudo-square-root-inverse Cholesky decomposition.
ElemCo.DFTools.generate_AO_DF_integrals
— Functiongenerate_AO_DF_integrals(EC::ECInfo, fitbasis="mpfit"; save3idx=true)
Generate AO integrals using DF + Cholesky. If save3idx is true, save Cholesky-decomposed 3-index integrals, otherwise save pseudo-square-root-inverse Cholesky decomposition.
Return nuclear repulsion energy.
ElemCo.DFTools.generate_DF_Fock
— Methodgenerate_DF_Fock(EC::ECInfo, cMO::SpinMatrix; check_diagonal=false)
Generate DF Fock matrix in MO basis. If check_diagonal
is true, check the off-diagonal elements of the Fock matrix to be small. The Fock matrix is saved in files f_mm
/f_MM
and orbital energies in e_m
/e_M
.
Return reference energy.
ElemCo.DFTools.generate_DF_integrals
— Methodgenerate_DF_integrals(EC::ECInfo, cMO::SpinMatrix; save3idx=true)
Generate $v_p^{qL}$ and $f_p^q$ with $v_{pr}^{qs} = v_p^{qL} δ_{LL'} v_r^{sL'}$. The $v_p^{qL}$ are generated using mpfit
fitting basis, and the $f_p^q$ are generated using jkfit
fitting basis. The integrals are stored in files mmL
and f_mm
.
Return reference energy (calculated using jkfit
fitting basis).