/[MITgcm]/MITgcm/pkg/mnc/mnc_cw_cvars.F
ViewVC logotype

Diff of /MITgcm/pkg/mnc/mnc_cw_cvars.F

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

revision 1.6 by edhill, Fri Mar 10 16:09:31 2006 UTC revision 1.7 by mlosch, Fri Feb 1 11:05:14 2008 UTC
# Line 44  C     !INPUT PARAMETERS: Line 44  C     !INPUT PARAMETERS:
44  CEOP  CEOP
45    
46  C     !LOCAL VARIABLES:  C     !LOCAL VARIABLES:
47        integer i,j, vid, nnf,nnl, doit, err        integer i, vid, nnf, nnl, doit, err
48        integer nids, cv_did(1), xtmin,ytmin        integer nids, cv_did(1), xtmin,ytmin
49        character*(MAX_LEN_MBUF) msgbuf        character*(MAX_LEN_MBUF) msgbuf
50        integer cv_start(1), cv_count(1)        integer cv_start(1), cv_count(1)
# Line 68  C     Check all the coordinate variables Line 68  C     Check all the coordinate variables
68    
69          cv_start(1) = 1          cv_start(1) = 1
70          cv_count(1) = sNx          cv_count(1) = sNx
         DO i = cv_start(1),cv_count(1)  
71  #ifdef ALLOW_EXCH2  #ifdef ALLOW_EXCH2
72            rtmp(i) = xtmin + i          DO i = cv_start(1),cv_count(1)
73             rtmp(i) = xtmin + i
74            ENDDO
75  #else  #else
76            IF ( usingCurvilinearGrid ) THEN
77             DO i = cv_start(1),cv_count(1)
78              rtmp(i) = xtmin + i
79             ENDDO
80            ELSE
81             DO i = cv_start(1),cv_count(1)
82            rtmp(i) = xC(i,1,bi,bj)            rtmp(i) = xC(i,1,bi,bj)
83             ENDDO
84            ENDIF
85  #endif  #endif
         ENDDO  
86    
87        ELSEIF (cvname(nnf:nnl) .EQ. 'Xp1') THEN        ELSEIF (cvname(nnf:nnl) .EQ. 'Xp1') THEN
88    
89          cv_start(1) = 1          cv_start(1) = 1
90          cv_count(1) = sNx + 1          cv_count(1) = sNx + 1
         DO i = cv_start(1),cv_count(1)  
91  #ifdef ALLOW_EXCH2  #ifdef ALLOW_EXCH2
92            rtmp(i) = xtmin + i          DO i = cv_start(1),cv_count(1)
93             rtmp(i) = xtmin + i
94            ENDDO
95  #else  #else
96            IF ( usingCurvilinearGrid ) THEN
97             DO i = cv_start(1),cv_count(1)
98              rtmp(i) = xtmin + i
99             ENDDO
100            ELSE
101             DO i = cv_start(1),cv_count(1)
102            rtmp(i) = xG(i,1,bi,bj)            rtmp(i) = xG(i,1,bi,bj)
103             ENDDO
104            ENDIF
105  #endif  #endif
         ENDDO  
106    
107        ELSEIF (cvname(nnf:nnl) .EQ. 'Xwh') THEN        ELSEIF (cvname(nnf:nnl) .EQ. 'Xwh') THEN
108    
109          cv_start(1) = 1          cv_start(1) = 1
110          cv_count(1) = sNx + 2*OLx          cv_count(1) = sNx + 2*OLx
         DO i = cv_start(1),cv_count(1)  
111  #ifdef ALLOW_EXCH2  #ifdef ALLOW_EXCH2
112            rtmp(i) = xtmin - OLx + i          DO i = cv_start(1),cv_count(1)
113             rtmp(i) = xtmin + i
114            ENDDO
115  #else  #else
116            IF ( usingCurvilinearGrid ) THEN
117             DO i = cv_start(1),cv_count(1)
118              rtmp(i) = xtmin - OLx + i
119             ENDDO
120            ELSE
121             DO i = cv_start(1),cv_count(1)
122            rtmp(i) = xC(i,1,bi,bj)            rtmp(i) = xC(i,1,bi,bj)
123             ENDDO
124            ENDIF
125  #endif  #endif
         ENDDO  
