def test_ncol_dks_lda_omega(self): mf = dks.UDKS(mol) mf.xc = 'lda + .2*HF' mf.collinear = 'ncol' eks4 = mf.kernel() self.assertAlmostEqual(eks4, -76.1457647524492, 8) mf = dks.UDKS(mol) mf.xc = 'lda + .2*HF' mf.collinear = 'ncol' mf.omega = .5 eks4 = mf.kernel() self.assertAlmostEqual(eks4, -75.65261312636814, 8)
def test_mcol_dks_mgga_high_cost(self): mf = dks.UDKS(mol) mf.xc = 'm06l' mf.collinear = 'mcol' mf._numint.spin_samples = 6 eks4 = mf.kernel() self.assertAlmostEqual(eks4, -75.54644605761466, 8)
def test_collinear_dks_lda(self): mf = dks.UDKS(mol) mf.xc = 'lda,vwn' mf.collinear = 'col' eks4 = mf.kernel() self.assertAlmostEqual(eks4, -75.02287138686222, 8) mf = mol1.DKS() mf.xc = 'lda,' mf.collinear = 'col' eks4 = mf.kernel() self.assertAlmostEqual(eks4, -74.00093287236554, 8)
def test_collinear_dks_mgga(self): mf = dks.UDKS(mol) mf.xc = 'm06l' mf.collinear = 'col' eks4 = mf.kernel() self.assertAlmostEqual(eks4, -75.54644605761466, 8) mf = mol1.DKS() mf.xc = 'pbe' mf.collinear = 'col' eks4 = mf.kernel() self.assertAlmostEqual(eks4, -75.08263680935453, 8)
def test_mcol_dks_lda(self): mf = dks.UDKS(mol) mf.xc = 'lda,vwn' mf.collinear = 'mcol' mf._numint.spin_samples = 6 eks4 = mf.kernel() self.assertAlmostEqual(eks4, -75.02287138686222, 8) mf = mol1.DKS() mf.xc = 'lda,' mf.collinear = 'mcol' mf._numint.spin_samples = 6 eks4 = mf.kernel() self.assertAlmostEqual(eks4, -74.00137998066057, 8)
def test_mcol_dks_gga_high_cost(self): mf = dks.UDKS(mol) mf.xc = 'pbe' mf.collinear = 'mcol' mf._numint.spin_samples = 6 eks4 = mf.kernel() self.assertAlmostEqual(eks4, -75.49000045638684, 8) mf = mol1.DKS() mf.xc = 'pbe' mf.collinear = 'mcol' mf._numint.spin_samples = 6 eks4 = mf.kernel() self.assertAlmostEqual(eks4, -75.08323754335314, 8)
def DKS(mol, xc='LDA,VWN'): from pyscf.scf import dhf if dhf.zquatev and mol.spin == 0: return dks.RDKS(mol, xc=xc) else: return dks.UDKS(mol, xc=xc)
def test_collinear_x2c_uks_gga(self): mf = dks.UDKS(mol).x2c() mf.xc = 'pbe' mf.collinear = 'col' eks4 = mf.kernel() self.assertAlmostEqual(eks4, -75.48678822885732, 8)
def test_ncol_x2c_uks_lda(self): mf = dks.UDKS(mol).x2c() mf.xc = 'lda,' mf.collinear = 'ncol' eks4 = mf.kernel() self.assertAlmostEqual(eks4, -74.35294598734184, 8)
def test_collinear_dks_gga(self): mf = dks.UDKS(mol) mf.xc = 'pbe' mf.collinear = 'col' eks4 = mf.kernel() self.assertAlmostEqual(eks4, -75.49000045638684, 8)