4 subroutine setgrd (nvar,cut,naux,dtinit,start_time)
7 implicit double precision (a-h,o-z)
24 if (mxnest .eq. 1) go to 99
28 verbosity_regrid = method(4)
30 10
if (levnew .gt. mxnest) go to 30
32 if (lstart(levold) .eq. 0) go to 30
41 if (flag_richardson)
then
42 call
advanc(levold,nvar,dtlev,vtime,naux)
47 kfac = kfac * kratio(i)
49 dtinit = min(dtinit, dtlev*kfac)
53 20 rvoll(level) = 0.d0
60 call
grdfit(lbase,levold,nvar,naux,cut,time,start_time)
61 if (newstl(levnew) .ne. 0) lfnew = levnew
67 call
ginit(newstl(levnew),.true., nvar, naux,start_time)
68 lstart(levnew) = newstl(levnew)
70 call
ginit(lstart(levold),.false., nvar, naux,start_time)
79 do while (mptr .gt. 0)
81 ncells = ncells + (node(ndihi,mptr)-node(ndilo,mptr)+1)
82 . * (node(ndjhi,mptr)-node(ndjlo,mptr)+1)
83 mptr = node(levelptr, mptr)
85 numgrids(levnew) = ngrids
86 numcells(levnew) = ncells
87 avenumgrids(levnew) = avenumgrids(levnew) + ngrids
88 iregridcount(levnew) = iregridcount(levnew) + 1
90 if (verbosity_regrid .ge. levnew)
then
91 write(*,100) ngrids,ncells,levnew
92 100
format(
"there are ",i6,
" grids with ",i10,
93 &
" cells at level ", i3)
111 40
if ((lev .eq. mxnest) .or. (lev .gt. lfine)) go to 60
113 50 itemp = node(store1,mptr)
114 node(store1,mptr) = node(store2,mptr)
115 node(store2,mptr) = itemp
116 rnode(timemult,mptr) = start_time
117 mptr = node(levelptr,mptr)
118 if (mptr .ne. 0) go to 50
126 do 65 level = 1, lfine-1
127 call
update(lfine-level,nvar,naux)
132 do 70 level = 1, lfine-1
133 call
prepf(level+1,nvar,naux)
134 call
prepc(level,nvar)
subroutine makebndrylist(level)
subroutine prepc(level, nvar)
subroutine makegridlist(lbase)
subroutine ginit(msave, first, nvar, naux, start_time)
subroutine update(level, nvar, naux)
subroutine advanc(level, nvar, dtlevnew, vtime, naux)
subroutine grdfit(lbase, lcheck, nvar, naux, cut, time, start_time)
subroutine arrangegrids(level, numg)
subroutine setgrd(nvar, cut, naux, dtinit, start_time)
subroutine prepf(level, nvar, naux)