Seious bug: LSDA + Gamma-only + task groups = bad charge, due to work space

not correctly reset to zero after each k-point


git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@7296 c92efa57-630b-4861-b058-cf58834340f0
This commit is contained in:
giannozz 2010-12-10 16:57:32 +00:00
parent f6887916c2
commit 97d478d591
4 changed files with 25 additions and 8 deletions

View File

@ -38,6 +38,8 @@ Fixed in CVS version:
should be given in KBar as stated in the documentation!
* CP: incorrect stress calculated in the spin-polarized case
* CPPP: spurious line in all versions since 4.2 was causing an error
* PW: LSDA + Gamma tricks + task groups = not working.
Also: pw.x -ntg 1 was activating task groups (harmless)
* PW: corrected an old bug for Berry's phase finite electric field
calculations with non-orthorombic simulation cells. Also fixed
an old but minor bug on averaging of Berry phases between strings

View File

@ -927,7 +927,9 @@ Note about Bader's analysis: on
\texttt{http://theory.cm.utexas.edu/bader/} one can find a software that performs
Bader's analysis starting from charge on a regular grid. The required
"cube" format can be produced by \qe\ using \texttt{pp.x} (info by G. Lapenna
who has successfully used this technique). This code should perform
who has successfully used this technique, but adds: ``Problems occur with polar
X-H bonds or in all cases where the zero-flux of density comes too close to
atoms described with pseudo-potentials"). This code should perform
decomposition into Voronoi polyhedra as well, in place of obsolete
code \texttt{voronoy.x} (removed from distribution since v.4.2).

View File

@ -253,7 +253,7 @@ compute_becsum.o : ../Modules/wavefunctions.o
compute_becsum.o : becmod.o
compute_becsum.o : buffers.o
compute_becsum.o : noncol.o
compute_becsum.o : paw_onecenter.o
compute_becsum.o : paw_symmetry.o
compute_becsum.o : pwcom.o
compute_becsum.o : scf_mod.o
compute_deff.o : ../Modules/ions_base.o
@ -367,6 +367,7 @@ electrons.o : io_rho_xml.o
electrons.o : newd.o
electrons.o : noncol.o
electrons.o : paw_onecenter.o
electrons.o : paw_symmetry.o
electrons.o : pwcom.o
electrons.o : scf_mod.o
eqvect.o : ../Modules/kind.o
@ -753,6 +754,7 @@ iweights.o : noncol.o
kernel_table.o : ../Modules/constants.o
kernel_table.o : ../Modules/io_files.o
kernel_table.o : ../Modules/kind.o
kernel_table.o : ../Modules/wrappers.o
kpoint_grid.o : ../Modules/input_parameters.o
kpoint_grid.o : ../Modules/io_global.o
kpoint_grid.o : ../Modules/kind.o
@ -939,11 +941,9 @@ paw_init.o : ../Modules/random_numbers.o
paw_init.o : ../Modules/uspp.o
paw_init.o : noncol.o
paw_init.o : paw_symmetry.o
paw_init.o : paw_onecenter.o
paw_init.o : pwcom.o
paw_init.o : scf_mod.o
paw_onecenter.o : ../Modules/atom.o
paw_onecenter.o : ../Modules/cell_base.o
paw_onecenter.o : ../Modules/constants.o
paw_onecenter.o : ../Modules/funct.o
paw_onecenter.o : ../Modules/io_global.o
@ -956,10 +956,22 @@ paw_onecenter.o : ../Modules/radial_grids.o
paw_onecenter.o : ../Modules/uspp.o
paw_onecenter.o : noncol.o
paw_onecenter.o : pwcom.o
paw_onecenter.o : symm_base.o
paw_symmetry.o : ../Modules/cell_base.o
paw_symmetry.o : ../Modules/constants.o
paw_symmetry.o : ../Modules/io_global.o
paw_symmetry.o : ../Modules/ions_base.o
paw_symmetry.o : ../Modules/kind.o
paw_symmetry.o : ../Modules/mp.o
paw_symmetry.o : ../Modules/mp_global.o
paw_symmetry.o : ../Modules/uspp.o
paw_symmetry.o : noncol.o
paw_symmetry.o : pwcom.o
paw_symmetry.o : symm_base.o
plugin_forces.o : ../Modules/io_files.o
plugin_forces.o : ../Modules/io_global.o
plugin_forces.o : ../Modules/kind.o
plugin_forces.o : ../Modules/mp.o
plugin_forces.o : ../Modules/mp_global.o
plugin_forces.o : ../Modules/plugin_flags.o
plugin_initialization.o : ../Modules/io_files.o
plugin_initialization.o : ../Modules/io_global.o
@ -1453,7 +1465,7 @@ sum_band.o : ../Modules/wavefunctions.o
sum_band.o : becmod.o
sum_band.o : buffers.o
sum_band.o : noncol.o
sum_band.o : paw_onecenter.o
sum_band.o : paw_symmetry.o
sum_band.o : pwcom.o
sum_band.o : realus.o
sum_band.o : scf_mod.o
@ -1476,6 +1488,7 @@ summary.o : ../Modules/mp.o
summary.o : ../Modules/mp_global.o
summary.o : ../Modules/printout_base.o
summary.o : ../Modules/uspp.o
summary.o : kernel_table.o
summary.o : noncol.o
summary.o : pwcom.o
summary.o : symm_base.o

View File

@ -264,15 +264,15 @@ SUBROUTINE sum_band()
ALLOCATE( tg_psi( v_siz ) )
ALLOCATE( tg_rho( v_siz ) )
!
tg_rho = 0.0_DP
!
incr = 2 * nogrp
!
END IF
!
k_loop: DO ik = 1, nks
!
IF( use_task_groups ) tg_rho = 0.0_DP
IF ( lsda ) current_spin = isk(ik)
!
npw = ngk(ik)
!
IF ( nks > 1 ) THEN