************************************************************************ * Randall R. Correll * Mijan F. Huq * Scott A. Klasky * Richard A. Matzner * * COPYRIGHT 1995-1996 * Generates the spatial grid. ************************************************************************ subroutine makegrid(nx,ny,nz,xmin,xmax,ymin,ymax,zmin,zmax, & dx,dy,dz,x,y,z,lb) implicit none integer nx,ny,nz real*8 xmin,xmax,ymin,ymax,zmin,zmax real*8 dx,dy,dz real*8 x(nx), y(ny), z(nz) c local variables integer i,j,k integer lb(3) C dx = (xmax-xmin)/(nx-1.0d0) C dy = (ymax-ymin)/(ny-1.0d0) C dz = (zmax-zmin)/(nz-1.0d0) do i = 1, nx x(i) = xmin + (i-1.0d0+lb(1))*dx end do do j = 1, ny y(j) = ymin + (j-1.0d0+lb(2))*dy end do do k = 1, nz z(k) = zmin + (k-1.0d0+lb(3))*dz end do return end c----------------------------------------------------------------------- subroutine makegrid3d(nx,ny,nz,xmin,xmax,ymin,ymax,zmin,zmax, & dx,dy,dz,x,y,z,r,lb) implicit none integer nx,ny,nz real*8 xmin,xmax,ymin,ymax,zmin,zmax real*8 dx,dy,dz real*8 x(nx,ny,nz), y(nx,ny,nz), z(nx,ny,nz), r(nx,ny,nz) c local variables integer i,j,k integer lb(3) C dx = (xmax-xmin)/(nx-1.0d0) C dy = (ymax-ymin)/(ny-1.0d0) C dz = (zmax-zmin)/(nz-1.0d0) do i = 1, nx do j = 1, ny do k = 1, nz x(i,j,k) = xmin + (i-1.0+lb(1))*dx y(i,j,k) = ymin + (j-1.0+lb(2))*dy z(i,j,k) = zmin + (k-1.0+lb(3))*dz r(i,j,k) =sqrt(x(i,j,k)**2 + y(i,j,k)**2 + z(i,j,k)**2) end do end do end do return end