6 subroutine readdvs(iq,is,ia,ip,dvsmt,dvsir)
10 integer,
intent(in) :: iq,is,ia,ip
11 complex(8),
intent(out) :: dvsmt(npmtmax,natmtot),dvsir(ngtot)
14 integer version_(3),nspecies_
15 integer lmmaxo_,natoms_
16 integer nrmt_,ngridg_(3)
17 character(256) fext,fname
19 complex(8),
allocatable :: zfmt(:,:,:)
21 fname=
'DVS'//trim(fext)
22 open(150,file=trim(fname),form=
'UNFORMATTED',action=
'READ',status=
'OLD', &
26 write(*,
'("Error(readdvs): error opening ",A)') trim(fname)
32 .or.(
version(3) /= version_(3)))
then 34 write(*,
'("Warning(readdvs): different versions")')
35 write(*,
'(" current : ",I0,".",I0,".",I0)')
version 36 write(*,
'(" file : ",I0,".",I0,".",I0)') version_
37 write(*,
'(" in file ",A)') trim(fname)
42 write(*,
'("Error(readdvs): differing nspecies")')
43 write(*,
'(" current : ",I4)')
nspecies 44 write(*,
'(" file : ",I4)') nspecies_
45 write(*,
'(" in file ",A)') trim(fname)
50 if (
lmmaxo /= lmmaxo_)
then 52 write(*,
'("Error(readdvs): differing lmmaxo")')
53 write(*,
'(" current : ",I4)')
lmmaxo 54 write(*,
'(" file : ",I4)') lmmaxo_
55 write(*,
'(" in file ",A)') trim(fname)
61 if (
natoms(js) /= natoms_)
then 63 write(*,
'("Error(readdvs): differing natoms for species ",I4)') js
64 write(*,
'(" current : ",I4)')
natoms(js)
65 write(*,
'(" file : ",I4)') natoms_
66 write(*,
'(" in file ",A)') trim(fname)
71 if (
nrmt(js) /= nrmt_)
then 73 write(*,
'("Error(readdvs): differing nrmt for species ",I4)') js
74 write(*,
'(" current : ",I6)')
nrmt(js)
75 write(*,
'(" file : ",I6)') nrmt_
76 write(*,
'(" in file ",A)') trim(fname)
82 if ((
ngridg(1) /= ngridg_(1)).or.(
ngridg(2) /= ngridg_(2)).or. &
83 (
ngridg(3) /= ngridg_(3)))
then 85 write(*,
'("Error(readdvs): differing ngridg")')
86 write(*,
'(" current : ",3I6)')
ngridg 87 write(*,
'(" file : ",3I6)') ngridg_
88 write(*,
'(" in file ",A)') trim(fname)
integer, dimension(3) ngridg
subroutine dynfext(iq, is, ia, ip, fext)
subroutine readdvs(iq, is, ia, ip, dvsmt, dvsir)
pure subroutine zfmtpack(tpack, nr, nri, zfmt1, zfmt2)
integer, dimension(maxspecies) natoms
integer, dimension(maxatoms *maxspecies) idxis
integer, dimension(3), parameter version
integer, dimension(maxspecies) nrmti
integer, dimension(maxspecies) nrmt