6subroutine ggamt_4(is,np,gvrho,vx,vc,wx,wc,dtdr,dtdgr2)
10integer,
intent(in) :: is,np
11real(8),
intent(in) :: gvrho(np,3)
12real(8),
intent(inout) :: vx(np),vc(np)
13real(8),
intent(in) :: wx(np),wc(np)
14real(8),
intent(in) :: dtdr(np),dtdgr2(np)
18real(8) grfmt(np,3),rfmt1(np),rfmt2(np),rfmt3(np)
24vx(1:np)=vx(1:np)+wx(1:np)*dtdr(1:np)
25rfmt1(1:np)=wx(1:np)*dtdgr2(1:np)
27 rfmt2(1:np)=rfmt1(1:np)*gvrho(1:np,i)
28 call rfsht(nr,nri,rfmt2,rfmt3)
29 call gradrfmt(nr,nri,
rlmt(:,-1,is),
wcrmt(:,:,is),rfmt3,np,grfmt)
30 call rbsht(nr,nri,grfmt(:,i),rfmt2)
31 vx(1:np)=vx(1:np)-2.d0*rfmt2(1:np)
36vc(1:np)=vc(1:np)+wc(1:np)*dtdr(1:np)
37rfmt1(1:np)=wc(1:np)*dtdgr2(1:np)
39 rfmt2(1:np)=rfmt1(1:np)*gvrho(1:np,i)
40 call rfsht(nr,nri,rfmt2,rfmt3)
41 call gradrfmt(nr,nri,
rlmt(:,-1,is),
wcrmt(:,:,is),rfmt3,np,grfmt)
42 call rbsht(nr,nri,grfmt(:,i),rfmt2)
43 vc(1:np)=vc(1:np)-2.d0*rfmt2(1:np)
subroutine ggamt_4(is, np, gvrho, vx, vc, wx, wc, dtdr, dtdgr2)
subroutine gradrfmt(nr, nri, ri, wcr, rfmt, ld, grfmt)
integer, dimension(maxspecies) nrmti
real(8), dimension(:,:,:), allocatable wcrmt
integer, dimension(maxspecies) nrmt
real(8), dimension(:,:,:), allocatable rlmt