6subroutine ggair_4(gvrho,vx,vc,wx,wc,dtdr,dtdgr2)
10real(8),
intent(in) :: gvrho(ngtot,3)
11real(8),
intent(inout) :: vx(ngtot),vc(ngtot)
12real(8),
intent(in) :: wx(ngtot),wc(ngtot)
13real(8),
intent(in) :: dtdr(ngtot),dtdgr2(ngtot)
17real(8),
allocatable :: rfir1(:),rfir2(:)
18complex(8),
allocatable :: zfft(:)
19allocate(rfir1(ngtot),rfir2(ngtot),zfft(
nfgrz))
23vx(:)=vx(:)+wx(:)*dtdr(:)
24rfir1(:)=wx(:)*dtdgr2(:)
26 rfir2(:)=rfir1(:)*gvrho(:,i)
30 zfft(ifg)=
vgc(i,ig)*
zi*zfft(ifg)
33 vx(:)=vx(:)-2.d0*rfir2(:)
38vc(:)=vc(:)+wc(:)*dtdr(:)
39rfir1(:)=wc(:)*dtdgr2(:)
41 rfir2(:)=rfir1(:)*gvrho(:,i)
45 zfft(ifg)=
vgc(i,ig)*
zi*zfft(ifg)
48 vc(:)=vc(:)-2.d0*rfir2(:)
50deallocate(rfir1,rfir2,zfft)
subroutine ggair_4(gvrho, vx, vc, wx, wc, dtdr, dtdgr2)
integer, dimension(3) ngridg
integer, dimension(:), allocatable igrzf
real(8), dimension(:,:), allocatable vgc