11integer,
intent(in) :: p
12real(8),
intent(in) :: vsmt0(npmtmax,natmtot),vsir0(ngtot)
14integer is,ia,ja,ias,jas
16integer iv(3),ig0,ifg0,ifg
20real(8),
allocatable :: rfmt(:)
21complex(8),
allocatable :: zfmt(:),zfir(:)
29allocate(rfmt(npmtmax),zfmt(npmtmax))
44 rfmt(1:np)=
vsmt(1:np,jas)-vsmt0(1:np,jas)
49 z2=z1*cmplx(cos(t1),sin(t1),8)
62zfir(1:ngtot)=z0*(
vsir(1:ngtot)-vsir0(1:ngtot))
71 if ((iv(1) >=
intgv(1,1)).and.(iv(1) <=
intgv(2,1)).and. &
72 (iv(2) >=
intgv(1,2)).and.(iv(2) <=
intgv(2,2)).and. &
73 (iv(3) >=
intgv(1,3)).and.(iv(3) <=
intgv(2,3)))
then
integer, dimension(maxspecies) nrmti
integer, dimension(:,:), allocatable ivg0
integer, dimension(2, 3) intgv
integer, dimension(3) ngridg
integer, dimension(maxspecies) nrmt
real(8), dimension(3, 3) binv
real(8), dimension(3, 3) bvec0
real(8), dimension(:,:), allocatable vqc
real(8), dimension(:,:), allocatable vql
integer, dimension(:), allocatable igfft
real(8), dimension(:,:), pointer, contiguous vsmt
integer, dimension(3) ngridg0
integer, dimension(maxspecies) npmt
integer, dimension(maxspecies) natoms0
real(8), dimension(:), allocatable vsir
integer, dimension(:,:,:), allocatable ivgig
integer, dimension(:), allocatable igfft0
complex(8), dimension(:), allocatable dvsir
complex(8), dimension(:,:), pointer, contiguous dvsmt
real(8), dimension(:,:), allocatable vscph
subroutine phscdvs(p, vsmt0, vsir0)
pure subroutine r3mv(a, x, y)
pure subroutine rtozfmt(nr, nri, rfmt, zfmt)
subroutine zfftifc(nd, n, sgn, z)