126                    
127        ELSEIF (cvname(nnf:nnl) .EQ. 'Y') THEN        ELSEIF (cvname(nnf:nnl) .EQ. 'Y') THEN
128    
129          cv_start(1) = 1          cv_start(1) = 1
130          cv_count(1) = sNy          cv_count(1) = sNy
         DO i = cv_start(1),cv_count(1)  
131  #ifdef ALLOW_EXCH2  #ifdef ALLOW_EXCH2
132            rtmp(i) = ytmin + i          DO i = cv_start(1),cv_count(1)
133             rtmp(i) = ytmin + i
134            ENDDO
135  #else  #else
136            IF ( usingCurvilinearGrid ) THEN
137             DO i = cv_start(1),cv_count(1)
138              rtmp(i) = ytmin + i
139             ENDDO
140            ELSE
141             DO i = cv_start(1),cv_count(1)
142            rtmp(i) = yC(1,i,bi,bj)            rtmp(i) = yC(1,i,bi,bj)
143             ENDDO
144            ENDIF
145  #endif  #endif
         ENDDO  
146    
147        ELSEIF (cvname(nnf:nnl) .EQ. 'Yp1') THEN        ELSEIF (cvname(nnf:nnl) .EQ. 'Yp1') THEN
148    
149          cv_start(1) = 1          cv_start(1) = 1
150          cv_count(1) = sNy + 1          cv_count(1) = sNy + 1
         DO i = cv_start(1),cv_count(1)  
151  #ifdef ALLOW_EXCH2  #ifdef ALLOW_EXCH2
152            rtmp(i) = ytmin + i          DO i = cv_start(1),cv_count(1)
153             rtmp(i) = ytmin + i
154            ENDDO
155  #else  #else
156            IF ( usingCurvilinearGrid ) THEN
157             DO i = cv_start(1),cv_count(1)
158              rtmp(i) = ytmin + i
159             ENDDO
160            ELSE
161             DO i = cv_start(1),cv_count(1)
162            rtmp(i) = yG(1,i,bi,bj)            rtmp(i) = yG(1,i,bi,bj)
163             ENDDO
164            ENDIF
165  #endif  #endif
         ENDDO  
166    
167        ELSEIF (cvname(nnf:nnl) .EQ. 'Ywh') THEN        ELSEIF (cvname(nnf:nnl) .EQ. 'Ywh') THEN
168    
169          cv_start(1) = 1          cv_start(1) = 1
170          cv_count(1) = sNy + 2*OLy          cv_count(1) = sNy + 2*OLy
         DO i = cv_start(1),cv_count(1)  
171  #ifdef ALLOW_EXCH2  #ifdef ALLOW_EXCH2
172            rtmp(i) = ytmin - OLy + i          DO i = cv_start(1),cv_count(1)
173             rtmp(i) = ytmin + i
174            ENDDO
175  #else  #else
176            IF ( usingCurvilinearGrid ) THEN
177             DO i = cv_start(1),cv_count(1)
178              rtmp(i) = ytmin - OLy + i
179             ENDDO
180            ELSE
181             DO i = cv_start(1),cv_count(1)
182            rtmp(i) = yC(1,i-OLy,bi,bj)            rtmp(i) = yC(1,i-OLy,bi,bj)
183             ENDDO
184            ENDIF
185  #endif  #endif
         ENDDO  
186    
187        ELSEIF (cvname(nnf:nnl) .EQ. 'Z') THEN        ELSEIF (cvname(nnf:nnl) .EQ. 'Z') THEN
188    

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.7

  ViewVC Help
Powered by ViewVC 1.1.22