4 subroutine domain (nvar,vtime,nx,ny,naux,start_time)
7 implicit double precision (a-h,o-z)
30 if (((nx/2)*2 .ne. nx) .or. (ny/2)*2 .ne. ny)
then 31 write(
outunit,*)
" must have even number of cells" 32 write(*,*)
" must have even number of cells" 52 do while (mptr .gt. 0)
64 write(*,100) ngrids,ncells
65 100
format(
"there are ",i4,
" grids with ",i8,
" cells at level 1")
91 if (mptr .ne. 0)
go to 60
subroutine makebndrylist(level)
Preprocess each grid on level level to have a linked list of other grids at the same level that suppl...
integer, dimension(maxlv) kratio
integer, parameter cornxlo
x-coordinate of the left border of this grid
integer, dimension(maxlv) numcells
subroutine makegridlist(lbase)
Make (modify) array of grid numbers, listOfGrids, (after sorting them in the linked list so they are ...
integer, dimension(maxlv) iregsz
real(kind=8), dimension(maxlv) hyposs
real(kind=8), dimension(maxlv) hxposs
subroutine ginit(msave, first, nvar, naux, start_time)
Initializes solution on all grids at level of grid msave, by calling qinit().
subroutine estdt(val, mitot, mjtot, nvar, dx, dy, dt, nghost, aux, naux, cfl)
integer, parameter ndihi
global i index of right border of this grid
integer, dimension(maxlv) jregsz
integer, dimension(nsize, maxgr) node
integer, dimension(maxlv) iregst
integer, parameter nestlevel
AMR level of the grid.
integer, dimension(0:maxlv+1) liststart
integer, dimension(maxlv) numgrids
real(kind=8), dimension(rsize, maxgr) rnode
integer, dimension(maxlv) iregridcount
real(kind=8), dimension(maxlv) avenumgrids
integer, dimension(maxlv) jregst
integer, parameter ndilo
global i index of left border of this grid
integer, parameter ndjlo
global j index of lower border of this grid
integer, parameter store1
pointer to the address of memory storing the first copy of solution data on this grid, usually for storing new solution
integer, dimension(maxlv) lstart
integer, dimension(maxlv) intraty
integer function nodget()
Get first free node of the linked list kept in node array.
integer, parameter outunit
real(kind=8), dimension(maxlv) possk
integer, dimension(maxlv) jregend
integer, parameter ndjhi
global j index of upper border of this grid
subroutine birect(mptr1)
Check each grid, starting with mptr1 (either newstl or lstart) to see that it has no more than max1d ...
subroutine arrangegrids(level, numg)
Sort all grids at level level.
integer, parameter cornylo
y-coordinate of the lower border of this grid
integer, dimension(maxlv) intratx
integer, parameter levelptr
node number (index) of next grid on the same level
subroutine domain(nvar, vtime, nx, ny, naux, start_time)
integer, parameter cornxhi
x-coordinate of the right border of this grid
The module contains the definition of a "node descriptor" as well as other global variables used duri...
integer, dimension(maxlv) iregend
integer, parameter cornyhi
y-coordinate of the upper border of this grid
integer, parameter storeaux
pointer to the address of memory storing auxiliary data on this grid
real(kind=8), dimension(:), allocatable alloc