コード例 #1
0
ファイル: lcao.py プロジェクト: Huaguiyuan/gpawDFT
    def read(self, reader):
        WaveFunctions.read(self, reader)

        if 'coefficients' not in reader.wave_functions:
            return

        for kpt in self.kpt_u:
            C_nM = reader.wave_functions.proxy('coefficients', kpt.s, kpt.k)
            kpt.C_nM = self.bd.empty(self.setups.nao, dtype=self.dtype)
            for myn, C_M in enumerate(kpt.C_nM):
                n = self.bd.global_index(myn)
                # XXX number of bands could have been rounded up!
                if n >= len(C_nM):
                    break
                C_M[:] = C_nM[n] * Bohr**1.5
コード例 #2
0
 def read(self, reader):
     WaveFunctions.read(self, reader)
     r = reader.wave_functions
     if 'coefficients' in r:
         self.read_wave_functions(r)