3 subroutine saveqc(level,nvar,naux)
7 implicit double precision (a-h,o-z)
11 dimension fliparray(2*max1d*nghost*(nvar+naux))
26 10
if (mkid .eq. 0) go to 99
27 nx = node(ndihi,mkid)-node(ndilo,mkid) + 1
28 ny = node(ndjhi,mkid)-node(ndjlo,mkid) + 1
29 ikeep = nx/intratx(level-1)
30 jkeep = ny/intraty(level-1)
31 lenbc = 2*(ikeep+jkeep)
32 ist = node(ffluxptr,mkid)
33 time = rnode(timemult,mkid)
36 ilo = node(ndilo,mkid)
37 jlo = node(ndjlo,mkid)
38 ihi = node(ndihi,mkid)
39 jhi = node(ndjhi,mkid)
40 iclo = ilo/intratx(level-1) - 1
41 jclo = jlo/intraty(level-1) - 1
42 ichi = (ihi+1)/intratx(level-1)
43 jchi = (jhi+1)/intraty(level-1)
46 xl = rnode(cornxlo,mkid) - hxc
47 yb = rnode(cornylo,mkid) - hyc
48 xr = rnode(cornxhi,mkid) + hxc
49 yt = rnode(cornyhi,mkid) + hyc
50 loctmp =
igetsp(nrow*ncol*(nvar+naux))
51 loctx = loctmp + nrow*ncol*nvar
52 do i = 1, nrow*ncol*naux
53 alloc(loctx+i-1) = needs_to_be_set
55 locaux = node(storeaux,mkid)
57 if (iclo .lt. 0 .or. ichi .eq. iregsz(levc) .or.
58 & jclo .lt. 0 .or. jchi .eq. jregsz(levc))
then
64 if (
sticksout .and. (xperdom.or.yperdom.or.spheredom))
then
67 call
preicall(alloc(loctmp),alloc(loctx),nrow,ncol,nvar,
68 . naux,iclo,ichi,jclo,jchi,level-1,
73 call
icall(alloc(loctmp),alloc(loctx),nrow,ncol,nvar,naux,
74 . iclo,ichi,jclo,jchi,level-1,1,1)
79 call
setaux(ng,nrow,ncol,xl,yb,hxc,hyc,naux,alloc(loctx))
88 call
bc2amr(alloc(loctmp),alloc(loctx),nrow,ncol,nvar,naux,
91 call
cstore(alloc(loctmp),nrow,ncol,nvar,
92 . alloc(ist+nvar*lenbc),lenbc,naux,alloc(loctx),
93 . alloc(ist+2*nvar*lenbc))
94 call
reclam(loctmp,nrow*ncol*(nvar+naux))
96 mkid = node(levelptr,mkid)
subroutine bc2amr(val, aux, nrow, ncol, meqn, naux,
Take a grid patch with mesh widths hx,hy, of dimensions nrow by ncol, and set the values of any piece...
subroutine saveqc(level, nvar, naux)
logical pure function sticksout(iplo, iphi, jplo, jphi)
subroutine reclam(index, nwords)
subroutine cstore(qc, nrow, ncol, nvar, qc1d, lenbc, naux, auxc, auxc1d)
subroutine icall(val, aux, nrow, ncol, nvar, naux, ilo, ihi, jlo, jhi, level, iputst, jputst)
subroutine preicall(val, aux, nrow, ncol, nvar, naux, ilo, ihi, jlo, jhi, level, fliparray)
subroutine setaux(mbc, mx, my, xlower, ylower, dx, dy, maux, aux)