Esempio n. 1
0
def readMOs(siz):
  fil = showFileDialog()
  f = open(fil)
  lines = f.readlines()
  f.close()

  mos = MolecularOrbitals(siz)

  m = n = 0
  for line in lines:
     dmval = string.atof(line.strip())
     mos.setMatrixAt(m, n, dmval)
     n += 1
     if (n == siz):
        n = 0
        m += 1

  return mos
Esempio n. 2
0
  return mat

f = readMat(fn)
s = readMat(sn)

n = len(f)

F = Fock(n)
S = Overlap(n)

F.setMatrix(f)
S.setMatrix(s)

# print F.getMatrix()

print n

MO = MolecularOrbitals(n)
MO.compute(F, S)
print MO.getOrbitalEnergies()

D = Density(n)
D.compute(None, False, None, 1, MO)

PS = D.mul(S)

print PS
print PS.trace()