1 
C $Header: $ 
2 
C $Name: $ 
3 

4 
C 
5 
C /==========================================================\ 
6 
C  SIZE.h Declare size of underlying computational grid.  
7 
C ========================================================== 
8 
C  The design here support a threedimensional model grid  
9 
C  with indices I,J and K. The threedimensional domain  
10 
C  is comprised of nPx*nSx blocks of size sNx along one axis 
11 
C  nPy*nSy blocks of size sNy along another axis and one  
12 
C  block of size Nz along the final axis.  
13 
C  Blocks have overlap regions of size OLx and OLy along the 
14 
C  dimensions that are subdivided.  
15 
C \==========================================================/ 
16 
C Voodoo numbers controlling data layout. 
17 
C sNx  No. X points in subgrid. 
18 
C sNy  No. Y points in subgrid. 
19 
C OLx  Overlap extent in X. 
20 
C OLy  Overlat extent in Y. 
21 
C nSx  No. subgrids in X. 
22 
C nSy  No. subgrids in Y. 
23 
C nPx  No. of processes to use in X. 
24 
C nPy  No. of processes to use in Y. 
25 
C Nx  No. points in X for the total domain. 
26 
C Ny  No. points in Y for the total domain. 
27 
C Nr  No. points in Z for full process domain. 
28 
INTEGER sNx 
29 
INTEGER sNy 
30 
INTEGER OLx 
31 
INTEGER OLy 
32 
INTEGER nSx 
33 
INTEGER nSy 
34 
INTEGER nPx 
35 
INTEGER nPy 
36 
INTEGER Nx 
37 
INTEGER Ny 
38 
INTEGER Nr 
39 
PARAMETER ( 
40 
& sNx = 32, 
41 
& sNy = 32, 
42 
& OLx = 2, 
43 
& OLy = 2, 
44 
& nSx = 6, 
45 
& nSy = 1, 
46 
& nPx = 1, 
47 
& nPy = 1, 
48 
& Nx = sNx*nSx*nPx, 
49 
& Ny = sNy*nSy*nPy, 
50 
& Nr = 15) 
51 

52 
C MAX_OLX  Set to the maximum overlap region size of any array 
53 
C MAX_OLY that will be exchanged. Controls the sizing of exch 
54 
C routine buufers. 
55 
INTEGER MAX_OLX 
56 
INTEGER MAX_OLY 
57 
PARAMETER ( MAX_OLX = OLx, 
58 
& MAX_OLY = OLy ) 
59 
