/[MITgcm]/MITgcm_contrib/eh3_spgr/hs94.cs-32x32x5/code/W2_EXCH2_TOPOLOGY.h
ViewVC logotype

Annotation of /MITgcm_contrib/eh3_spgr/hs94.cs-32x32x5/code/W2_EXCH2_TOPOLOGY.h

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.1 - (hide annotations) (download)
Sun Aug 28 18:18:09 2005 UTC (19 years, 11 months ago) by edhill
Branch: MAIN
CVS Tags: HEAD
File MIME type: text/plain
 o initial check-in of an example to test some new exch2 bits

1 edhill 1.1 C Tiling topology data structures header file
2     C *** THIS FILE IS AUTOMATICALLY GENERATED ***
3     C NTILES :: Number of tiles in this topology
4     C MAX_NEIGHBOURS :: Maximum number of neighbours any tile has.
5     C exch2_domain_nxt :: Total domain length in tiles.
6     C exch2_domain_nyt :: Maximum domain height in tiles.
7     C exch2_tnx :: Size in X for each tile.
8     C exch2_tny :: Size in Y for each tile.
9     C exch2_tbasex :: Tile offset in X within its sub-domain (cube face)
10     C exch2_tbasey :: Tile offset in Y within its sub-domain (cube face)
11     C exch2_tglobalxlo :: Tile base X index within global index space.
12     C exch2_tglobalylo :: Tile base Y index within global index space.
13     C exch2_isWedge :: 0 if West not at domain edge, 1 if it is.
14     C exch2_isNedge :: 0 if North not at domain edge, 1 if it is.
15     C exch2_isEedge :: 0 if East not at domain edge, 1 if it is.
16     C exch2_isSedge :: 0 if South not at domain edge, 1 if it is.
17     C exch2_myFace :: Cube face number used for I/O.
18     C exch2_nNeighbours :: Tile neighbour entries count.
19     C exch2_tProc :: Rank of process owning tile
20     C :: (filled at run time).
21     C exch2_neighbourId :: Tile number for each neighbour entry.
22     C exch2_opposingSend_record :: Record for entry in target tile send
23     C :: list that has this tile and face
24     C :: as its target.
25     C exch2_pi :: X index row of target to source permutation
26     C :: matrix for each neighbour entry.
27     C exch2_pj :: Y index row of target to source permutation
28     C :: matrix for each neighbour entry.
29     C exch2_oi :: X index element of target to source
30     C :: offset vector for cell-centered quantities
31     C :: of each neighbor entry.
32     C exch2_oj :: Y index element of target to source
33     C :: offset vector for cell-centered quantities
34     C :: of each neighbor entry.
35     C exch2_oi_f :: X index element of target to source
36     C :: offset vector for face quantities
37     C :: of each neighbor entry.
38     C exch2_oj_f :: Y index element of target to source
39     C :: offset vector for face quantities
40     C :: of each neighbor entry.
41     INTEGER NTILES
42     INTEGER MAX_NEIGHBOURS
43     INTEGER exch2_domain_nyt
44     INTEGER exch2_domain_nxt
45     PARAMETER ( NTILES = 6)
46     PARAMETER ( MAX_NEIGHBOURS = 4)
47     PARAMETER ( exch2_domain_nxt=6)
48     PARAMETER ( exch2_domain_nyt=1)
49     INTEGER exch2_tnx(NTILES)
50     INTEGER exch2_tny(NTILES)
51     INTEGER exch2_tbasex(NTILES)
52     INTEGER exch2_tbasey(NTILES)
53     INTEGER exch2_txglobalo(NTILES)
54     INTEGER exch2_tyglobalo(NTILES)
55     INTEGER exch2_isWedge(NTILES)
56     INTEGER exch2_isNedge(NTILES)
57     INTEGER exch2_isEedge(NTILES)
58     INTEGER exch2_isSedge(NTILES)
59     INTEGER exch2_myFace(NTILES)
60     INTEGER exch2_mydnx(NTILES)
61     INTEGER exch2_mydny(NTILES)
62     INTEGER exch2_nNeighbours(NTILES)
63     INTEGER exch2_tProc(NTILES)
64     INTEGER exch2_neighbourId(MAX_NEIGHBOURS,NTILES)
65     INTEGER exch2_opposingSend_record(MAX_NEIGHBOURS,NTILES)
66     INTEGER exch2_pi(2,MAX_NEIGHBOURS,NTILES)
67     INTEGER exch2_pj(2,MAX_NEIGHBOURS,NTILES)
68     INTEGER exch2_oi(MAX_NEIGHBOURS,NTILES)
69     INTEGER exch2_oj(MAX_NEIGHBOURS,NTILES)
70     INTEGER exch2_oi_f(MAX_NEIGHBOURS,NTILES)
71     INTEGER exch2_oj_f(MAX_NEIGHBOURS,NTILES)
72    
73    
74     C Exchange execution loop data structures
75     INTEGER exch2_itlo_c(MAX_NEIGHBOURS,NTILES)
76     INTEGER exch2_ithi_c(MAX_NEIGHBOURS,NTILES)
77     INTEGER exch2_jtlo_c(MAX_NEIGHBOURS,NTILES)
78     INTEGER exch2_jthi_c(MAX_NEIGHBOURS,NTILES)
79    
80     CEH3 #define W2_EXCH2_USE_CORNERS
81     #ifdef W2_EXCH2_USE_CORNERS
82     INTEGER NCORNERS, NCORIDS
83     PARAMETER ( NCORNERS = 4 )
84     PARAMETER ( NCORIDS = 9 )
85     INTEGER exch2_ncNeigh(NCORNERS,NTILES)
86     INTEGER exch2_cNeighIDs(NCORIDS,NCORNERS,NTILES)
87    
88     COMMON /W2_EXCH2_CORN_I/
89     & exch2_ncNeigh, exch2_cNeighIDs
90     #endif
91    
92     COMMON /W2_EXCH2_TOPO_I/
93     & exch2_tnx, exch2_tny,
94     & exch2_tbasex,exch2_tbasey,
95     & exch2_txglobalo,exch2_tyglobalo,
96     & exch2_isWedge, exch2_isNedge,
97     & exch2_isEedge, exch2_isSedge,
98     & exch2_myFace, exch2_mydnx, exch2_mydny,
99     & exch2_nNeighbours,exch2_neighbourId,
100     & exch2_opposingSend_record,
101     & exch2_tProc,
102     & exch2_pi,exch2_pj,
103     & exch2_oi,exch2_oj,
104     & exch2_oi_f,exch2_oj_f
105    
106     COMMON /W2_EXCH2_HALO_SPEC/
107     & exch2_itlo_c, exch2_ithi_c,
108     & exch2_jtlo_c, exch2_jthi_c
109     C *** THIS FILE IS AUTOMATICALLY GENERATED ***
110    
111     CEH3 ;;; Local Variables: ***
112     CEH3 ;;; mode:fortran ***
113     CEH3 ;;; End: ***

  ViewVC Help
Powered by ViewVC 1.1.22