12integer,
intent(in) :: ik,iq,is,ia,ip
13complex(8),
intent(out) :: devecfv(nmatmax,nstfv,nspnfv)
16integer recl,nmatmax_,nstfv_,nspnfv_
18character(256) fext,fname
22fname=trim(
scrpath)//
'DEVECFV'//trim(fext)
26 call getrd(fname,ik,tgs,v1=vkl_,n1=nmatmax_,n2=nstfv_,n3=nspnfv_, &
27 nzv=nmatmax*nstfv*nspnfv,zva=devecfv)
31inquire(iolength=recl) vkl_,nmatmax_,nstfv_,nspnfv_,devecfv
32open(222,
file=fname,form=
'UNFORMATTED',access=
'DIRECT',recl=recl)
33read(222,rec=ik) vkl_,nmatmax_,nstfv_,nspnfv_,devecfv
37t1=abs(
vkl(1,ik)-vkl_(1))+abs(
vkl(2,ik)-vkl_(2))+abs(
vkl(3,ik)-vkl_(3))
40 write(*,
'("Error(getdevecfv): differing vectors for k-point ",I8)') ik
41 write(*,
'(" current : ",3G18.10)')
vkl(:,ik)
42 write(*,
'(" ",A," : ",3G18.10)') trim(fname),vkl_
46if (nmatmax /= nmatmax_)
then
48 write(*,
'("Error(getdevecfv): differing nmatmax for k-point ",I8)') ik
49 write(*,
'(" current : ",I8)') nmatmax
50 write(*,
'(" ",A," : ",I8)') trim(fname),nmatmax_
54if (nstfv /= nstfv_)
then
56 write(*,
'("Error(getdevecfv): differing nstfv for k-point ",I8)') ik
57 write(*,
'(" current : ",I8)') nstfv
58 write(*,
'(" ",A," : ",I8)') trim(fname),nstfv_
62if (nspnfv /= nspnfv_)
then
64 write(*,
'("Error(getdevecfv): differing nspnfv for k-point ",I8)') ik
65 write(*,
'(" current : ",I8)') nspnfv
66 write(*,
'(" ",A," : ",I8)') trim(fname),nspnfv_
real(8), dimension(:,:), allocatable vkl
subroutine getrd(fname, irec, tgs, n1, n2, n3, v1, v2, nrv, rva, nzv, zva)