3
0
mirror of https://github.com/triqs/dft_tools synced 2025-01-05 10:59:34 +01:00

[feat] allow dc_imp to be a triqs Gf object (freq dependent)

This commit is contained in:
Alexander Hampel 2023-12-12 12:32:10 -05:00
parent c54f346ba3
commit 4951b15fa4

View File

@ -1790,8 +1790,11 @@ class SumkDFT(object):
for bname, gf in sigma_minus_dc[icrsh]: for bname, gf in sigma_minus_dc[icrsh]:
# Transform dc_imp to global coordinate system # Transform dc_imp to global coordinate system
if self.use_rotations: if self.use_rotations:
gf -= np.dot(self.rot_mat[icrsh], np.dot(self.dc_imp[icrsh][ # if dc_imp is an numpy array simple rotate by hand, otherwise assume it is a triqs Gf
bname], self.rot_mat[icrsh].conjugate().transpose())) if isinstance(self.dc_imp[icrsh][bname], np.ndarray):
gf -= np.dot(self.rot_mat[icrsh], np.dot(self.dc_imp[icrsh][bname], self.rot_mat[icrsh].conjugate().transpose()))
else:
gf -= self.rotloc(icrsh, self.dc_imp[icrsh][bname], direction='toGlobal')
else: else:
gf -= self.dc_imp[icrsh][bname] gf -= self.dc_imp[icrsh][bname]