2D AMRCLAW
prepf.f
Go to the documentation of this file.
1 c
2 c ----------------------------------------------------------
3 c
4  subroutine prepf(level,nvar,naux)
5 c
6  use amr_module
7  implicit double precision (a-h,o-z)
8 
9 c
10 c ::::::::::::::::::::::::::: PREPF :::::::::::::::::::::::::::::
11 c
12 c prepare new fine grids to save fluxes after each integration step
13 c for future conservative fixing of coarse grids
14 c save all boundary fluxes of fine grid (even if phys. bndry.) -
15 c but only save space for every intrat. (remember - 4 fluxes).
16 c
17 c :::::::::::::::::::::::::::::::::::;:::::::::::::::::::::::::::
18 c
19  mkid = lstart(level)
20  10 if (mkid .eq. 0) go to 99
21  nx = node(ndihi,mkid)-node(ndilo,mkid) + 1
22  ny = node(ndjhi,mkid)-node(ndjlo,mkid) + 1
23  ikeep = nx/intratx(level-1)
24  jkeep = ny/intraty(level-1)
25  lenbc = 2*(ikeep+jkeep)
26 c
27 c get twice the storage, one for plus or minus fluxes, the
28 c other for coarse solution for wave fixing. also for aux vars.
29 c
30  node(ffluxptr,mkid) = igetsp(2*nvar*lenbc+naux*lenbc)
31  ist = node(ffluxptr,mkid)
32 
33  do 20 i = 1, 2*nvar*lenbc + naux*lenbc
34  20 alloc(ist+i-1) = 0.d0
35  mkid = node(levelptr,mkid)
36  go to 10
37 
38  99 return
39  end
function igetsp(nwords)
Definition: igetsp.f:4
subroutine prepf(level, nvar, naux)
Definition: prepf.f:4