C $Header: /home/ubuntu/mnt/e9_copy/MITgcm/verification/internal_wave/code/SIZE.h,v 1.1 2000/06/29 19:29:04 adcroft Exp $ C C /==========================================================\ C | SIZE.h Declare size of underlying computational grid. | C |==========================================================| C | The design here support a three-dimensional model grid | C | with indices I,J and K. The three-dimensional domain | C | is comprised of nPx*nSx blocks of size sNx along one axis| C | nPy*nSy blocks of size sNy along another axis and one | C | block of size Nz along the final axis. | C | Blocks have overlap regions of size OLx and OLy along the| C | dimensions that are subdivided. | C \==========================================================/ C Voodoo numbers controlling data layout. C sNx - No. X points in sub-grid. C sNy - No. Y points in sub-grid. C OLx - Overlap extent in X. C OLy - Overlat extent in Y. C nSx - No. sub-grids in X. C nSy - No. sub-grids in Y. C nPx - No. of processes to use in X. C nPy - No. of processes to use in Y. C Nx - No. points in X for the total domain. C Ny - No. points in Y for the total domain. C Nr - No. points in Z for full process domain. INTEGER sNx INTEGER sNy INTEGER OLx INTEGER OLy INTEGER nSx INTEGER nSy INTEGER nPx INTEGER nPy INTEGER Nx INTEGER Ny INTEGER Nr PARAMETER ( & sNx = 60, & sNy = 3, & OLx = 3, & OLy = 3, & nSx = 1, & nSy = 1, & nPx = 1, & nPy = 1, & Nx = sNx*nSx*nPx, & Ny = sNy*nSy*nPy, & Nr = 20) C l - Runtime global problem size in X C m - Runtime global problem size in Y C n - Runtime global problem size in Z COMMON /RUNSIZ/ l, m, n INTEGER l INTEGER m INTEGER n C MAX_OLX - Set to the maximum overlap region size of any array C MAX_OLY that will be exchanged. Controls the sizing of exch C routine buufers. INTEGER MAX_OLX INTEGER MAX_OLY PARAMETER ( MAX_OLX = OLx, & MAX_OLY = OLy )