5 c -------------------------------------------------------------
7 subroutine drivesort(npts,badpts,level,index,mbuff)
10 implicit double precision (a-h,o-z)
11 dimension badpts(2,npts)
12 dimension iflags(npts), ixarray(npts)
15 iadd(i,j) = (i+mbuff) + (isize+2*mbuff)*(j+mbuff)
17 c convert using one dimensional ordering of badpts array as
if 18 c it covered entire
domain(xprob by yprob) on this level
27 c
write(*,*)i,j,
" has equivalent integer ",intequiv
31 call qsorti(ixarray, npts, iflags)
33 c copy back to badpts, in sorted order, removing duplicates
36 do while (k .le. npts)
37 intequiv = iflags(ixarray(k))
39 badpts(2,index) = intequiv/(isize+2*mbuff) + .5 -mbuff
40 badpts(1,index) = mod(intequiv,(isize+2*mbuff)) + .5 -mbuff
41 if (db)
write(
outunit,101) badpts(1,index),badpts(2,index)
44 do while ( k.le. npts)
45 if (iflags(ixarray(k)) .eq. iflags(ixarray(k-1)))
then 46 c
write(*,*)
" duplicate in sorted array loc ",ixarray(k)
57 929
format(i5,
" flagged pts after removing duplicates and ",
58 &
" non-nested flags")
subroutine qsorti(ORD, N, A)
integer, dimension(maxlv) iregsz
integer, dimension(maxlv) jregsz
integer pure function iadd(ivar, i, j)
integer, parameter outunit
subroutine drivesort(npts, badpts, level, index, mbuff)
Sort 2D points (stored in badpts) based on their equivalent integer value (based on their x...
subroutine domain(nvar, vtime, nx, ny, naux, start_time)
The module contains the definition of a "node descriptor" as well as other global variables used duri...