71 |
C-- First call the exchanges for the two components, ignoring the Sign |
C-- First call the exchanges for the two components, ignoring the Sign |
72 |
C note the order: vPhi,uPhi on D-grid are co-located with (u,v)_Cgrid |
C note the order: vPhi,uPhi on D-grid are co-located with (u,v)_Cgrid |
73 |
|
|
74 |
c CALL EXCH2_RX2_CUBE( vPhi, uPhi, .FALSE., 'UV', |
c CALL EXCH2_RX2_CUBE( vPhi, uPhi, .FALSE., 'Cg', |
75 |
c I OLw, OLe, OLs, OLn, myNz, |
c I OLw, OLe, OLs, OLn, myNz, |
76 |
c I exchWidthX, exchWidthY, |
c I exchWidthX, exchWidthY, |
77 |
c I FORWARD_SIMULATION, EXCH_UPDATE_CORNERS, myThid ) |
c I EXCH_UPDATE_CORNERS, myThid ) |
78 |
c CALL EXCH2_RX2_CUBE( vPhi, uPhi, .FALSE., 'UV', |
c CALL EXCH2_RX2_CUBE( vPhi, uPhi, .FALSE., 'Cg', |
79 |
c I OLw, OLe, OLs, OLn, myNz, |
c I OLw, OLe, OLs, OLn, myNz, |
80 |
c I exchWidthX, exchWidthY, |
c I exchWidthX, exchWidthY, |
81 |
c I FORWARD_SIMULATION, EXCH_UPDATE_CORNERS, myThid ) |
c I EXCH_UPDATE_CORNERS, myThid ) |
|
c CALL EXCH2_RX2_CUBE( vPhi, uPhi, .FALSE., 'UV', |
|
|
c I OLw, OLe, OLs, OLn, myNz, |
|
|
c I exchWidthX, exchWidthY, |
|
|
c I FORWARD_SIMULATION, EXCH_UPDATE_CORNERS, myThid ) |
|
82 |
|
|
83 |
C- note: can substitute the low-level S/R calls above with: |
C- note: can substitute the low-level S/R calls above with: |
84 |
#ifdef W2_USE_R1_ONLY |
#ifdef W2_USE_R1_ONLY |
101 |
DO bj = myByLo(myThid), myByHi(myThid) |
DO bj = myByLo(myThid), myByHi(myThid) |
102 |
DO bi = myBxLo(myThid), myBxHi(myThid) |
DO bi = myBxLo(myThid), myBxHi(myThid) |
103 |
|
|
104 |
C- Now choose what to do at each edge of the halo based on which face |
C- Choose what to do at each edge of the halo based on which face we are |
|
C (we assume that bj is always=1) |
|
105 |
myTile = W2_myTileList(bi,bj) |
myTile = W2_myTileList(bi,bj) |
106 |
myFace = exch2_myFace(myTile) |
myFace = exch2_myFace(myTile) |
107 |
|
|