Skip to content

xubwa/socutils

Repository files navigation

This repository adds utility for PySCF to include SOMF corrections within spinor style and GHF style calculations. To do a spinor style calculation

import x2camf
from pyscf import gto
mol = gto.M(verbose=4,
                atom=[["O", (0., 0., 0.)], 
                      [1, (0., -0.757, 0.587)],
                      [1, (0., 0.757, 0.587)]],
                basis='ccpvdz')
    mf = x2camf_hf.X2CAMF_RHF(mol)
    e_spinor = mf.kernel()
    # gaunt term and breit term can be turned on by with_gaunt and with_breit
    mf2 = x2camf_hf.X2CAMF_RHF(mol, with_gaunt=True, with_breit=True)
    e_breit = mf2.kernel()

Note, spinor style calculation requires the "zquatev" module, one can install it through

pip instal git+https://github.com/sunqm/zquatev

To accelerates the calculation of SOC terms, "libx2camf" is required, and one can install it through

pip install git+https://github.com/warlocat/x2camf

To do a GHF style calculation

import x2camf_hf
from pyscf import gto, scf
mol = gto.M(verbose=4,
                atom=[["O", (0., 0., 0.)], 
                      [1, (0., -0.757, 0.587)],
                      [1, (0., 0.757, 0.587)]],
                basis='ccpvdz')
    gmf = x2camf_hf.x2camf_ghf(scf.GHF(mol))
    # gaunt term and breit term can be turned on and off by keyword with_gaunt and with_breit
    gmf2 = x2camf_hf.x2camf_ghf(scf.GHF(mol), with_gaunt=True, with_breit=True)
    e_ghf = gmf.kernel()
    e_breit = gmf2.kernel()

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages