More module cleanup : pwcom no longer called in PW/

git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@519 c92efa57-630b-4861-b058-cf58834340f0
This commit is contained in:
giannozz 2004-01-24 15:43:09 +00:00
parent a80c961cce
commit ce43e861ab
14 changed files with 170 additions and 64 deletions

View File

@ -27,7 +27,18 @@ subroutine init_us_1
! h) It fills the interpolation table for the beta functions
!
#include "machine.h"
use pwcom
USE kinds, ONLY: DP
USE parameters, ONLY: lmaxx, ndm, nbrx, lqmax
USE constants, ONLY: fpi
USE atom, ONLY: r, rab, vnl, chi, msh
USE basis, ONLY: ntyp
USE brilz, ONLY: omega, tpiba
USE gvect, ONLY: g, gg
USE pseud, ONLY: lloc, lmax
USE us, ONLY: lqx, dion, betar, qfunc, qfcoef, rinner, nh, nbeta, &
kkbeta, nqf, nqlc, lll, tvanp, okvan, newpseudo, lmaxkb, mx, &
nlx, ap, lpx, lpl, nqxq, dq, qgm, nqx, tab, dvan, qq, nhtol, &
nhtom, qrad, indv
implicit none
!
! here a few local variables

View File

@ -14,7 +14,14 @@ subroutine init_us_2 (npw_, igk_, q_, vkb_)
! structure factor, for all atoms, in reciprocal space
!
#include "machine.h"
use pwcom
USE kinds, ONLY: DP
USE basis, ONLY: nat, tau, ntyp, ityp
USE brilz, ONLY: tpiba
USE constants, ONLY: tpi
USE gvect, ONLY: eigts1, eigts2, eigts3, ig1, ig2, ig3, g
USE wvfct, ONLY: npw, npwx, igk
USE us, ONLY: nhm, nkb, vkb, lmaxkb, dq, nh, nhtol, nhtom, tab, &
indv, nbeta
implicit none
!
integer :: npw_, igk_ (npw_)

View File

@ -14,8 +14,12 @@ subroutine init_vloc
! potential vloc(ig,it) for each type of atom
!
#include"machine.h"
use pwcom
USE atom, ONLY: numeric, msh, mesh, r, rab, vnl
USE basis, ONLY: ntyp
USE brilz, ONLY: omega, tpiba2
USE vlocal, ONLY: vloc
USE gvect, ONLY: ngl, gl
USE pseud, ONLY: lloc, lmax, cc, nlc, nnl, alpc, alps, aps, zp
implicit none
integer :: nt
! counter on atomic types

View File

@ -9,7 +9,8 @@
subroutine ions
!-----------------------------------------------------------------------
!
use pwcom
USE control_flags, ONLY: conv_ions, restart, iswitch
USE force_mod, ONLY: lforce, lstres
!
implicit none
!

View File

@ -34,9 +34,8 @@ SUBROUTINE move_ions()
!
USE io_global, ONLY : stdout
USE io_files, ONLY : tmp_dir
USE bfgs_module, ONLY : new_bfgs => bfgs, lin_bfgs
USE bfgs_module, ONLY : lbfgs_ndim
USE kinds, ONLY : DP
USE bfgs_module, ONLY : lbfgs_ndim, new_bfgs => bfgs, lin_bfgs
USE kinds, ONLY : DP
USE brilz, ONLY : alat, at, bg
USE basis, ONLY : nat, ityp, tau, atm
USE gvect, ONLY : nr1, nr2, nr3
@ -215,7 +214,11 @@ SUBROUTINE new_force( dg, dg2 )
! where dg is the gradient of the constraint function
!
USE io_global, ONLY : stdout
USE pwcom
USE kinds, ONLY: DP
USE basis, ONLY : nat
USE brilz, ONLY : at, bg
USE force_mod, ONLY : force
USE symme, ONLY : s, nsym, irt
!
IMPLICIT NONE
!

View File

@ -16,9 +16,18 @@ subroutine new_ns
! f_{kv} <\fi^{at}_{I,m1}|\psi_{k,v,s}><\psi_{k,v,s}|\fi^{at}_{I,m2}>
!
#include "machine.h"
USE io_global, ONLY : stdout
use pwcom
USE io_global, ONLY: stdout
USE kinds, ONLY: DP
USE atom, ONLY: lchi, nchi, oc
USE basis, ONLY: nat, natomwfc, ityp
USE klist, ONLY: nks
USE ldaU, ONLY: ns, nsnew, Hubbard_lmax, Hubbard_l, Hubbard_U, &
Hubbard_alpha, swfcatom, eth, d1, d2, d3
USE lsda_mod, ONLY: lsda, current_spin, nspin, isk
USE symme, ONLY: nsym, irt
USE wvfct, ONLY: nbnd, npw, npwx, igk, wg
USE wavefunctions_module, ONLY : evc
USE us, ONLY: newpseudo
use io_files
#ifdef __PARA
use para

View File

@ -15,8 +15,15 @@ subroutine newd
! to compute the non-local term in the US scheme.
!
#include "machine.h"
use pwcom
USE kinds, ONLY: DP
USE basis, ONLY: nat, ntyp, ityp
USE brilz, ONLY: omega
USE gvect, ONLY: nr1, nr2, nr3, nrx1, nrx2, nrx3, g, gg, ngm, &
gstart, ig1, ig2, ig3, eigts1, eigts2, eigts3, nl
USE lsda_mod, ONLY: nspin
USE scf, ONLY: vr, vltot
USE us, ONLY: qgm, lqx, deeq, dvan, okvan, nh, tvanp
USE wvfct, ONLY: gamma_only
USE wavefunctions_module, ONLY : psic
implicit none
integer :: ig, nt, ih, jh, na, is

View File

@ -14,9 +14,12 @@ subroutine ortho
! after any move of atoms and only if the US problem is solved with
! overlap=.false.
!
use pwcom
USE kinds, ONLY: DP
USE io_files, ONLY: iunwfc, nwordwfc, iunigk
USE klist, ONLY: nks, xk
USE wvfct, ONLY: npw, npwx, nbnd, nbndx, igk
USE wavefunctions_module, ONLY : evc
USE us, ONLY: nkb, vkb
use becmod
implicit none
integer :: ik

View File

@ -15,9 +15,15 @@ subroutine orthoatwfc
! in order to make lda+U calculations
!
#include "machine.h"
USE kinds, ONLY: DP
USE parameters, ONLY: nchix
USE io_global, ONLY : stdout
USE io_files, ONLY: iunat, nwordatwfc, iunigk
use pwcom
USE basis, ONLY: nat, natomwfc
USE klist, ONLY: nks, xk
USE ldaU, ONLY: swfcatom
USE wvfct, ONLY: npwx, npw, igk
USE us, ONLY: nkb, vkb
use becmod
#ifdef __PARA
use para

View File

@ -13,7 +13,8 @@ subroutine print_clock_pw
! it tries to construct the calling tree of the program.
USE io_global, ONLY : stdout
use pwcom
USE control_flags, ONLY: isolve, imix
USE force_mod, ONLY: lforce, lstres
implicit none
WRITE( stdout, * )

View File

@ -6,7 +6,6 @@
! or http://www.gnu.org/copyleft/gpl.txt .
!
!
#if defined __NEW_PUNCH
!----------------------------------------------------------------------

View File

@ -9,10 +9,13 @@
subroutine read_config_from_file
!-----------------------------------------------------------------------
USE io_global, ONLY : stdout
use pwcom
USE io_global, ONLY: stdout
USE kinds, ONLY: DP
USE basis, ONLY: nat, ityp, tau, startingconfig
USE brilz, ONLY: at, bg, ibrav, alat, omega
USE cellmd, ONLY: at_old, omega_old, lmovecell
use io_files, only: prefix, iunres
use restart_module, only : readfile_config
use restart_module, only: readfile_config
implicit none
@ -71,7 +74,10 @@ subroutine read_config_from_file_old
!-----------------------------------------------------------------------
USE io_global, ONLY : stdout
use pwcom
USE kinds, ONLY: DP
USE basis, ONLY: nat, ityp, tau, startingconfig
USE brilz, ONLY: at, bg, ibrav, alat, omega
USE cellmd, ONLY: at_old, omega_old, lmovecell
use io_files, only : prefix
implicit none

