1 |
SUBROUTINE W2_E2SETUP |
2 |
|
3 |
C Tile toplogy settings data structures |
4 |
#include "W2_EXCH2_TOPOLOGY.h" |
5 |
|
6 |
C Tile settings table |
7 |
CALL W2_E2SETUP_1 |
8 |
CALL W2_E2SETUP_2 |
9 |
CALL W2_E2SETUP_3 |
10 |
CALL W2_E2SETUP_4 |
11 |
CALL W2_E2SETUP_5 |
12 |
CALL W2_E2SETUP_6 |
13 |
RETURN |
14 |
END |
15 |
SUBROUTINE W2_E2SETUP_1 |
16 |
C Topology for tile 1 |
17 |
#include "W2_EXCH2_TOPOLOGY.h" |
18 |
exch2_tnx(1)=32 |
19 |
exch2_tny(1)=32 |
20 |
exch2_tbasex(1)=0 |
21 |
exch2_tbasey(1)=0 |
22 |
exch2_txglobalo(1)=1 |
23 |
exch2_tyglobalo(1)=1 |
24 |
exch2_isWedge(1)=1 |
25 |
exch2_isNedge(1)=1 |
26 |
exch2_isEedge(1)=1 |
27 |
exch2_isSedge(1)=1 |
28 |
exch2_myFace(1)=1 |
29 |
exch2_mydnx(1)=32 |
30 |
exch2_mydny(1)=32 |
31 |
exch2_nNeighbours(1)=4 |
32 |
|
33 |
exch2_neighbourId(1,1)=3 |
34 |
exch2_pi(1,1,1)=0 |
35 |
exch2_pi(2,1,1)=-1 |
36 |
exch2_pj(1,1,1)=1 |
37 |
exch2_pj(2,1,1)=0 |
38 |
exch2_oi(1,1)=33 |
39 |
exch2_oi_f(1,1)=34 |
40 |
exch2_oj(1,1)=32 |
41 |
exch2_oj_f(1,1)=32 |
42 |
exch2_itlo_c(1,1)=0 |
43 |
exch2_ithi_c(1,1)=0 |
44 |
exch2_jtlo_c(1,1)=0 |
45 |
exch2_jthi_c(1,1)=33 |
46 |
exch2_opposingSend_record(1,1)=4 |
47 |
|
48 |
exch2_neighbourId(2,1)=6 |
49 |
exch2_pi(1,2,1)=1 |
50 |
exch2_pi(2,2,1)=0 |
51 |
exch2_pj(1,2,1)=0 |
52 |
exch2_pj(2,2,1)=1 |
53 |
exch2_oi(2,1)=0 |
54 |
exch2_oi_f(2,1)=0 |
55 |
exch2_oj(2,1)=-32 |
56 |
exch2_oj_f(2,1)=-32 |
57 |
exch2_itlo_c(2,1)=0 |
58 |
exch2_ithi_c(2,1)=33 |
59 |
exch2_jtlo_c(2,1)=33 |
60 |
exch2_jthi_c(2,1)=33 |
61 |
exch2_opposingSend_record(2,1)=1 |
62 |
|
63 |
exch2_neighbourId(3,1)=2 |
64 |
exch2_pi(1,3,1)=1 |
65 |
exch2_pi(2,3,1)=0 |
66 |
exch2_pj(1,3,1)=0 |
67 |
exch2_pj(2,3,1)=1 |
68 |
exch2_oi(3,1)=32 |
69 |
exch2_oi_f(3,1)=32 |
70 |
exch2_oj(3,1)=0 |
71 |
exch2_oj_f(3,1)=0 |
72 |
exch2_itlo_c(3,1)=0 |
73 |
exch2_ithi_c(3,1)=0 |
74 |
exch2_jtlo_c(3,1)=0 |
75 |
exch2_jthi_c(3,1)=33 |
76 |
exch2_opposingSend_record(3,1)=4 |
77 |
|
78 |
exch2_neighbourId(4,1)=5 |
79 |
exch2_pi(1,4,1)=0 |
80 |
exch2_pi(2,4,1)=1 |
81 |
exch2_pj(1,4,1)=-1 |
82 |
exch2_pj(2,4,1)=0 |
83 |
exch2_oi(4,1)=-32 |
84 |
exch2_oi_f(4,1)=-32 |
85 |
exch2_oj(4,1)=33 |
86 |
exch2_oj_f(4,1)=34 |
87 |
exch2_itlo_c(4,1)=0 |
88 |
exch2_ithi_c(4,1)=33 |
89 |
exch2_jtlo_c(4,1)=33 |
90 |
exch2_jthi_c(4,1)=33 |
91 |
exch2_opposingSend_record(4,1)=1 |
92 |
RETURN |
93 |
END |
94 |
|
95 |
SUBROUTINE W2_E2SETUP_2 |
96 |
C Topology for tile 2 |
97 |
#include "W2_EXCH2_TOPOLOGY.h" |
98 |
exch2_tnx(2)=32 |
99 |
exch2_tny(2)=32 |
100 |
exch2_tbasex(2)=0 |
101 |
exch2_tbasey(2)=0 |
102 |
exch2_txglobalo(2)=33 |
103 |
exch2_tyglobalo(2)=1 |
104 |
exch2_isWedge(2)=1 |
105 |
exch2_isNedge(2)=1 |
106 |
exch2_isEedge(2)=1 |
107 |
exch2_isSedge(2)=1 |
108 |
exch2_myFace(2)=2 |
109 |
exch2_mydnx(2)=32 |
110 |
exch2_mydny(2)=32 |
111 |
exch2_nNeighbours(2)=4 |
112 |
|
113 |
exch2_neighbourId(1,2)=3 |
114 |
exch2_pi(1,1,2)=1 |
115 |
exch2_pi(2,1,2)=0 |
116 |
exch2_pj(1,1,2)=0 |
117 |
exch2_pj(2,1,2)=1 |
118 |
exch2_oi(1,2)=0 |
119 |
exch2_oi_f(1,2)=0 |
120 |
exch2_oj(1,2)=32 |
121 |
exch2_oj_f(1,2)=32 |
122 |
exch2_itlo_c(1,2)=0 |
123 |
exch2_ithi_c(1,2)=33 |
124 |
exch2_jtlo_c(1,2)=0 |
125 |
exch2_jthi_c(1,2)=0 |
126 |
exch2_opposingSend_record(1,2)=2 |
127 |
|
128 |
exch2_neighbourId(2,2)=6 |
129 |
exch2_pi(1,2,2)=0 |
130 |
exch2_pi(2,2,2)=-1 |
131 |
exch2_pj(1,2,2)=1 |
132 |
exch2_pj(2,2,2)=0 |
133 |
exch2_oi(2,2)=33 |
134 |
exch2_oi_f(2,2)=34 |
135 |
exch2_oj(2,2)=-32 |
136 |
exch2_oj_f(2,2)=-32 |
137 |
exch2_itlo_c(2,2)=33 |
138 |
exch2_ithi_c(2,2)=33 |
139 |
exch2_jtlo_c(2,2)=0 |
140 |
exch2_jthi_c(2,2)=33 |
141 |
exch2_opposingSend_record(2,2)=3 |
142 |
|
143 |
exch2_neighbourId(3,2)=4 |
144 |
exch2_pi(1,3,2)=0 |
145 |
exch2_pi(2,3,2)=1 |
146 |
exch2_pj(1,3,2)=-1 |
147 |
exch2_pj(2,3,2)=0 |
148 |
exch2_oi(3,2)=32 |
149 |
exch2_oi_f(3,2)=32 |
150 |
exch2_oj(3,2)=33 |
151 |
exch2_oj_f(3,2)=34 |
152 |
exch2_itlo_c(3,2)=0 |
153 |
exch2_ithi_c(3,2)=33 |
154 |
exch2_jtlo_c(3,2)=0 |
155 |
exch2_jthi_c(3,2)=0 |
156 |
exch2_opposingSend_record(3,2)=2 |
157 |
|
158 |
exch2_neighbourId(4,2)=1 |
159 |
exch2_pi(1,4,2)=1 |
160 |
exch2_pi(2,4,2)=0 |
161 |
exch2_pj(1,4,2)=0 |
162 |
exch2_pj(2,4,2)=1 |
163 |
exch2_oi(4,2)=-32 |
164 |
exch2_oi_f(4,2)=-32 |
165 |
exch2_oj(4,2)=0 |
166 |
exch2_oj_f(4,2)=0 |
167 |
exch2_itlo_c(4,2)=33 |
168 |
exch2_ithi_c(4,2)=33 |
169 |
exch2_jtlo_c(4,2)=0 |
170 |
exch2_jthi_c(4,2)=33 |
171 |
exch2_opposingSend_record(4,2)=3 |
172 |
RETURN |
173 |
END |
174 |
|
175 |
SUBROUTINE W2_E2SETUP_3 |
176 |
C Topology for tile 3 |
177 |
#include "W2_EXCH2_TOPOLOGY.h" |
178 |
exch2_tnx(3)=32 |
179 |
exch2_tny(3)=32 |
180 |
exch2_tbasex(3)=0 |
181 |
exch2_tbasey(3)=0 |
182 |
exch2_txglobalo(3)=65 |
183 |
exch2_tyglobalo(3)=1 |
184 |
exch2_isWedge(3)=1 |
185 |
exch2_isNedge(3)=1 |
186 |
exch2_isEedge(3)=1 |
187 |
exch2_isSedge(3)=1 |
188 |
exch2_myFace(3)=3 |
189 |
exch2_mydnx(3)=32 |
190 |
exch2_mydny(3)=32 |
191 |
exch2_nNeighbours(3)=4 |
192 |
|
193 |
exch2_neighbourId(1,3)=5 |
194 |
exch2_pi(1,1,3)=0 |
195 |
exch2_pi(2,1,3)=-1 |
196 |
exch2_pj(1,1,3)=1 |
197 |
exch2_pj(2,1,3)=0 |
198 |
exch2_oi(1,3)=33 |
199 |
exch2_oi_f(1,3)=34 |
200 |
exch2_oj(1,3)=32 |
201 |
exch2_oj_f(1,3)=32 |
202 |
exch2_itlo_c(1,3)=0 |
203 |
exch2_ithi_c(1,3)=0 |
204 |
exch2_jtlo_c(1,3)=0 |
205 |
exch2_jthi_c(1,3)=33 |
206 |
exch2_opposingSend_record(1,3)=4 |
207 |
|
208 |
exch2_neighbourId(2,3)=2 |
209 |
exch2_pi(1,2,3)=1 |
210 |
exch2_pi(2,2,3)=0 |
211 |
exch2_pj(1,2,3)=0 |
212 |
exch2_pj(2,2,3)=1 |
213 |
exch2_oi(2,3)=0 |
214 |
exch2_oi_f(2,3)=0 |
215 |
exch2_oj(2,3)=-32 |
216 |
exch2_oj_f(2,3)=-32 |
217 |
exch2_itlo_c(2,3)=0 |
218 |
exch2_ithi_c(2,3)=33 |
219 |
exch2_jtlo_c(2,3)=33 |
220 |
exch2_jthi_c(2,3)=33 |
221 |
exch2_opposingSend_record(2,3)=1 |
222 |
|
223 |
exch2_neighbourId(3,3)=4 |
224 |
exch2_pi(1,3,3)=1 |
225 |
exch2_pi(2,3,3)=0 |
226 |
exch2_pj(1,3,3)=0 |
227 |
exch2_pj(2,3,3)=1 |
228 |
exch2_oi(3,3)=32 |
229 |
exch2_oi_f(3,3)=32 |
230 |
exch2_oj(3,3)=0 |
231 |
exch2_oj_f(3,3)=0 |
232 |
exch2_itlo_c(3,3)=0 |
233 |
exch2_ithi_c(3,3)=0 |
234 |
exch2_jtlo_c(3,3)=0 |
235 |
exch2_jthi_c(3,3)=33 |
236 |
exch2_opposingSend_record(3,3)=4 |
237 |
|
238 |
exch2_neighbourId(4,3)=1 |
239 |
exch2_pi(1,4,3)=0 |
240 |
exch2_pi(2,4,3)=1 |
241 |
exch2_pj(1,4,3)=-1 |
242 |
exch2_pj(2,4,3)=0 |
243 |
exch2_oi(4,3)=-32 |
244 |
exch2_oi_f(4,3)=-32 |
245 |
exch2_oj(4,3)=33 |
246 |
exch2_oj_f(4,3)=34 |
247 |
exch2_itlo_c(4,3)=0 |
248 |
exch2_ithi_c(4,3)=33 |
249 |
exch2_jtlo_c(4,3)=33 |
250 |
exch2_jthi_c(4,3)=33 |
251 |
exch2_opposingSend_record(4,3)=1 |
252 |
RETURN |
253 |
END |
254 |
|
255 |
SUBROUTINE W2_E2SETUP_4 |
256 |
C Topology for tile 4 |
257 |
#include "W2_EXCH2_TOPOLOGY.h" |
258 |
exch2_tnx(4)=32 |
259 |
exch2_tny(4)=32 |
260 |
exch2_tbasex(4)=0 |
261 |
exch2_tbasey(4)=0 |
262 |
exch2_txglobalo(4)=97 |
263 |
exch2_tyglobalo(4)=1 |
264 |
exch2_isWedge(4)=1 |
265 |
exch2_isNedge(4)=1 |
266 |
exch2_isEedge(4)=1 |
267 |
exch2_isSedge(4)=1 |
268 |
exch2_myFace(4)=4 |
269 |
exch2_mydnx(4)=32 |
270 |
exch2_mydny(4)=32 |
271 |
exch2_nNeighbours(4)=4 |
272 |
|
273 |
exch2_neighbourId(1,4)=5 |
274 |
exch2_pi(1,1,4)=1 |
275 |
exch2_pi(2,1,4)=0 |
276 |
exch2_pj(1,1,4)=0 |
277 |
exch2_pj(2,1,4)=1 |
278 |
exch2_oi(1,4)=0 |
279 |
exch2_oi_f(1,4)=0 |
280 |
exch2_oj(1,4)=32 |
281 |
exch2_oj_f(1,4)=32 |
282 |
exch2_itlo_c(1,4)=0 |
283 |
exch2_ithi_c(1,4)=33 |
284 |
exch2_jtlo_c(1,4)=0 |
285 |
exch2_jthi_c(1,4)=0 |
286 |
exch2_opposingSend_record(1,4)=2 |
287 |
|
288 |
exch2_neighbourId(2,4)=2 |
289 |
exch2_pi(1,2,4)=0 |
290 |
exch2_pi(2,2,4)=-1 |
291 |
exch2_pj(1,2,4)=1 |
292 |
exch2_pj(2,2,4)=0 |
293 |
exch2_oi(2,4)=33 |
294 |
exch2_oi_f(2,4)=34 |
295 |
exch2_oj(2,4)=-32 |
296 |
exch2_oj_f(2,4)=-32 |
297 |
exch2_itlo_c(2,4)=33 |
298 |
exch2_ithi_c(2,4)=33 |
299 |
exch2_jtlo_c(2,4)=0 |
300 |
exch2_jthi_c(2,4)=33 |
301 |
exch2_opposingSend_record(2,4)=3 |
302 |
|
303 |
exch2_neighbourId(3,4)=6 |
304 |
exch2_pi(1,3,4)=0 |
305 |
exch2_pi(2,3,4)=1 |
306 |
exch2_pj(1,3,4)=-1 |
307 |
exch2_pj(2,3,4)=0 |
308 |
exch2_oi(3,4)=32 |
309 |
exch2_oi_f(3,4)=32 |
310 |
exch2_oj(3,4)=33 |
311 |
exch2_oj_f(3,4)=34 |
312 |
exch2_itlo_c(3,4)=0 |
313 |
exch2_ithi_c(3,4)=33 |
314 |
exch2_jtlo_c(3,4)=0 |
315 |
exch2_jthi_c(3,4)=0 |
316 |
exch2_opposingSend_record(3,4)=2 |
317 |
|
318 |
exch2_neighbourId(4,4)=3 |
319 |
exch2_pi(1,4,4)=1 |
320 |
exch2_pi(2,4,4)=0 |
321 |
exch2_pj(1,4,4)=0 |
322 |
exch2_pj(2,4,4)=1 |
323 |
exch2_oi(4,4)=-32 |
324 |
exch2_oi_f(4,4)=-32 |
325 |
exch2_oj(4,4)=0 |
326 |
exch2_oj_f(4,4)=0 |
327 |
exch2_itlo_c(4,4)=33 |
328 |
exch2_ithi_c(4,4)=33 |
329 |
exch2_jtlo_c(4,4)=0 |
330 |
exch2_jthi_c(4,4)=33 |
331 |
exch2_opposingSend_record(4,4)=3 |
332 |
RETURN |
333 |
END |
334 |
|
335 |
SUBROUTINE W2_E2SETUP_5 |
336 |
C Topology for tile 5 |
337 |
#include "W2_EXCH2_TOPOLOGY.h" |
338 |
exch2_tnx(5)=32 |
339 |
exch2_tny(5)=32 |
340 |
exch2_tbasex(5)=0 |
341 |
exch2_tbasey(5)=0 |
342 |
exch2_txglobalo(5)=129 |
343 |
exch2_tyglobalo(5)=1 |
344 |
exch2_isWedge(5)=1 |
345 |
exch2_isNedge(5)=1 |
346 |
exch2_isEedge(5)=1 |
347 |
exch2_isSedge(5)=1 |
348 |
exch2_myFace(5)=5 |
349 |
exch2_mydnx(5)=32 |
350 |
exch2_mydny(5)=32 |
351 |
exch2_nNeighbours(5)=4 |
352 |
|
353 |
exch2_neighbourId(1,5)=1 |
354 |
exch2_pi(1,1,5)=0 |
355 |
exch2_pi(2,1,5)=-1 |
356 |
exch2_pj(1,1,5)=1 |
357 |
exch2_pj(2,1,5)=0 |
358 |
exch2_oi(1,5)=33 |
359 |
exch2_oi_f(1,5)=34 |
360 |
exch2_oj(1,5)=32 |
361 |
exch2_oj_f(1,5)=32 |
362 |
exch2_itlo_c(1,5)=0 |
363 |
exch2_ithi_c(1,5)=0 |
364 |
exch2_jtlo_c(1,5)=0 |
365 |
exch2_jthi_c(1,5)=33 |
366 |
exch2_opposingSend_record(1,5)=4 |
367 |
|
368 |
exch2_neighbourId(2,5)=4 |
369 |
exch2_pi(1,2,5)=1 |
370 |
exch2_pi(2,2,5)=0 |
371 |
exch2_pj(1,2,5)=0 |
372 |
exch2_pj(2,2,5)=1 |
373 |
exch2_oi(2,5)=0 |
374 |
exch2_oi_f(2,5)=0 |
375 |
exch2_oj(2,5)=-32 |
376 |
exch2_oj_f(2,5)=-32 |
377 |
exch2_itlo_c(2,5)=0 |
378 |
exch2_ithi_c(2,5)=33 |
379 |
exch2_jtlo_c(2,5)=33 |
380 |
exch2_jthi_c(2,5)=33 |
381 |
exch2_opposingSend_record(2,5)=1 |
382 |
|
383 |
exch2_neighbourId(3,5)=6 |
384 |
exch2_pi(1,3,5)=1 |
385 |
exch2_pi(2,3,5)=0 |
386 |
exch2_pj(1,3,5)=0 |
387 |
exch2_pj(2,3,5)=1 |
388 |
exch2_oi(3,5)=32 |
389 |
exch2_oi_f(3,5)=32 |
390 |
exch2_oj(3,5)=0 |
391 |
exch2_oj_f(3,5)=0 |
392 |
exch2_itlo_c(3,5)=0 |
393 |
exch2_ithi_c(3,5)=0 |
394 |
exch2_jtlo_c(3,5)=0 |
395 |
exch2_jthi_c(3,5)=33 |
396 |
exch2_opposingSend_record(3,5)=4 |
397 |
|
398 |
exch2_neighbourId(4,5)=3 |
399 |
exch2_pi(1,4,5)=0 |
400 |
exch2_pi(2,4,5)=1 |
401 |
exch2_pj(1,4,5)=-1 |
402 |
exch2_pj(2,4,5)=0 |
403 |
exch2_oi(4,5)=-32 |
404 |
exch2_oi_f(4,5)=-32 |
405 |
exch2_oj(4,5)=33 |
406 |
exch2_oj_f(4,5)=34 |
407 |
exch2_itlo_c(4,5)=0 |
408 |
exch2_ithi_c(4,5)=33 |
409 |
exch2_jtlo_c(4,5)=33 |
410 |
exch2_jthi_c(4,5)=33 |
411 |
exch2_opposingSend_record(4,5)=1 |
412 |
RETURN |
413 |
END |
414 |
|
415 |
SUBROUTINE W2_E2SETUP_6 |
416 |
C Topology for tile 6 |
417 |
#include "W2_EXCH2_TOPOLOGY.h" |
418 |
exch2_tnx(6)=32 |
419 |
exch2_tny(6)=32 |
420 |
exch2_tbasex(6)=0 |
421 |
exch2_tbasey(6)=0 |
422 |
exch2_txglobalo(6)=161 |
423 |
exch2_tyglobalo(6)=1 |
424 |
exch2_isWedge(6)=1 |
425 |
exch2_isNedge(6)=1 |
426 |
exch2_isEedge(6)=1 |
427 |
exch2_isSedge(6)=1 |
428 |
exch2_myFace(6)=6 |
429 |
exch2_mydnx(6)=32 |
430 |
exch2_mydny(6)=32 |
431 |
exch2_nNeighbours(6)=4 |
432 |
|
433 |
exch2_neighbourId(1,6)=1 |
434 |
exch2_pi(1,1,6)=1 |
435 |
exch2_pi(2,1,6)=0 |
436 |
exch2_pj(1,1,6)=0 |
437 |
exch2_pj(2,1,6)=1 |
438 |
exch2_oi(1,6)=0 |
439 |
exch2_oi_f(1,6)=0 |
440 |
exch2_oj(1,6)=32 |
441 |
exch2_oj_f(1,6)=32 |
442 |
exch2_itlo_c(1,6)=0 |
443 |
exch2_ithi_c(1,6)=33 |
444 |
exch2_jtlo_c(1,6)=0 |
445 |
exch2_jthi_c(1,6)=0 |
446 |
exch2_opposingSend_record(1,6)=2 |
447 |
|
448 |
exch2_neighbourId(2,6)=4 |
449 |
exch2_pi(1,2,6)=0 |
450 |
exch2_pi(2,2,6)=-1 |
451 |
exch2_pj(1,2,6)=1 |
452 |
exch2_pj(2,2,6)=0 |
453 |
exch2_oi(2,6)=33 |
454 |
exch2_oi_f(2,6)=34 |
455 |
exch2_oj(2,6)=-32 |
456 |
exch2_oj_f(2,6)=-32 |
457 |
exch2_itlo_c(2,6)=33 |
458 |
exch2_ithi_c(2,6)=33 |
459 |
exch2_jtlo_c(2,6)=0 |
460 |
exch2_jthi_c(2,6)=33 |
461 |
exch2_opposingSend_record(2,6)=3 |
462 |
|
463 |
exch2_neighbourId(3,6)=2 |
464 |
exch2_pi(1,3,6)=0 |
465 |
exch2_pi(2,3,6)=1 |
466 |
exch2_pj(1,3,6)=-1 |
467 |
exch2_pj(2,3,6)=0 |
468 |
exch2_oi(3,6)=32 |
469 |
exch2_oi_f(3,6)=32 |
470 |
exch2_oj(3,6)=33 |
471 |
exch2_oj_f(3,6)=34 |
472 |
exch2_itlo_c(3,6)=0 |
473 |
exch2_ithi_c(3,6)=33 |
474 |
exch2_jtlo_c(3,6)=0 |
475 |
exch2_jthi_c(3,6)=0 |
476 |
exch2_opposingSend_record(3,6)=2 |
477 |
|
478 |
exch2_neighbourId(4,6)=5 |
479 |
exch2_pi(1,4,6)=1 |
480 |
exch2_pi(2,4,6)=0 |
481 |
exch2_pj(1,4,6)=0 |
482 |
exch2_pj(2,4,6)=1 |
483 |
exch2_oi(4,6)=-32 |
484 |
exch2_oi_f(4,6)=-32 |
485 |
exch2_oj(4,6)=0 |
486 |
exch2_oj_f(4,6)=0 |
487 |
exch2_itlo_c(4,6)=33 |
488 |
exch2_ithi_c(4,6)=33 |
489 |
exch2_jtlo_c(4,6)=0 |
490 |
exch2_jthi_c(4,6)=33 |
491 |
exch2_opposingSend_record(4,6)=3 |
492 |
RETURN |
493 |
END |
494 |
|