routine h_1psi renamed hs_1psi because this is what it does !

This commit is contained in:
Stefano de Gironcoli 2018-08-07 20:41:43 +02:00
parent 7a76e5b076
commit 97f68ff314
9 changed files with 24 additions and 23 deletions

View File

@ -124,7 +124,7 @@ SUBROUTINE o_rcgdiagg( npwx, npw, nbnd, psi, e, precondition, &
!
! ... calculate starting gradient (|hpsi> = H|psi>) ...
!
!CALL h_1psi( npwx, npw, psi(1,m), hpsi, spsi )
!CALL hs_1psi( npwx, npw, psi(1,m), hpsi, spsi )
call o_1psi_gamma( numv, v_states, psi(1,m), hpsi,.false.,hdiag, ptype,fcw_number,fcw_state,fcw_mat,ethr)
spsi(1:npw)=psi(1:npw,m)
@ -253,7 +253,7 @@ SUBROUTINE o_rcgdiagg( npwx, npw, nbnd, psi, e, precondition, &
!
! ... |scg> is S|cg>
!
!CALL h_1psi( npwx, npw, cg(1), ppsi(1), scg(1) )
!CALL hs_1psi( npwx, npw, cg(1), ppsi(1), scg(1) )
call o_1psi_gamma( numv, v_states, cg, ppsi,.false.,hdiag, ptype,fcw_number,fcw_state,fcw_mat,ethr)
sca=0.d0
do ig=1,npw

View File

@ -90,7 +90,7 @@ SUBROUTINE o_bands(numv, v_states,numpw,o_basis,ethr,cutoff,ptype)
write(stdout,*) 'setting preconditioning'
FLUSH(stdout)
!the following is for calling h_1psi routine
!the following is for calling hs_1psi routine
g2kin(1:npw) = ( (g(1,igk_k(1:npw,1)) )**2 + &
( g(2,igk_k(1:npw,1)) )**2 + &
( g(3,igk_k(1:npw,1)) )**2 ) * tpiba2

View File

@ -71,7 +71,7 @@ SUBROUTINE o_rinitcgg( npwx, npw, nstart, numwp, psi, o_evc, e, numv, v_states,h
!
DO m = 1, nstart
!
!CALL h_1psi( npwx, npw, psi(1,m), aux(1,1), aux(1,2) )
!CALL hs_1psi( npwx, npw, psi(1,m), aux(1,1), aux(1,2) )
write(stdout,*) 'Call o_1psi_gamma',m,nstart
FLUSH(stdout)

View File

@ -42,8 +42,8 @@ subroutine hdiag( npw, max_iter, avg_iter, et_ )
REAl(DP), ALLOCATABLE :: h_prec(:)
! preconditioning matrix (diagonal)
! CG diagonalization uses these external routines on a single band
external h_1psi, s_1psi
! subroutine h_1psi(npwx,npw,psi,hpsi,spsi) computes H*psi and S*psi
external hs_1psi, s_1psi
! subroutine hs_1psi(npwx,npw,psi,hpsi,spsi) computes H*psi and S*psi
! subroutine s_1psi(npwx,npw,psi,spsi) computes S*psi (if needed)
call start_clock ('hdiag')
@ -67,7 +67,7 @@ subroutine hdiag( npw, max_iter, avg_iter, et_ )
( npwx, npw, nbnd, gstart, nbnd, evc, npol, okvan, evc, et_ )
avg_iter = avg_iter + 1.d0
endif
CALL ccgdiagg( h_1psi, s_1psi, h_prec, &
CALL ccgdiagg( hs_1psi, s_1psi, h_prec, &
npwx, npw, nbnd, npol, evc, et_, btype, eth_ns, &
max_iter, .true., notconv, cg_iter)
avg_iter = avg_iter + cg_iter

View File

@ -97,9 +97,9 @@ gk_sort.o \
gradcorr.o \
gweights.o \
g2_kin.o \
hs_1psi.o \
h_epsi_her_apply.o \
h_epsi_her_set.o \
h_1psi.o \
h_psi.o \
h_psi_meta.o \
hinit0.o \

View File

@ -202,8 +202,8 @@ SUBROUTINE diag_bands( iter, ik, avg_iter )
! subroutine g_psi(npwx,npw,nvec,psi,eig) computes G*psi -> psi
!------------------------------------------------------------------------
! CG diagonalization uses these external routines on a single band
external h_1psi, s_1psi
! subroutine h_1psi(npwx,npw,psi,hpsi,spsi) computes H*psi and S*psi
external hs_1psi, s_1psi
! subroutine hs_1psi(npwx,npw,psi,hpsi,spsi) computes H*psi and S*psi
! subroutine s_1psi(npwx,npw,psi,spsi) computes S*psi (if needed)
! In addition to the above ithe initial wfc rotation uses h_psi, and s_psi
!------------------------------------------------------------------------
@ -298,7 +298,7 @@ CONTAINS
END IF
!
IF ( isolve == 1 ) THEN
CALL rcgdiagg( h_1psi, s_1psi, h_diag, &
CALL rcgdiagg( hs_1psi, s_1psi, h_diag, &
npwx, npw, nbnd, evc, et(1,ik), btype(1,ik), &
ethr, max_cg_iter, .NOT. lscf, notconv, cg_iter )
!
@ -447,7 +447,7 @@ CONTAINS
END IF
!
IF ( isolve == 1) then
CALL ccgdiagg( h_1psi, s_1psi, h_diag, &
CALL ccgdiagg( hs_1psi, s_1psi, h_diag, &
npwx, npw, nbnd, npol, evc, et(1,ik), btype(1,ik), &
ethr, max_cg_iter, .NOT. lscf, notconv, cg_iter )
!

View File

@ -6,7 +6,7 @@
! or http://www.gnu.org/copyleft/gpl.txt .
!
!----------------------------------------------------------------------------
SUBROUTINE h_1psi( lda, n, psi, hpsi, spsi )
SUBROUTINE hs_1psi( lda, n, psi, hpsi, spsi )
!----------------------------------------------------------------------------
!
! ... This routine applies the Hamiltonian and the S matrix
@ -30,7 +30,7 @@ SUBROUTINE h_1psi( lda, n, psi, hpsi, spsi )
COMPLEX (DP) :: psi(lda*npol,1), hpsi(n), spsi(n,1)
!
!
CALL start_clock( 'h_1psi' )
CALL start_clock( 'hs_1psi' )
!
!OBM: I know this form is somewhat inelegant but, leaving the pre-real_space part intact
! makes it easier to debug probable errors, please do not "beautify"
@ -50,8 +50,8 @@ SUBROUTINE h_1psi( lda, n, psi, hpsi, spsi )
CALL s_psi( lda, n, 1, psi, spsi ) ! apply S to a single wfc (no bgrp parallelization here)
endif
!
CALL stop_clock( 'h_1psi' )
CALL stop_clock( 'hs_1psi' )
!
RETURN
!
END SUBROUTINE h_1psi
END SUBROUTINE hs_1psi

View File

@ -759,11 +759,6 @@ gradcorr.o : ../../Modules/recvec.o
gradcorr.o : ../../Modules/wavefunctions.o
gradcorr.o : pwcom.o
gweights.o : ../../Modules/kind.o
h_1psi.o : ../../Modules/control_flags.o
h_1psi.o : ../../Modules/kind.o
h_1psi.o : ../../Modules/noncol.o
h_1psi.o : bp_mod.o
h_1psi.o : realus.o
h_epsi_her_apply.o : ../../Modules/becmod.o
h_epsi_her_apply.o : ../../Modules/cell_base.o
h_epsi_her_apply.o : ../../Modules/constants.o
@ -849,6 +844,11 @@ hinit1.o : paw_symmetry.o
hinit1.o : pwcom.o
hinit1.o : realus.o
hinit1.o : scf_mod.o
hs_1psi.o : ../../Modules/control_flags.o
hs_1psi.o : ../../Modules/kind.o
hs_1psi.o : ../../Modules/noncol.o
hs_1psi.o : bp_mod.o
hs_1psi.o : realus.o
init_at_1.o : ../../Modules/atom.o
init_at_1.o : ../../Modules/cell_base.o
init_at_1.o : ../../Modules/constants.o

View File

@ -161,7 +161,8 @@ SUBROUTINE print_clock_pw()
CALL print_clock( 'add_vuspsi' ) ; CALL print_clock ( 'add_vuspsir' )
CALL print_clock( 'vhpsi' )
CALL print_clock( 'h_psi_meta' )
CALL print_clock( 'h_1psi' )
CALL print_clock( 'hs_1psi' )
CALL print_clock( 's_1psi' )
!
WRITE( stdout, '(/5X,"General routines")' )
!