View File

@ -6,7 +6,6 @@
! or http://www.gnu.org/copyleft/gpl.txt .
!
!
#if defined __NEW_PUNCH
!-----------------------------------------------------------------------
@ -18,13 +17,22 @@ subroutine read_file
!
!
#include "machine.h"
use pwcom, only: tau, force, ityp, iunpun, nat, nbnd, nkstot, irt, &
tetra, ntetra, lsda, nspin, current_spin, cell_factor, lmovecell, nks, &
xk, ngms, gg, nls, ecutwfc, tpiba2, nrx1s, nr1s, nr2s, nr3s, nbndx, &
natomwfc, et, wg, rho, vr, ntyp, ityp, ngm, g, bg, nr1, nr2, nr3, &
strf, eigts1, eigts2, eigts3, isk, wk, forcefield, tefield
USE kinds, only: dp
use io_files, only: tmp_dir, prefix
USE kinds, ONLY: dp
USE basis, ONLY: nat, ntyp, tau, ityp, natomwfc
USE brilz, ONLY: tpiba2, bg
USE force_mod, ONLY: force
USE klist, ONLY: nkstot, nks, xk, wk
USE lsda_mod, ONLY: lsda, nspin, current_spin, isk
USE wvfct, ONLY: nbnd, nbndx, et, wg
USE symme, ONLY: irt
USE ktetra, ONLY: tetra, ntetra
USE extfield, ONLY: forcefield, tefield
USE cellmd, ONLY: cell_factor, lmovecell
USE gvect, ONLY: gg, ecutwfc, ngm, g, nr1, nr2, nr3, eigts1, eigts2, eigts3
USE gsmooth, ONLY: ngms, nls, nrx1s, nr1s, nr2s, nr3s
USE scf, ONLY: rho, vr
USE vlocal, ONLY: strf
use io_files, only: tmp_dir, prefix, iunpun
use restart_module, only: readfile_new
#ifdef __PARA
use para
@ -165,8 +173,22 @@ subroutine read_file
!
!
#include "machine.h"
use pwcom
use io_files
USE kinds, ONLY: dp
USE basis, ONLY: nat, ntyp, tau, ityp, natomwfc
USE brilz, ONLY: tpiba2, bg
USE force_mod, ONLY: lforce, force
USE klist, ONLY: nkstot, nks, xk, wk
USE lsda_mod, ONLY: lsda, nspin, current_spin, isk
USE wvfct, ONLY: nbnd, nbndx, et, wg
USE symme, ONLY: irt
USE ktetra, ONLY: ltetra, tetra, ntetra
USE extfield, ONLY: forcefield, tefield
USE cellmd, ONLY: cell_factor, lmovecell
USE gvect, ONLY: gg, ecutwfc, ngm, g, nr1, nr2, nr3, eigts1, eigts2, eigts3
USE gsmooth, ONLY: ngms, nls, nrx1s, nr1s, nr2s, nr3s
USE scf, ONLY: rho, vr
USE vlocal, ONLY: strf
use io_files, only: tmp_dir, prefix, iunpun
#ifdef __PARA
use para
#endif

View File

