nmom_max (int) – Maximum moment number to calculate.
moments (tuple of numpy.ndarray, optional) – Tuple of (hole, particle) moments, if passed then they will
be used instead of calculating them. Default value is None.
integrals (BaseIntegrals, optional) – Integrals object. If None, generate from scratch. Default
value is None.
Returns:
conv (bool) – Convergence flag. Always True for GW, returned for
compatibility with other GW methods.
gf (dyson.Lehmann) – Green’s function object.
se (dyson.Lehmann) – Self-energy object.
qp_energy (numpy.ndarray) – Quasiparticle energies. Always None for GW, returned for
compatibility with other GW methods.
Spin-restricted one-shot GW via self-energy moment constraints for
molecules.
Parameters:
mf (pyscf.scf.SCF) – PySCF mean-field class.
diagonal_se (bool, optional) – If True, use a diagonal approximation in the self-energy.
Default value is False.
polarizability (str, optional) – Type of polarizability to use, can be one of (“drpa”,
“drpa-exact”, “dtda”, “thc-dtda”). Default value is `”drpa”.
npoints (int, optional) – Number of numerical integration points. Default value is 48.
optimise_chempot (bool, optional) – If True, optimise the chemical potential by shifting the
position of the poles in the self-energy relative to those in
the Green’s function. Default value is False.
fock_loop (bool, optional) – If True, self-consistently renormalise the density matrix
according to the updated Green’s function. Default value is
False.
fock_opts (dict, optional) – Dictionary of options passed to the Fock loop. For more details
see momentGW.fock.
compression (str, optional) – Blocks of the ERIs to use as a metric for compression. Can be
one or more of (“oo”, “ov”, “vv”, “ia”) which can be passed as
a comma-separated string. “oo”, “ov” and “vv” refer to
compression on the initial ERIs, whereas “ia” refers to
compression on the ERIs entering RPA, which may change under a
self-consistent scheme. Default value is “ia”.
compression_tol (float, optional) – Tolerance for the compression. Default value is 1e-10.
thc_opts (dict, optional) – Dictionary of options to be used for THC calculations. Current
implementation requires a filepath to import the THC integrals.
For most GW methods, this simply consists of the poles of the
self.gf that best overlap with the MOs, in order. In some
methods such as qsGW, these two quantities are not the same.
Get a boolean indicating whether the solver requires a Fock
loop.
Notes
For most GW methods, this is simply self.fock_loop. In some
methods such as qsGW, a Fock loop is required with or without
self.fock_loop for the quasiparticle self-consistency, with
this property acting as a hook to indicate this.
Solve the Dyson equation due to a self-energy resulting from a
list of hole and particle moments, along with a static
contribution.
Also finds a chemical potential best satisfying the physical
number of electrons. If self.optimise_chempot, this will
shift the self-energy poles relative to the Green’s function,
which is a partial self-consistency that better conserves the
particle number.
If self.fock_loop, this function will also require that the
outputted Green’s function is self-consistent with respect to
the corresponding density and Fock matrix.
Parameters:
se_moments_hole (numpy.ndarray) – Moments of the hole self-energy.
se_moments_part (numpy.ndarray) – Moments of the particle self-energy.
se_static (numpy.ndarray) – Static part of the self-energy.
integrals (Integrals) – Integrals object. Required if self.fock_loop is True.
Default value is None.
nmom_max (int) – Maximum moment number to calculate.
moments (tuple of numpy.ndarray, optional) – Tuple of (hole, particle) moments, if passed then they will
be used instead of calculating them. Default value is
None.
integrals (Integrals, optional) – Integrals object. If None, generate from scratch. Default
value is None.
Returns:
converged (bool) – Whether the solver converged. For single-shot calculations,
this is always True.
gf (dyson.Lehmann) – Green’s function object.
se (dyson.Lehmann) – Self-energy object.
qp_energy (NoneType) – Quasiparticle energies. For most GW methods, this is None.