subroutine wgrad(a,c,d) c c.... find (c,d)=grad a c implicit none include 'itg.par' include 'itg.cmn' c include 'post.cmn' real a(lz,mz,nz,nspecz),c(lz,mz,nz,nspecz), * d(lz,mz,nz,nspecz) c integer l,m,n,mr do 2 n=1,nd do 2 m=1,md mr=mrr(m,n) c(1,m,n,1)=(a(2,m,n,1)-a(1,m,n,1))/r(2) d(1,m,n,1)=mr/y0*a(1,m,n,1) c(ld,m,n,1)=(a(ld,m,n,1)-a(ldb,m,n,1))/(0.5*dr(ld)) d(ld,m,n,1)=mr/y0*a(ld,m,n,1) do 2 l=2,ldb c(l,m,n,1)=(a(l+1,m,n,1)-a(l-1,m,n,1))/dr(l) d(l,m,n,1)=mr/y0*a(l,m,n,1) 2 continue return end