31 implicit double precision (a-h,o-z)
34 parameter(msize=
max1d+4)
37 dimension q(nvar,mitot,mjtot)
38 dimension fp(nvar,mitot,mjtot),gp(nvar,mitot,mjtot)
39 dimension fm(nvar,mitot,mjtot),gm(nvar,mitot,mjtot)
40 dimension aux(maux,mitot,mjtot)
44 data debug/.false./, dump/.false./
48 write(
outunit,*)
"dumping grid ",mptr,
" at time ",time
51 write(
outunit,545) i,j,(q(ivar,i,j),ivar=1,nvar),
52 . (aux(ivar,i,j),ivar=1,maux)
53 545
format(2i4,4e15.7)
63 xlowmbc = xlow + mbc*dx
64 ylowmbc = ylow + mbc*dy
71 & xlowmbc,ylowmbc,dx,dy,time,dt,maux,aux)
78 call step2x(mbig,nvar,maux, mbc,mx,my,q,aux,dx,dt,cflgrid,
90 do 50 i=mbc+1,mitot-mbc
96 q(m,i,j) = q(m,i,j) - dtdx * (fm(m,i+1,j) - fp(m,i,j))
101 & - dtdx * (fm(m,i+1,j) - fp(m,i,j)) / aux(
mcapa,i,j)
108 call step2y(mbig,nvar,maux, mbc,mx,my,q,aux,dy,dt,cflgrid,
119 do 51 j=mbc+1,mjtot-mbc
120 do 51 i=mbc+1,mitot-mbc
126 q(m,i,j) = q(m,i,j) - dtdy * (gm(m,i,j+1) - gp(m,i,j))
130 & - dtdy * (gm(m,i,j+1) - gp(m,i,j)) / aux(
mcapa,i,j)
142 call src2(nvar,mbc,mx,my,xlowmbc,ylowmbc,dx,dy,
143 & q,maux,aux,time,dt)
150 write(
dbugunit,*)
" fluxes for grid ",mptr
152 do 830 i = mbc+1, mitot-1
153 do 830 j = mbc+1, mjtot-1
154 write(
dbugunit,831) i,j,fm(1,i,j),fp(1,i,j),
155 . gm(1,i,j),gp(1,i,j)
157 write(
dbugunit,832) fm(m,i,j),fp(m,i,j),
158 . gm(m,i,j),gp(m,i,j)
159 831
format(2i4,4d16.6)
160 832
format(8x,4d16.6)
183 if (cflgrid .gt.
cflv1)
then 186 810
format(
'*** WARNING *** Courant number =', d12.4,
187 &
' is larger than input cfl_max = ', d12.4)
191 write(
outunit,*)
"dumping grid ",mptr,
" after stepgrid" 194 write(
outunit,545) i,j,(q(ivar,i,j),ivar=1,nvar)
integer, parameter dbugunit
integer, dimension(7) method
integer, parameter maxvar
real(kind=8), parameter rinfinity
subroutine b4step2(mbc, mx, my, meqn, q, xlower, ylower, dx, dy, t, dt, maux, aux)
Called before each call to step2.
integer, parameter maxaux
subroutine step2y(maxm, meqn, maux, mbc, mx, my, qold, aux, dy, dt, cflgrid, gm, gp, rpn2)
subroutine src2(meqn, mbc, mx, my, xlower, ylower, dx, dy, q, maux, aux, t, dt)
subroutine step2x(maxm, meqn, maux, mbc, mx, my, qold, aux, dx, dt, cflgrid, fm, fp, rpn2)
integer, parameter outunit
subroutine rpn2(ixy, maxm, meqn, mwaves, maux, mbc, mx, ql, qr, auxl, auxr, wave, s, amdq, apdq)
The module contains the definition of a "node descriptor" as well as other global variables used duri...