12 integer,
intent(in) :: ik,iq,is,ia,ip
13 complex(8),
intent(out) :: devecfv(nmatmax,nstfv,nspnfv)
16 integer recl,nmatmax_,nstfv_,nspnfv_
18 character(256) fext,fname
22 fname=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)
31 inquire(iolength=recl) vkl_,nmatmax_,nstfv_,nspnfv_,devecfv
32 open(222,
file=fname,form=
'UNFORMATTED',access=
'DIRECT',recl=recl)
33 read(222,rec=ik) vkl_,nmatmax_,nstfv_,nspnfv_,devecfv
37 t1=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_
46 if (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_
54 if (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_
62 if (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_
subroutine dynfext(iq, is, ia, ip, fext)
type(file_t), dimension(:), allocatable, private file
subroutine getrd(fname, irec, tgs, n1, n2, n3, v1, v2, nrv, rva, nzv, zva)
real(8), dimension(:,:), allocatable vkl
subroutine getdevecfv(ik, iq, is, ia, ip, devecfv)