/[MITgcm]/MITgcm/pkg/exch2/exch2_uv_cgrid_3d_rx.template
ViewVC logotype

Diff of /MITgcm/pkg/exch2/exch2_uv_cgrid_3d_rx.template

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

revision 1.3 by jmc, Tue May 12 19:44:58 2009 UTC revision 1.4 by jmc, Sun Jun 28 00:57:51 2009 UTC
# Line 35  C     !USES: Line 35  C     !USES:
35    
36  #include "SIZE.h"  #include "SIZE.h"
37  #include "EEPARAMS.h"  #include "EEPARAMS.h"
 c#include "EESUPPORT.h"  
38  #include "W2_EXCH2_SIZE.h"  #include "W2_EXCH2_SIZE.h"
39  #include "W2_EXCH2_TOPOLOGY.h"  #include "W2_EXCH2_TOPOLOGY.h"
40  #ifdef W2_FILL_NULL_REGIONS  #ifdef W2_FILL_NULL_REGIONS
# Line 74  CEOP Line 73  CEOP
73        negOne = 1.        negOne = 1.
74        IF (withSigns) negOne = -1.        IF (withSigns) negOne = -1.
75    
       IF ( useCubedSphereExchange ) THEN  
 C---  using CubedSphereExchange:  
   
76  C--   First call the exchanges for the two components  C--   First call the exchanges for the two components
77    
78         CALL EXCH2_RX1_CUBE( uPhi, 'T ',         CALL EXCH2_RX1_CUBE( uPhi, 'T ',
# Line 101  C- note: can substitute the low-level S/ Line 97  C- note: can substitute the low-level S/
97  c      CALL EXCH2_3D_RX( uPhi, myNz, myThid )  c      CALL EXCH2_3D_RX( uPhi, myNz, myThid )
98  c      CALL EXCH2_3D_RX( vPhi, myNz, myThid )  c      CALL EXCH2_3D_RX( vPhi, myNz, myThid )
99    
100          IF ( useCubedSphereExchange ) THEN
101    
102  C--   Then, depending on which tile we are, we may need  C--   Then, depending on which tile we are, we may need
103  C     1) to switch u and v components and also to switch the signs  C     1) to switch u and v components and also to switch the signs
104  C     2) to shift the index along the face edge.  C     2) to shift the index along the face edge.
# Line 116  C--   Loops on tile indices: Line 114  C--   Loops on tile indices:
114    
115  C-    Now choose what to do at each edge of the halo based on which face  C-    Now choose what to do at each edge of the halo based on which face
116  C    (we assume that bj is always=1)  C    (we assume that bj is always=1)
117           myTile = W2_myTileList(bi)           myTile = W2_myTileList(bi,bj)
118           myFace = exch2_myFace(myTile)           myFace = exch2_myFace(myTile)
119    
120  C--   Loops on level index:  C--   Loops on level index:
# Line 405  C--   end of Loops on tile indices (bi,b Line 403  C--   end of Loops on tile indices (bi,b
403          ENDDO          ENDDO
404         ENDDO         ENDDO
405    
 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|  
   
       ELSE  
 C---  not using CubedSphereExchange:  
   
 #ifndef AUTODIFF_EXCH2  
        CALL EXCH_RX( uPhi,  
      I            OLw, OLe, OLs, OLn, myNz,  
      I            exchWidthX, exchWidthY,  
      I            FORWARD_SIMULATION, EXCH_UPDATE_CORNERS, myThid )  
        CALL EXCH_RX( vPhi,  
      I            OLw, OLe, OLs, OLn, myNz,  
      I            exchWidthX, exchWidthY,  
      I            FORWARD_SIMULATION, EXCH_UPDATE_CORNERS, myThid )  
 #endif  
   
406  C---  using or not using CubedSphereExchange: end  C---  using or not using CubedSphereExchange: end
407        ENDIF        ENDIF
408    

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.4

  ViewVC Help
Powered by ViewVC 1.1.22