- reduce substituted by mp_sum

git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@4794 c92efa57-630b-4861-b058-cf58834340f0
This commit is contained in:
cavazzon 2008-04-12 16:21:19 +00:00
parent c3fe9dd438
commit f2409b4684
3 changed files with 13 additions and 8 deletions

View File

@ -18,6 +18,8 @@ subroutine do_shift_ew (alat, nat, ntyp, ityp, zv, delta_zv, at, bg, tau, &
!
USE kinds, ONLY : DP
USE constants, ONLY : tpi, e2
USE mp_global, ONLY : intra_pool_comm
USE mp, ONLY : mp_sum
implicit none
!
! first the dummy variables
@ -170,9 +172,8 @@ subroutine do_shift_ew (alat, nat, ntyp, ityp, zv, delta_zv, at, bg, tau, &
shift_ion(:) = e2 * shift_ion(:)
#ifdef __PARA
call reduce (nat, shift_ion)
#endif
call mp_sum ( shift_ion, intra_pool_comm )
deallocate (rhon)
return
end subroutine do_shift_ew

View File

@ -199,7 +199,7 @@ subroutine local_dos (iflag, lsign, kpoint, kband, spin_component, &
enddo
who_calculate=1
#ifdef __PARA
call reduce(nproc_pool,maxmod)
call mp_sum( maxmod, intra_pool_comm )
do iproc=2,nproc_pool
if (maxmod(iproc)>maxmod(who_calculate)) &
who_calculate=iproc

View File

@ -793,6 +793,8 @@ subroutine compute_mmn
use uspp, only : nkb, vkb
USE uspp_param, ONLY : upf, nh, lmaxq
use becmod, only : becp, rbecp, calbec
use mp_global, only : intra_pool_comm
use mp, only : mp_sum
use wannier
implicit none
@ -1031,7 +1033,7 @@ subroutine compute_mmn
if (excluded_band(n)) cycle
mmn = ZDOTC (npwq, aux,1,evcq(1,n),1) &
+ CONJG(ZDOTC(npwq,aux2,1,evcq(1,n),1))
call reduce(2,mmn)
call mp_sum( mmn, intra_pool_comm )
Mkb(m,n) = mmn + Mkb(m,n)
if (m.ne.n) Mkb(n,m) = Mkb(m,n) ! fill other half of matrix by symmetry
aa = aa + abs(mmn)**2
@ -1040,7 +1042,7 @@ subroutine compute_mmn
do n=1,nbnd
if (excluded_band(n)) cycle
mmn = ZDOTC (npwq, aux,1,evcq(1,n),1)
call reduce(2,mmn)
call mp_sum(mmn, intra_pool_comm )
Mkb(m,n) = mmn + Mkb(m,n)
aa = aa + abs(mmn)**2
enddo
@ -1182,7 +1184,7 @@ subroutine compute_amn
else
amn = ZDOTC(npw,evc(1,ibnd),1,sgf(1,iw),1)
end if
call reduce(2,amn)
call mp_sum(amn, intra_pool_comm)
ibnd1=ibnd1+1
if (wan_mode.eq.'standalone') then
if (ionode) write(iun_amn,'(3i5,2f18.12)') ibnd1, iw, ik, amn
@ -1223,6 +1225,8 @@ subroutine generate_guiding_functions(ik)
use wannier
use klist, only : xk
USE cell_base, ONLY : bg
USE mp, ONLY : mp_sum
use mp_global, ONLY : intra_pool_comm
implicit none
@ -1276,7 +1280,7 @@ subroutine generate_guiding_functions(ik)
else
anorm = REAL(ZDOTC(npw,gf(1,iw),1,gf(1,iw),1))
end if
call reduce(1,anorm)
call mp_sum(anorm, intra_pool_comm)
! write (stdout,*) ik, iw, anorm
gf(:,iw) = gf(:,iw) / dsqrt(anorm)
end do