File indexing completed on 2018-03-02 18:42:47 UTC
view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
6bfee994e4 Jean*0001 #include "OCN_CPL_OPTIONS.h"
69e21e3ef0 Jean*0002
30541227a6 Jean*0003
0004
0005
0006
69e21e3ef0 Jean*0007 SUBROUTINE CPL_REGISTER
30541227a6 Jean*0008
0009
69e21e3ef0 Jean*0010
30541227a6 Jean*0011
0012
0013
69e21e3ef0 Jean*0014
30541227a6 Jean*0015
0016
69e21e3ef0 Jean*0017
0018
30541227a6 Jean*0019
0020 IMPLICIT NONE
69e21e3ef0 Jean*0021
0022 #include "SIZE.h"
0023 #include "EEPARAMS.h"
43b2661424 Jean*0024 #ifdef ALLOW_EXCH2
0025 # include "W2_EXCH2_SIZE.h"
0026 # include "W2_EXCH2_TOPOLOGY.h"
0027 # include "W2_EXCH2_PARAMS.h"
0028 #endif /* ALLOW_EXCH2 */
69e21e3ef0 Jean*0029
30541227a6 Jean*0030
69e21e3ef0 Jean*0031
30541227a6 Jean*0032
0033
0034
69e21e3ef0 Jean*0035
0036 #ifdef COMPONENT_MODULE
30541227a6 Jean*0037
0038
0039
0040
0041
43b2661424 Jean*0042
6269465120 Jean*0043
30541227a6 Jean*0044 INTEGER iG0, jG0
0045 INTEGER bi, bj
43b2661424 Jean*0046 INTEGER j, nTiles
0047 INTEGER iReg(6,nSx*nSy)
6269465120 Jean*0048
43b2661424 Jean*0049 #ifdef ALLOW_EXCH2
0050 INTEGER tN
6269465120 Jean*0051 LOGICAL useExch2LayOut
0052 #endif /* ALLOW_EXCH2 */
0053
0054
0055
0056
0057
0058 #ifdef ALLOW_EXCH2
0059
0060
0061
0062
0063 useExch2LayOut = .FALSE.
0064 IF ( W2_useE2ioLayOut ) THEN
0065 useExch2LayOut = .TRUE.
0066 DO tN=1,exch2_nTiles
0067 IF ( exch2_mydNx(tN) .GT. exch2_global_Nx ) THEN
0068 useExch2LayOut = .FALSE.
0069
0070
0071
0072 ELSEIF ( exch2_tNy(tN) .GT. exch2_global_Ny ) THEN
0073 useExch2LayOut = .FALSE.
0074
0075
0076
0077 ELSE
0078
0079
0080
0081 ENDIF
0082 ENDDO
0083 ENDIF
0084
0085
0086
0087
0088
43b2661424 Jean*0089 #endif /* ALLOW_EXCH2 */
69e21e3ef0 Jean*0090
0091
43b2661424 Jean*0092 j = 0
69e21e3ef0 Jean*0093 DO bj=1,nSy
0094 DO bi=1,nSx
43b2661424 Jean*0095 j = j+1
69e21e3ef0 Jean*0096 iG0 = myXGlobalLo+(bi-1)*sNx
43b2661424 Jean*0097 jG0 = myYGlobalLo+(bj-1)*sNy
0098 #ifdef ALLOW_EXCH2
6269465120 Jean*0099 IF ( useExch2LayOut ) THEN
43b2661424 Jean*0100 tN = W2_myTileList(bi,bj)
0101 iG0 = exch2_txGlobalo(tN)
0102 jG0 = exch2_tyGlobalo(tN)
0103 ENDIF
0104 #endif /* ALLOW_EXCH2 */
0105 iReg(1,j) = bi
0106 iReg(2,j) = bj
0107 iReg(3,j) = sNx
0108 iReg(4,j) = sNy
0109 iReg(5,j) = iG0
0110 iReg(6,j) = jG0
69e21e3ef0 Jean*0111 ENDDO
0112 ENDDO
43b2661424 Jean*0113 nTiles = nSx*nSy
0114 CALL MITCOMPONENT_TILE_REGISTER( nTiles, iReg )
30541227a6 Jean*0115 #endif /* COMPONENT_MODULE */
69e21e3ef0 Jean*0116
0117 RETURN
0118 END