vayesta.core.scmf
Submodules
vayesta.core.scmf.brueckner
- class vayesta.core.scmf.brueckner.Brueckner_RHF(*args, diis_obj='dm1', **kwargs)[source]
Bases:
SCMF
- name = 'Brueckner'
- update_mo_coeff(mo_coeff, mo_occ, diis=None, t1=None, mo_orig=None)[source]
Get new MO coefficients.
- check_convergence(e_tot, dm1, e_last=None, dm1_last=None, etol=None, dtol=None)
- property e_tot
- property e_tot_oneshot
- get_diis()
- kernel(*args, **kwargs)
- property kernel_orig
Original kernel of embedding method.
- property log
- property mf
- class vayesta.core.scmf.brueckner.Brueckner_UHF(*args, diis_obj='dm1', **kwargs)[source]
Bases:
Brueckner_RHF
- update_mo_coeff(mo_coeff, mo_occ, diis=None, t1=None, mo_orig=None)[source]
Get new MO coefficients.
- check_convergence(e_tot, dm1, e_last=None, dm1_last=None, etol=None, dtol=None)
- property e_tot
- property e_tot_oneshot
- get_t1()
Get global T1 amplitudes from quantum embedding calculation.
- kernel(*args, **kwargs)
- property kernel_orig
Original kernel of embedding method.
- property log
- property mf
- name = 'Brueckner'
vayesta.core.scmf.pdmet
- class vayesta.core.scmf.pdmet.PDMET_RHF(*args, dm_type='default', **kwargs)[source]
Bases:
SCMF
- name = 'p-DMET'
- update_mo_coeff(mo_coeff, mo_occ, diis=None, dm1=None, mo_orig=None)[source]
Get new set of MO coefficients.
Must be implemented for any SCMF method.
- check_convergence(e_tot, dm1, e_last=None, dm1_last=None, etol=None, dtol=None)
- property e_tot
- property e_tot_oneshot
- get_diis()
- kernel(*args, **kwargs)
- property kernel_orig
Original kernel of embedding method.
- property log
- property mf
- class vayesta.core.scmf.pdmet.PDMET_UHF(*args, dm_type='default', **kwargs)[source]
Bases:
PDMET_RHF
- update_mo_coeff(mo_coeff, mo_occ, diis=None, dm1=None, mo_orig=None)[source]
Get new set of MO coefficients.
Must be implemented for any SCMF method.
- check_convergence(e_tot, dm1, e_last=None, dm1_last=None, etol=None, dtol=None)
- property e_tot
- property e_tot_oneshot
- kernel(*args, **kwargs)
- property kernel_orig
Original kernel of embedding method.
- property log
- property mf
- name = 'p-DMET'
vayesta.core.scmf.qpewdmet
- class vayesta.core.scmf.qpewdmet.QPEWDMET_RHF(emb, proj=2, static_potential_conv_tol=1e-05, global_static_potential=True, eta=0.01, damping=0, sc=True, aux_shift=False, aux_shift_frag=False, store_hist=True, store_scfs=False, use_sym=False, static_potential_init=None, se_degen_tol=1e-06, se_eval_tol=1e-06, drop_non_causal=False, *args, **kwargs)[source]
Bases:
SCMF
Quasi-particle self-consistent energy weighted density matrix embedding
- name = 'QP-EWDMET'
- update_mo_coeff(mo_coeff, mo_occ, diis=None)[source]
Get new MO coefficients for a SCMF iteration.
TODO: Should GF and SE be stored in AO basis since the MO basis may change between iterations?
- Parameters:
mf (PySCF compatible SCF object) – Mean-field object.
diis (pyscf.lib.diis.DIIS object, optional) – DIIS object.
- Returns:
mo_coeff – New MO coefficients.
- Return type:
ndarray
- fock_scf(v)[source]
Relax density in presence of new static potential
- Parameters:
v (ndarray) – Static potential
- Returns:
mo_coeff – New MO coefficients.
- Return type:
ndarray
- get_greens_function()[source]
Calculate the dynamic and static Green’s function in the Lehmann representation
- Returns:
gf (Lehmann) – Dynamic Green’s function from Block Lanczos
gf_qp (Lehmann) – Static Green’s function from Fock matrix + Klein potential
- property e_tot
- property e_tot_oneshot
- get_diis()
- kernel(*args, **kwargs)
- property kernel_orig
Original kernel of embedding method.
- property log
- property mf
vayesta.core.scmf.scmf
Self-consistent mean-field decorators
- class vayesta.core.scmf.scmf.SCMF(emb, etol=1e-08, dtol=1e-06, maxiter=100, damping=0.0, diis=True, diis_space=6, diis_min_space=1)[source]
Bases:
object
- name = 'SCMF'
- property log
- property mf
- property e_tot
- property e_tot_oneshot
- property kernel_orig
Original kernel of embedding method.