Beispiel #1
0
    def __init__(self, mf, frozen=0, mo_coeff=None, mo_occ=None):
        assert isinstance(mf, scf.khf.KSCF)

        if mo_coeff is None:
            mo_coeff = mf.mo_coeff
        if mo_occ is None:
            mo_occ = mf.mo_occ

        self._scf = mf
        self.kpts = mf.kpts
        self.verbose = mf.verbose
        self.max_memory = mf.max_memory

        self.max_space = getattr(__config__, 'kcis_rhf_max_space', 20)
        self.max_cycle = getattr(__config__, 'kcis_rhf_max_cycle', 50)
        self.conv_tol = getattr(__config__, 'kcis_rhf_conv_tol', 1e-7)

        ##################################################
        # don't modify the following attributes, unless you know what you are doing
        self.keep_exxdiv = False
        self.direct = False
        self.build_full_H = False
        self.davidson = True

        self.khelper = kpts_helper.KptsHelper(mf.cell, mf.kpts)
        self.mo_coeff = mo_coeff
        self.mo_occ = mo_occ
        self.frozen = frozen
        self._nocc = None
        self._nmo = None
        self.voov = None
        self.ovov = None
Beispiel #2
0
    def __init__(self, mf, frozen=None, mo_coeff=None, mo_occ=None):

        if mo_coeff  is None: mo_coeff  = mf.mo_coeff
        if mo_occ    is None: mo_occ    = mf.mo_occ

        self.mol = mf.mol
        self._scf = mf
        self.verbose = self.mol.verbose
        self.stdout = self.mol.stdout
        self.max_memory = mf.max_memory

        self.frozen = frozen

##################################################
# don't modify the following attributes, they are not input options
        self.kpts = mf.kpts
        self.mo_energy = mf.mo_energy
        self.nkpts = len(self.kpts)
        self.khelper = kpts_helper.KptsHelper(mf.cell, mf.kpts)
        self.mo_coeff = mo_coeff
        self.mo_occ = mo_occ
        self._nocc = None
        self._nmo = None
        self.e_corr = None
        self.e_hf = None
        self.t2 = None
        self._keys = set(self.__dict__.keys())
Beispiel #3
0
 def __init__(self, mf, frozen=0, mo_coeff=None, mo_occ=None):
     assert (isinstance(mf, scf.khf.KSCF))
     if not isinstance(mf, scf.kghf.KGHF):
         mf = scf.addons.convert_to_ghf(mf)
     self.kpts = mf.kpts
     self.khelper = kpts_helper.KptsHelper(mf.cell, mf.kpts)
     gccsd.GCCSD.__init__(self, mf, frozen, mo_coeff, mo_occ)
Beispiel #4
0
 def __init__(self, mf, frozen=0, mo_coeff=None, mo_occ=None, SYMVERBOSE=0):
     rccsd.RCCSD.__init__(self, mf, frozen, mo_coeff, mo_occ, SYMVERBOSE)
     self.kpts = mf.kpts
     self.khelper = kpts_helper.KptsHelper(mf.cell, mf.kpts)
     self.max_space = 20
     self._keys = self._keys.union(['max_space'])
     self.symlib = SYMLIB('ctf')
     self.make_symlib()
Beispiel #5
0
 def __init__(self, mf, frozen=0, mo_coeff=None, mo_occ=None):
     rccsd_numpy.RCCSD.__init__(self, mf, frozen, mo_coeff, mo_occ)
     self.kpts = mf.kpts
     self.khelper = kpts_helper.KptsHelper(mf.cell, mf.kpts)
     self.max_space = 20
     self._keys = self._keys.union(['max_space'])
     self.lib = lib
     self.symlib = SYMLIB('numpy')
     self.make_symlib()
Beispiel #6
0
    def __init__(self, mf, frozen=0, mo_coeff=None, mo_occ=None):
        assert (isinstance(mf, scf.khf.KSCF))
        pyscf.cc.ccsd.CCSD.__init__(self, mf, frozen, mo_coeff, mo_occ)
        self.kpts = mf.kpts
        self.khelper = kpts_helper.KptsHelper(mf.cell, mf.kpts)
        self.made_ee_imds = False
        self.made_ip_imds = False
        self.made_ea_imds = False
        self.ip_partition = None
        self.ea_partition = None
        self.direct = True  # If possible, use GDF to compute Wvvvv on-the-fly

        keys = set(['kpts', 'khelper', 'made_ee_imds',
                    'made_ip_imds', 'made_ea_imds', 'ip_partition',
                    'ea_partition', 'max_space', 'direct'])
        self._keys = self._keys.union(keys)
        self.__imds__ = None
Beispiel #7
0
 def __init__(self, kmf, frozen=0, mo_coeff=None, mo_occ=None):
     if frozen != 0:
         raise NotImplementedError
     self._scf = kmf
     self.kpts = kmf.kpts
     self.nkpts = len(kmf.kpts)
     self.kconserv = tools.get_kconserv(kmf.cell, kmf.kpts)
     self.diis = None
     self.khelper = kpts_helper.KptsHelper(kmf.cell, kmf.kpts)
     self.verbose = kmf.verbose
     if mo_coeff is None: mo_coeff = kmf.mo_coeff
     if mo_occ is None: mo_occ = kmf.mo_occ
     self.mo_coeff = mo_coeff
     self.mo_occ = mo_occ
     self.mo_energy = kmf.mo_energy
     self.max_cycle = kmf.max_cycle
     self.conv_tol = kmf.conv_tol