From 3b9a9dab9c0aa0a55c10d15459672f1a3c377486 Mon Sep 17 00:00:00 2001 From: Jonathan Karp Date: Wed, 13 Oct 2021 17:37:33 -0400 Subject: [PATCH] vectorize loop over frequencies in spaghettis --- python/triqs_dft_tools/sumk_dft_tools.py | 29 +++++++++-------------- test/python/srvo3_spectral.ref.h5 | Bin 370518 -> 379798 bytes 2 files changed, 11 insertions(+), 18 deletions(-) diff --git a/python/triqs_dft_tools/sumk_dft_tools.py b/python/triqs_dft_tools/sumk_dft_tools.py index c40e9838..d1c640db 100644 --- a/python/triqs_dft_tools/sumk_dft_tools.py +++ b/python/triqs_dft_tools/sumk_dft_tools.py @@ -850,15 +850,15 @@ class SumkDFTTools(SumkDFT): if mu is None: mu = self.chemical_potential spn = self.spin_block_names[self.SO] - mesh = [x.real for x in self.Sigma_imp_w[0].mesh] - n_om = len(mesh) + mesh = numpy.array([x.real for x in self.Sigma_imp_w[0].mesh]) if plot_range is None: om_minplot = mesh[0] - 0.001 - om_maxplot = mesh[n_om - 1] + 0.001 + om_maxplot = mesh[-1] + 0.001 else: om_minplot = plot_range[0] om_maxplot = plot_range[1] + n_om = len(mesh[(mesh > om_minplot)&(mesh < om_maxplot)]) if ishell is None: Akw = {sp: numpy.zeros([self.n_k, n_om], numpy.float_) @@ -882,14 +882,11 @@ class SumkDFTTools(SumkDFT): if ishell is None: # Non-projected A(k,w) - for iom in range(n_om): - if (mesh[iom] > om_minplot) and (mesh[iom] < om_maxplot): - for bname, gf in G_latt_w: - Akw[bname][ik, iom] += gf.data[iom, :, - :].imag.trace() / (-1.0 * numpy.pi) - # shift Akw for plotting stacked k-resolved eps(k) - # curves - Akw[bname][ik, iom] += ik * plot_shift + for bname, gf in G_latt_w: + Akw[bname][ik] = -gf.data[numpy.where((mesh > om_minplot)&(mesh < om_maxplot))].imag.trace(axis1=1, axis2=2)/numpy.pi + # shift Akw for plotting stacked k-resolved eps(k) + # curves + Akw[bname][ik] += ik * plot_shift else: # ishell not None # Projected A(k,w): @@ -907,13 +904,9 @@ class SumkDFTTools(SumkDFT): G_loc[bname] << self.rotloc( ishell, gf, direction='toLocal', shells='all') - for iom in range(n_om): - if (mesh[iom] > om_minplot) and (mesh[iom] < om_maxplot): - for ish in range(self.shells[ishell]['dim']): - for sp in spn: - Akw[sp][ish, ik, iom] = G_loc[sp].data[ - iom, ish, ish].imag / (-1.0 * numpy.pi) - + for ish in range(self.shells[ishell]['dim']): + for sp in spn: + Akw[sp][ish, ik] = -gf.data[numpy.where((mesh > om_minplot)&(mesh < om_maxplot))].imag.trace(axis1=1, axis2=2)/numpy.pi # Collect data from mpi for sp in spn: Akw[sp] = mpi.all_reduce(mpi.world, Akw[sp], lambda x, y: x + y) diff --git a/test/python/srvo3_spectral.ref.h5 b/test/python/srvo3_spectral.ref.h5 index 9d12fd407843bf5e06b0f9681de811afad315dac..835b086e990cdee53b89e3e845f3c70483b0d3b6 100644 GIT binary patch delta 37700 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 W|Bn5_mhj0@nEZcT%DKlZT>k-b@Ml^8 delta 36985 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 oztihhr;bG(YUH5x+H73eLz9mG-Gq