9subroutine ggair_sp_2a(rhoup,rhodn,g2up,g2dn,gvup,gvdn,gup2,gdn2,gupdn)
26real(8),
intent(in) :: rhoup(ngtot),rhodn(ngtot)
27real(8),
intent(out) :: g2up(ngtot),g2dn(ngtot)
28real(8),
intent(out) :: gvup(ngtot,3),gvdn(ngtot,3)
29real(8),
intent(out) :: gup2(ngtot),gdn2(ngtot),gupdn(ngtot)
33complex(8),
allocatable :: zfft1(:),zfft2(:)
43 zfft2(ifg)=-(
gc(ig)**2)*zfft1(ifg)
54 zfft2(ifg)=
vgc(i,ig)*
zi*zfft1(ifg)
62gup2(:)=gvup(:,1)**2+gvup(:,2)**2+gvup(:,3)**2
71 zfft2(ifg)=-(
gc(ig)**2)*zfft1(ifg)
82 zfft2(ifg)=
vgc(i,ig)*
zi*zfft1(ifg)
90gdn2(:)=gvdn(:,1)**2+gvdn(:,2)**2+gvdn(:,3)**2
92gupdn(:)=gvup(:,1)*gvdn(:,1)+gvup(:,2)*gvdn(:,2)+gvup(:,3)*gvdn(:,3)
93deallocate(zfft1,zfft2)
subroutine ggair_sp_2a(rhoup, rhodn, g2up, g2dn, gvup, gvdn, gup2, gdn2, gupdn)
integer, dimension(3) ngridg
integer, dimension(:), allocatable igrzf
real(8), dimension(:,:), allocatable vgc
real(8), dimension(:), allocatable gc