예제 #1
0
 def get_energy(atomz, with_ii=True):
     atomzs = [atomz, atomz]
     poss = torch.tensor([[-0.5, 0.0, 0.0], [0.5, 0.0, 0.0]], dtype=dtype)
     mol = Mol((atomzs, poss), basis=basis, spin=0, dtype=dtype)
     qc = HF(mol, restricted=True).run()
     ene = qc.energy()
     if with_ii:
         ene = ene - mol.get_nuclei_energy()
     return ene
예제 #2
0
 def get_energy(atomzs):
     poss = torch.tensor([[-0.5, 0.0, 0.0], [0.5, 0.0, 0.0]], dtype=dtype)
     mol = Mol((atomzs, poss),
               basis="6-311++G**",
               spin=0,
               dtype=dtype,
               grid="sg3")
     qc = KS(mol, xc="lda_x", restricted=True).run()
     ene = qc.energy() - mol.get_nuclei_energy()
     return ene
예제 #3
0
파일: test_system.py 프로젝트: diffqc/dqc
 def get_ene_ii(atomz, atompos):
     m = Mol((atomz, atompos), basis="6-311++G**", dtype=dtype, spin=1)
     return m.get_nuclei_energy()
예제 #4
0
 def get_energy(atomzs):
     poss = torch.tensor([[-0.5, 0.0, 0.0], [0.5, 0.0, 0.0]], dtype=dtype)
     mol = Mol((atomzs, poss), basis=basis, spin=0, dtype=dtype)
     qc = HF(mol, restricted=True).run()
     ene = qc.energy() - mol.get_nuclei_energy()
     return ene