fcdmft.gw.mol.qsgw_exact module#

class fcdmft.gw.mol.qsgw_exact.QSGWExact(mf, auxbasis=None)[source]#

Bases: GWAC

Attributes:
nmo
nocc

Methods

__call__(*args, **kwargs)

Update the attributes of the current object.

ao2mo([mo_coeff])

Transform density-fitting integral from AO to MO.

apply(fn, *args, **kwargs)

Apply the fn to rest arguments: return fn(*args, **kwargs). The return value of method set is the object itself. This allows a series of functions/methods to be executed in pipe.

check_sanity()

Check input of class/object attributes, check whether a class method is overwritten.

copy()

Returns a shallow copy

energy_tot([nw])

Calculate GW total energy using Galitskii-Migdal formula.

get_ef([mo_energy])

Get Fermi level.

get_frozen_mask()

Get boolean mask for the restricted reference orbitals.

get_sigma_exchange(mo_coeff)

Get exchange self-energy (EXX).

initialize_df([auxbasis])

Initialize density fitting.

kernel()

Do one-shot GW calculation using analytical continuation.

loop_ao2mo([mo_coeff, ijslice])

Transform density-fitting integral from AO to MO by block.

make_gf(omega[, eta])

Get qsGW Green's function.

make_rdm1([nw, ao_repr])

Get GW one-particle density matrix.

post_kernel(envs)

A hook to be run after the main body of the kernel function.

pre_kernel(envs)

A hook to be run before the main body of kernel function is executed.

run(*args, **kwargs)

Call the kernel function of current object.

set(*args, **kwargs)

Update the attributes of the current object.

setup_evaluation_grid([fallback_freqs, ...])

Set up self-energy grid, aka freqs2, aka gw.freqs.

view(cls)

New view of object with the same attributes.

dump_flags

get_nmo

get_nocc

dump_flags(verbose=None)[source]#
energy_tot(nw=60)[source]#

Calculate GW total energy using Galitskii-Migdal formula. V. M. Galitskii and A. B. Migdal, Zh. E ksp. Teor. Fiz. 34, 139~1958! @Sov. Phys. JETP 139, 96 ~1958!# Working equation: equation A5 in Phys. Rev. B 88, 075105

Parameters:
nwint, optional

number for imaginary frequency grids for integration, by default 60

Returns:
e_totdouble

GW total energy

e_hfdouble

HF total energy

e_cdouble

GW correlation energy

kernel()[source]#

Do one-shot GW calculation using analytical continuation.

make_gf(omega, eta=0.0)[source]#

Get qsGW Green’s function.

Parameters:
omegacomplex 1d array

frequency grids

etadouble, optional

broadening parameter, by default 0

Returns:
gf: complex 3d array

qsGW Green’s function in mean-field MO space.

gf0complex 3d array

non-interacting Green’s function.

sigmacomplex 3d array

self-energy (including 1e correction) in mean-field MO space.

make_rdm1(nw=60, ao_repr=False)[source]#

Get GW one-particle density matrix. rdm1 = G(it=0) = int dw G(iw)

Parameters:
nwint, optional

number for imaginary frequency grids for integration, by default 60

ao_reprbool, optional

return density matrix in AO, by default False

Returns:
rdm1double ndarray

one-particle density matrix

fcdmft.gw.mol.qsgw_exact.kernel(gw)[source]#