c xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx c c Curvature based detection c c xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx subroutine cles_dcflag(ux,vx,dcflag,ncomps,nvars, $ ixlo,ixhi,iylo,iyhi,izlo,izhi,nx,ny,nz,dx,dy,dz, $ direction,extra) implicit none include 'cuser.i' integer ncomps, nvars integer ixlo, ixhi, iylo, iyhi, izlo, izhi integer direction, extra(*) INTEGER nx,ny,nz integer dcflag(1:nx+1,1:ny+1,1:nz+1,3) double precision ux(ncomps,ixlo:ixhi,iylo:iyhi,izlo:izhi) double precision vx(nvars,ixlo:ixhi,iylo:iyhi,izlo:izhi) DOUBLE PRECISION dx,dy,dz integer i, j, k ! ---- test criteria at each point if ( ihomo_flag .eq. 1 ) then if ( direction .eq. 1 ) then do k = 1, nz, 1 do j = 1, ny, 1 DO i = 1, nx+1, 1 dcflag(i,j,k,direction) = 1 enddo enddo enddo else if (direction .eq. 2 ) then do k = 1, nz, 1 do j = 1, ny+1, 1 do i = 1, nx, 1 dcflag(i,j,k,direction) = 1 enddo enddo enddo else do k = 1, nz+1, 1 do j = 1, ny, 1 DO i = 1, nx, 1 dcflag(i,j,k,direction) = 1 enddo enddo enddo endif endif return end