def get_jk(self, dm, hermi=1, kpts=None, kpts_band=None, with_j=True, with_k=True, exxdiv='ewald'): if kpts is None: if numpy.all(self.kpts == 0): # Gamma-point calculation by default kpts = numpy.zeros(3) else: kpts = self.kpts else: kpts = numpy.asarray(kpts) if kpts.shape == (3, ): return df_jk.get_jk(self, dm, hermi, kpts, kpts_band, with_j, with_k, exxdiv) vj = vk = None if with_k: vk = df_jk.get_k_kpts(self, dm, hermi, kpts, kpts_band, exxdiv) if with_j: vj = df_jk.get_j_kpts(self, dm, hermi, kpts, kpts_band) return vj, vk
def get_jk(self, dm, hermi=1, kpts=None, kpts_band=None, with_j=True, with_k=True, omega=None, exxdiv='ewald'): # J/K for RSH functionals if omega is not None: return _sub_df_jk_(self, dm, hermi, kpts, kpts_band, with_j, with_k, omega, exxdiv) if kpts is None: if numpy.all(self.kpts == 0): # Gamma-point calculation by default kpts = numpy.zeros(3) else: kpts = self.kpts else: kpts = numpy.asarray(kpts) if kpts.shape == (3, ): return mpi_df_jk.get_jk(self, dm, hermi, kpts, kpts_band, with_j, with_k, exxdiv) vj = vk = None if with_k: vk = mpi_df_jk.get_k_kpts(self, dm, hermi, kpts, kpts_band, exxdiv) if with_j: vj = mpi_df_jk.get_j_kpts(self, dm, hermi, kpts, kpts_band) return vj, vk
def get_jk(self, dm, hermi=1, kpts=None, kpts_band=None, with_j=True, with_k=True, exxdiv='ewald'): if kpts is None: if numpy.all(self.kpts == 0): # Gamma-point calculation by default kpts = numpy.zeros(3) else: kpts = self.kpts else: kpts = numpy.asarray(kpts) if kpts.shape == (3,): return mpi_df_jk.get_jk(self, dm, hermi, kpts, kpts_band, with_j, with_k, exxdiv) vj = vk = None if with_k: vk = mpi_df_jk.get_k_kpts(self, dm, hermi, kpts, kpts_band, exxdiv) if with_j: vj = mpi_df_jk.get_j_kpts(self, dm, hermi, kpts, kpts_band) return vj, vk