@ -25,22 +25,36 @@ subroutine writefile_new( what, ndw, et_g, wg_g, kunit )
! programs.
!
!
use pwcom, only: DP, ngk, dual, ecutwfc, nat, istep, iswitch, nr1, nr2, nr3, &
nr1s, nr2s, nr3s, ngm, ngm_g, nks, nkstot, nspin, nbnd, nelec, ntyp, alat, &
k1, k2, k3, nk1, nk2, nk3, degauss, ngauss, lgauss, tetra, ntetra, ltetra, natomwfc, &
gcutm, gcutms, doublegrid, modenum, lstres, lforce, title, crystal, at, ibrav, &
celldm, atm, force, ityp, amass, npwx, nbndx, nrx1, nrx2, nrx3, nrx1s, nrx2s, &
nrx3s, nrxxs, nrxx, symm_type, sname, s, irt, ftau, nsym, invsym, noinv, ef, g, &
tpiba2, igk, g2kin, tau, zmesh, xmin, dx, r, rab, vnl, chi, oc, rho_at, &
rho_atc, mesh, msh, nchi, lchi, numeric, cc, alpc, zp, aps, alps, zv, nlc, &
nnl, lmax, lloc, bhstype, dion, betar, qqq, qfunc, qfcoef, rinner, nh, nbeta, kkbeta, &
nqf, nqlc, ifqopt, lll, iver, tvanp, okvan, newpseudo, a_nlcc, b_nlcc, alpha_nlcc, &
nlcc, psd, lsda, bg, xk, wk, isk, igk_l2g, gamma_only, &
tfixed_occ, tefield, dipfield, edir, emaxpos, eopreg, eamp
USE kinds, ONLY: DP
USE basis, ONLY: nat, ntyp, ityp, tau, natomwfc, atm
USE brilz, ONLY: at, bg, ibrav, celldm, alat, symm_type
USE klist, ONLY: xk, wk, degauss, ngauss, lgauss, nelec, &
ngk, nks, nkstot
USE ktetra,ONLY: tetra, ntetra, ltetra, k1, k2, k3, nk1, nk2, nk3
USE lsda_mod, ONLY: isk, nspin, lsda
USE force_mod, ONLY: lforce, lstres, force
USE gvect, ONLY: dual, ecutwfc, nrx1, nrx2, nrx3, nr1, nr2, nr3, &
nrxx, ngm, ngm_g, gcutm
USE gsmooth, ONLY: nr1s, nr2s, nr3s, nrx1s, nrx2s, nrx3s, nrxxs, &
gcutms, doublegrid
USE wvfct, ONLY: npwx, nbndx, nbnd, igk, g2kin, igk_l2g, gamma_only
USE char, ONLY: title, crystal, psd, sname
USE dynam, ONLY: amass
USE symme, ONLY: s, irt, ftau, nsym, invsym
USE ener, ONLY: ef
USE atom, ONLY: zmesh, xmin, dx, r, rab, vnl, chi, oc, rho_at, &
rho_atc, mesh, msh, nchi, lchi, numeric
USE pseud, ONLY: cc, alpc, zp, aps, alps, zv, nlc, nnl, lmax, lloc,&
bhstype
USE us, ONLY: dion, betar, qqq, qfunc, qfcoef, rinner, nh, nbeta, &
kkbeta, nqf, nqlc, ifqopt, lll, iver, tvanp, okvan, newpseudo
USE nl_c_c, ONLY: a_nlcc, b_nlcc, alpha_nlcc, nlcc
USE extfield, ONLY: tefield, dipfield, edir, emaxpos, eopreg, eamp
USE wavefunctions_module, ONLY : evc
use control_flags, only: twfcollect
use io_files, only: prefix, tmp_dir, pseudo_dir, psfile
USE io_files, ONLY : iunwfc, nwordwfc
USE fixed_occ, ONLY: tfixed_occ
use control_flags, only: twfcollect, noinv, istep, iswitch, modenum
use io_files, only: prefix, tmp_dir, pseudo_dir, psfile, &
iunwfc, nwordwfc
use funct, only: iexch, icorr, igcx, igcc
use io_global, only: ionode
use mp, only: mp_sum, mp_max, mp_end
@ -479,27 +493,40 @@ subroutine readfile_new( what, ndr, et_g, wg_g, kunit, nsizwfc, iunitwfc, ierr )
! programs.
!
!
USE parameters, only: npk, nchix, ndm
USE parameters, only: npk, nchix, ndm, nbrx, lqmax, nqfm
USE constants, ONLY: pi
USE io_files, ONLY : iunwfc, nwordwfc, prefix, tmp_dir
use funct, only: iexch, icorr, igcx, igcc
use pwcom, only: DP, ngk, dual, ecutwfc, nat, istep, iswitch, nr1, nr2, nr3, &
nr1s, nr2s, nr3s, ngm, ngm_g, nks, nkstot, nspin, nbnd, nelec, ntyp, alat, &
k1, k2, k3, nk1, nk2, nk3, degauss, ngauss, lgauss, tetra, ntetra, ltetra, natomwfc, &
gcutm, gcutms, doublegrid, modenum, lstres, lforce, title, crystal, at, ibrav, &
celldm, atm, force, ityp, amass, npwx, nbndx, nrx1, nrx2, nrx3, nrx1s, nrx2s, &
nrx3s, nrxxs, nrxx, symm_type, sname, s, irt, ftau, nsym, invsym, noinv, ef, g, &
tpiba2, igk, g2kin, tau, zmesh, xmin, dx, r, rab, vnl, chi, oc, rho_at, &
rho_atc, mesh, msh, nchi, lchi, numeric, cc, alpc, zp, aps, alps, zv, nlc, &
nnl, lmax, lloc, bhstype, dion, betar, qqq, qfunc, qfcoef, rinner, nh, nbeta, kkbeta, &
nqf, nqlc, ifqopt, lll, iver, tvanp, okvan, newpseudo, a_nlcc, b_nlcc, alpha_nlcc, &
nlcc, psd, lsda, bg, xk, wk, isk, tpiba, pi, omega, igk_l2g, &
ig_l2g, nbrx, lqmax, nqfm, gamma_only, &
tfixed_occ, tefield, dipfield, edir, emaxpos, eopreg, eamp
USE kinds, ONLY: DP
USE basis, ONLY: nat, ntyp, ityp, tau, natomwfc, atm
USE brilz, ONLY: at, bg, ibrav, celldm, alat, tpiba, tpiba2, omega, &
symm_type
USE klist, ONLY: xk, wk, degauss, ngauss, lgauss, nelec, &
ngk, nks, nkstot
USE ktetra,ONLY: tetra, ntetra, ltetra, k1, k2, k3, nk1, nk2, nk3
USE lsda_mod, ONLY: isk, nspin, lsda
USE force_mod, ONLY: lforce, lstres, force
USE gvect, ONLY: dual, ecutwfc, nrx1, nrx2, nrx3, nr1, nr2, nr3, &
nrxx, ngm, ngm_g, gcutm, g, ig_l2g
USE gsmooth, ONLY: nr1s, nr2s, nr3s, nrx1s, nrx2s, nrx3s, nrxxs, &
gcutms, doublegrid
USE wvfct, ONLY: npwx, nbndx, nbnd, igk, g2kin, igk_l2g, gamma_only
USE char, ONLY: title, crystal, psd, sname
USE dynam, ONLY: amass
USE symme, ONLY: s, irt, ftau, nsym, invsym
USE ener, ONLY: ef
USE atom, ONLY: zmesh, xmin, dx, r, rab, vnl, chi, oc, rho_at, &
rho_atc, mesh, msh, nchi, lchi, numeric
USE pseud, ONLY: cc, alpc, zp, aps, alps, zv, nlc, nnl, lmax, lloc,&
bhstype
USE us, ONLY: dion, betar, qqq, qfunc, qfcoef, rinner, nh, nbeta, &
kkbeta, nqf, nqlc, ifqopt, lll, iver, tvanp, okvan, newpseudo
USE nl_c_c, ONLY: a_nlcc, b_nlcc, alpha_nlcc, nlcc
USE extfield, ONLY: tefield, dipfield, edir, emaxpos, eopreg, eamp
USE wavefunctions_module, ONLY : evc
USE fixed_occ, ONLY: tfixed_occ
use control_flags, only: twfcollect, noinv, istep, iswitch, modenum
use funct, only: iexch, icorr, igcx, igcc
USE pseudo_types, ONLY: pseudo_upf
use control_flags, only: twfcollect
use mp, only: mp_sum, mp_bcast, mp_max, mp_end
use mp_global, only: mpime, nproc, root, me_pool, my_pool_id, &
nproc_pool, intra_pool_comm, root_pool