diff --git a/HP/src/hp_allocate_q.f90 b/HP/src/hp_allocate_q.f90 index 6862cb428..8eafbc13c 100644 --- a/HP/src/hp_allocate_q.f90 +++ b/HP/src/hp_allocate_q.f90 @@ -26,7 +26,6 @@ subroutine hp_allocate_q USE eqv, ONLY : dpsi, evq, dmuxc, dvpsi USE control_lr, ONLY : lgamma USE ldaU, ONLY : Hubbard_lmax, nwfcU - USE ldaU_hp, ONLY : this_pert_is_on_file USE ldaU_lr, ONLY : swfcatomk, swfcatomkpq ! IMPLICIT NONE @@ -44,9 +43,6 @@ subroutine hp_allocate_q ALLOCATE (dpsi(npwx*npol,nbnd)) ALLOCATE (dmuxc(dfftp%nnr,nspin_mag,nspin_mag)) ! - ALLOCATE (this_pert_is_on_file(nksq)) - this_pert_is_on_file(:) = .FALSE. - ! IF (okvan) THEN ALLOCATE (eigqts(nat)) ALLOCATE (becp1(nksq)) diff --git a/HP/src/hp_dealloc_q.f90 b/HP/src/hp_dealloc_q.f90 index 39acb00e4..74b4c3074 100644 --- a/HP/src/hp_dealloc_q.f90 +++ b/HP/src/hp_dealloc_q.f90 @@ -22,7 +22,6 @@ SUBROUTINE hp_dealloc_q() & dvxc_s, vsgga, segni USE eqv, ONLY : dmuxc, dpsi, dvpsi, evq USE control_lr, ONLY : lgamma, nbnd_occ - USE ldaU_hp, ONLY : this_pert_is_on_file USE ldaU_lr, ONLY : swfcatomk, swfcatomkpq ! IMPLICIT NONE @@ -42,9 +41,6 @@ SUBROUTINE hp_dealloc_q() if (allocated(ikqs)) deallocate (ikqs) if (allocated(m_loc)) deallocate (m_loc) ! - if (allocated(this_pert_is_on_file)) & - & deallocate (this_pert_is_on_file) - ! IF (okvan) THEN if (allocated(eigqts)) deallocate (eigqts) if (allocated(becp1)) then diff --git a/HP/src/hp_dvpsi_pert.f90 b/HP/src/hp_dvpsi_pert.f90 index 1c2905e71..29b22c95a 100644 --- a/HP/src/hp_dvpsi_pert.f90 +++ b/HP/src/hp_dvpsi_pert.f90 @@ -20,8 +20,6 @@ subroutine hp_dvpsi_pert (ik) ! ! dvpsi is for a given "k", "q" and "J" ! - ! dvpsi is READ from file if this_pert_is_on_file(ik) = .TRUE. - ! otherwise dvpsi is COMPUTED and WRITTEN on file ! (evc, swfcatomk, swfcatomkpq must be set) ! USE kinds, ONLY : DP @@ -38,8 +36,7 @@ subroutine hp_dvpsi_pert (ik) USE units_lr, ONLY : iuatswfc USE control_lr, ONLY : lgamma USE ldaU, ONLY : Hubbard_lmax, Hubbard_l, offsetU, nwfcU - USE ldaU_hp, ONLY : nqsh, perturbed_atom, this_pert_is_on_file, & - iudvwfc, lrdvwfc + USE ldaU_hp, ONLY : nqsh, perturbed_atom, iudvwfc, lrdvwfc USE ldaU_lr, ONLY : swfcatomk, swfcatomkpq ! IMPLICIT NONE @@ -60,23 +57,11 @@ subroutine hp_dvpsi_pert (ik) DO na = 1, nat IF (perturbed_atom(na)) counter = counter + 1 ENDDO - IF (counter.NE.1) CALL errore( 'hp_dvpsi_pert', "One perturbed atom must be specified", 1) + IF (counter /= 1) CALL errore( 'hp_dvpsi_pert', "One perturbed atom must be specified", 1) ! dvpsi(:,:) = (0.0d0, 0.0d0) ! - ! If this is not the first iteration, hence dvpsi was already - ! computed before. So read it from file and exit. - ! - IF (this_pert_is_on_file(ik)) THEN - ! - CALL get_buffer(dvpsi, lrdvwfc, iudvwfc, ik) - CALL stop_clock ('hp_dvpsi_pert') - RETURN - ! - ENDIF - ! - ! If this is a first iteration, then dvpsi must be computed - ! and written on file. + ! Compute dvpsi for ik and write on buffer iudvwfc ! ALLOCATE (proj(nbnd,nwfcU)) ! @@ -127,7 +112,6 @@ subroutine hp_dvpsi_pert (ik) ! Write dvpsi on file. ! CALL save_buffer(dvpsi, lrdvwfc, iudvwfc, ik) - this_pert_is_on_file(ik) = .true. ! DEALLOCATE (proj) ! diff --git a/HP/src/hpcom.f90 b/HP/src/hpcom.f90 index f66931435..2beff5ce0 100644 --- a/HP/src/hpcom.f90 +++ b/HP/src/hpcom.f90 @@ -49,7 +49,6 @@ MODULE ldaU_hp LOGICAL, ALLOCATABLE :: todo_atom(:), & ! Which atoms must be perturbed perturbed_atom(:), & ! Controls which atom is perturbed in the HP ! calculation - this_pert_is_on_file(:), & ! The perturbation is written on file or not comp_iq(:) ! If .true. this q point has to be calculated ! INTEGER :: nath, & ! Number of (real) atoms in the primitive cell