11integer i1,i2,i3,j1,j2,j3
16real(8),
allocatable :: vkl0(:,:),vkc0(:,:),wkpt0(:)
35if (
allocated(
ivq))
deallocate(
ivq)
45if (
allocated(
vql))
deallocate(
vql)
47if (
allocated(
vqc))
deallocate(
vqc)
78 if ((
ivq(1,iq) == 0).and.(
ivq(2,iq) == 0).and.(
ivq(3,iq) == 0))
then
90 +dble(i2)*
bvecu(1:3,2) &
91 +dble(i3)*
bvecu(1:3,3)
117 ifq=j3*
ngridq(2)*n1+j2*n1+j1+1
123if (
allocated(
vrcu))
deallocate(
vrcu)
127 v(3)=dble(i3)/dble(
ngridq(3))
129 v(2)=dble(i2)/dble(
ngridq(2))
131 v(1)=dble(i1)/dble(
ngridq(1))
138if (any(
task == [720,725]))
then
139 if (
allocated(
wkpt))
deallocate(
wkpt)
158 vkl(1:3,ik)=vkl0(1:3,ik0)+
vql(1:3,ikpa)
159 vkc(1:3,ik)=vkc0(1:3,ik0)+
vqc(1:3,ikpa)
163deallocate(vkl0,vkc0,wkpt0)
real(8), dimension(:), allocatable wkpt
integer, dimension(2, 3) intq
integer, dimension(:,:), allocatable ivq
real(8), dimension(3, 3) binv
integer, dimension(:,:,:), allocatable ivqiq
real(8), dimension(:,:), allocatable vqc
integer, dimension(:), allocatable ifqrz
real(8), dimension(:,:), allocatable vql
integer, dimension(:), allocatable iqrzf
real(8), dimension(:,:), allocatable vkl
integer, dimension(:), allocatable iqfft
real(8), dimension(:,:), allocatable vkc
integer, dimension(3) ngridq
real(8), dimension(:,:), allocatable vrcu
real(8), dimension(3, 3) bvecu
integer, dimension(3) ngridkpa
real(8), dimension(3, 3) avecu
integer, dimension(2, 3) intkpa
subroutine nfftifc(np, nd, n)
pure subroutine r3mv(a, x, y)