18 subroutine upbnd(listbc,val,nvar,naux,mitot,mjtot,
23 implicit double precision (a-h,o-z)
26 dimension val(nvar,mitot,mjtot),listbc(5,maxsp),
33 iaddaux(i,j) = locaux +
mcapa-1 + naux*(i-1)
63 icrse = listbc(1,ispot)
64 if (icrse.eq.0)
go to 99
66 jcrse = listbc(2,ispot)
67 iside = listbc(3,ispot)
71 if (iside .lt. 5)
then 73 elseif (iside .eq. 5)
then 79 iflag =iused(icrse,jcrse)/norm
80 if (mod(iflag,2).eq.1)
then 81 write(6,*)
" *** double flux update CAN happen in upbnd ***" 84 mkid = listbc(4,ispot)
86 lkid = listbc(5,ispot)
89 if (iside .eq. 2 .or. iside .eq. 3 .or. iside .eq. 6)
then 100 . (val(ivar,icrse,jcrse),ivar=1,nvar)
101 101
format(
" old ",1x,2i4,4e15.7)
104 if (
mcapa .gt. 0)
then 108 sgnm = sgnm /
alloc(iaddaux(icrse,jcrse))
112 val(ivar,icrse,jcrse) = val(ivar,icrse,jcrse) +
113 1 sgnm*
alloc(kidlst+nvar*(lkid-1)+ivar-1)/area
115 iused(icrse,jcrse) = iused(icrse,jcrse) + norm
120 . (val(ivar,icrse,jcrse),ivar=1,nvar)
121 102
format(
" new ",
"(grid",i3,
")",4e15.7)
real(kind=8), dimension(maxlv) hyposs
real(kind=8), dimension(maxlv) hxposs
integer, dimension(nsize, maxgr) node
integer, parameter nestlevel
AMR level of the grid.
subroutine upbnd(listbc, val, nvar, naux, mitot, mjtot, maxsp, mptr)
Do conservation fix-up for cells on grid mptr that border finer grids.
integer, parameter outunit
The module contains the definition of a "node descriptor" as well as other global variables used duri...
integer, parameter storeaux
pointer to the address of memory storing auxiliary data on this grid
real(kind=8), dimension(:), allocatable alloc
integer, parameter ffluxptr
pointer to the address of memory storing fluxes in a layer around the grid, to be used in conservatio...