Ejemplo n.º 1
0
 def suborth_imp_to_env(self, impbas_coeff):
     c_a = numpy.hstack((numpy.dot(self.orth_coeff, self.env_orb[0]), \
                         impbas_coeff[0]))
     c_b = numpy.hstack((numpy.dot(self.orth_coeff, self.env_orb[1]), \
                         impbas_coeff[1]))
     s = self.entire_scf.get_ovlp(self.mol)
     t_a = lo.schmidt_orth_coeff(reduce(numpy.dot, (c_a.T.conj(), s, c_a)))
     t_b = lo.schmidt_orth_coeff(reduce(numpy.dot, (c_b.T.conj(), s, c_b)))
     impbas_coeff = (numpy.dot(c_a, t_a)[:,self.env_orb[0].shape[1]:], \
                     numpy.dot(c_b, t_b)[:,self.env_orb[1].shape[1]:])
     return impbas_coeff
Ejemplo n.º 2
0
 def suborth_imp_to_env(self, impbas_coeff):
     c = numpy.hstack((numpy.dot(self.orth_coeff, self.env_orb), \
                       impbas_coeff))
     s = self.entire_scf.get_ovlp(self.mol)
     t = lo.schmidt_orth_coeff(reduce(numpy.dot, (c.T.conj(), s, c)))
     off = self.env_orb.shape[1]
     impbas_coeff = numpy.dot(c, t)[:,off:]
     return impbas_coeff