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