25 |
C == Global variables == |
C == Global variables == |
26 |
#include "SIZE.h" |
#include "SIZE.h" |
27 |
#include "EEPARAMS.h" |
#include "EEPARAMS.h" |
|
c#include "EESUPPORT.h" |
|
|
c#include "EXCH.h" |
|
28 |
|
|
29 |
C !INPUT/OUTPUT PARAMETERS: |
C !INPUT/OUTPUT PARAMETERS: |
30 |
C == Routine arguments == |
C == Routine arguments == |
60 |
OLs = OLy |
OLs = OLy |
61 |
exchWidthX = OLx |
exchWidthX = OLx |
62 |
exchWidthY = OLy |
exchWidthY = OLy |
|
C ** NOTE ** The exchange routine we use here does not |
|
|
C require the preceeding and following barriers. |
|
|
C However, the slow, simple exchange interface |
|
|
C that is calling it here is meant to ensure |
|
|
C that threads are synchronised before exchanges |
|
|
C begine. |
|
63 |
IF (useCubedSphereExchange) THEN |
IF (useCubedSphereExchange) THEN |
64 |
CALL EXCH_Z_RX_CUBE( phi, |
CALL EXCH1_Z_RX_CUBE( phi, .FALSE., |
65 |
I OLw, OLe, OLs, OLn, myNz, |
I OLw, OLe, OLs, OLn, myNz, |
66 |
I exchWidthX, exchWidthY, |
I exchWidthX, exchWidthY, |
67 |
I FORWARD_SIMULATION, EXCH_UPDATE_CORNERS, myThid ) |
I EXCH_UPDATE_CORNERS, myThid ) |
68 |
ELSE |
ELSE |
69 |
CALL EXCH_RX( phi, |
CALL EXCH1_RX( phi, |
70 |
I OLw, OLe, OLs, OLn, myNz, |
I OLw, OLe, OLs, OLn, myNz, |
71 |
I exchWidthX, exchWidthY, |
I exchWidthX, exchWidthY, |
72 |
I FORWARD_SIMULATION, EXCH_UPDATE_CORNERS, myThid ) |
I EXCH_UPDATE_CORNERS, myThid ) |
73 |
ENDIF |
ENDIF |
74 |
|
|
75 |
RETURN |
RETURN |