/[MITgcm]/MITgcm/pkg/diagnostics/diagnostics_fill_state.F
ViewVC logotype

Diff of /MITgcm/pkg/diagnostics/diagnostics_fill_state.F

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

revision 1.10 by edhill, Tue Jul 6 03:55:53 2004 UTC revision 1.11 by edhill, Wed Jul 7 03:10:14 2004 UTC
# Line 18  C $Name$ Line 18  C $Name$
18        _RL dummys(1-OLx:sNx+Olx,1-Oly:sNy+Oly,nSx,nSy)        _RL dummys(1-OLx:sNx+Olx,1-Oly:sNy+Oly,nSx,nSy)
19        integer i,j,K,bi,bj        integer i,j,K,bi,bj
20        integer km1        integer km1
21          
22          call fill_diagnostics(myThid,'ETAN    ',0,1,0,1,1,etaN)        call fill_diagnostics(myThid,'ETAN    ',0,1,0,1,1,etaN)
23          
24          do bj = myByLo(myThid), myByHi(myThid)        do bj = myByLo(myThid), myByHi(myThid)
25          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
26            do j = 1,sNy            do j = 1,sNy
27            do i = 1,sNx              do i = 1,sNx
28             dummys(i,j,bi,bj) = etaN(i,j,bi,bj)*etaN(i,j,bi,bj)                dummys(i,j,bi,bj) = etaN(i,j,bi,bj)*etaN(i,j,bi,bj)
29            enddo              enddo
30            enddo            enddo
31          enddo          enddo
32          enddo        enddo
33          call fill_diagnostics(myThid,'ETANSQ  ',0,1,0,1,1,dummys)        call fill_diagnostics(myThid,'ETANSQ  ',0,1,0,1,1,dummys)
34          
35          call fill_diagnostics(myThid,'UVEL    ',0,Nr,0,1,1,uVel)        call fill_diagnostics(myThid,'UVEL    ',0,Nr,0,1,1,uVel)
36          call fill_diagnostics(myThid,'VVEL    ',0,Nr,0,1,1,vVel)        call fill_diagnostics(myThid,'VVEL    ',0,Nr,0,1,1,vVel)
37          call fill_diagnostics(myThid,'WVEL    ',0,Nr,0,1,1,wVel)        call fill_diagnostics(myThid,'WVEL    ',0,Nr,0,1,1,wVel)
38          call fill_diagnostics(myThid,'THETA   ',0,Nr,0,1,1,theta)        call fill_diagnostics(myThid,'THETA   ',0,Nr,0,1,1,theta)
39          call fill_diagnostics(myThid,'SALT    ',0,Nr,0,1,1,salt)        call fill_diagnostics(myThid,'SALT    ',0,Nr,0,1,1,salt)
40          
41          do bj = myByLo(myThid), myByHi(myThid)        do bj = myByLo(myThid), myByHi(myThid)
42          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
43           do K=1,Nr            do K=1,Nr
44            do j = 1,sNy              do j = 1,sNy
45            do i = 1,sNx                do i = 1,sNx
46             dummy(i,j,K,bi,bj) = uVel(i,j,K,bi,bj)*uVel(i,j,K,bi,bj)                  dummy(i,j,K,bi,bj) = uVel(i,j,K,bi,bj)*uVel(i,j,K,bi,bj)
47            enddo                enddo
48                enddo
49            enddo            enddo
          enddo  
         enddo  
50          enddo          enddo
51          call fill_diagnostics(myThid,'UVELSQ  ',0,Nr,0,1,1,dummy)        enddo
52          call fill_diagnostics(myThid,'UVELSQ  ',0,Nr,0,1,1,dummy)
53    
54          do bj = myByLo(myThid), myByHi(myThid)        do bj = myByLo(myThid), myByHi(myThid)
55          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
56           do K=1,Nr            do K=1,Nr
57            do j = 1,sNy              do j = 1,sNy
58            do i = 1,sNx                do i = 1,sNx
59             dummy(i,j,K,bi,bj) = vVel(i,j,K,bi,bj)*vVel(i,j,K,bi,bj)                  dummy(i,j,K,bi,bj) = vVel(i,j,K,bi,bj)*vVel(i,j,K,bi,bj)
60            enddo                enddo
61                enddo
62            enddo            enddo
          enddo  
         enddo  
63          enddo          enddo
64          call fill_diagnostics(myThid,'VVELSQ  ',0,Nr,0,1,1,dummy)        enddo
65          call fill_diagnostics(myThid,'VVELSQ  ',0,Nr,0,1,1,dummy)
66    
67          do bj = myByLo(myThid), myByHi(myThid)        do bj = myByLo(myThid), myByHi(myThid)
68          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
69           do K=1,Nr            do K=1,Nr
70            do j = 1,sNy              do j = 1,sNy
71            do i = 1,sNx                do i = 1,sNx
72             dummy(i,j,K,bi,bj) = wVel(i,j,K,bi,bj)*wVel(i,j,K,bi,bj)                  dummy(i,j,K,bi,bj) = wVel(i,j,K,bi,bj)*wVel(i,j,K,bi,bj)
73            enddo                enddo
74                enddo
75            enddo            enddo
          enddo  
         enddo  
76          enddo          enddo
77          call fill_diagnostics(myThid,'WVELSQ  ',0,Nr,0,1,1,dummy)        enddo
78          call fill_diagnostics(myThid,'WVELSQ  ',0,Nr,0,1,1,dummy)
79          do bj = myByLo(myThid), myByHi(myThid)        
80          do bj = myByLo(myThid), myByHi(myThid)
81          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
82           do K=1,Nr            do K=1,Nr
83            do j = 1,sNy              do j = 1,sNy
84            do i = 1,sNx                do i = 1,sNx
85             dummy(i,j,K,bi,bj) = theta(i,j,K,bi,bj)*theta(i,j,K,bi,bj)                  dummy(i,j,K,bi,bj)
86            enddo       &               = theta(i,j,K,bi,bj)*theta(i,j,K,bi,bj)
87                  enddo
88                enddo
89            enddo            enddo
          enddo  
         enddo  
90          enddo          enddo
91          call fill_diagnostics(myThid,'THETASQ ',0,Nr,0,1,1,dummy)        enddo
92          call fill_diagnostics(myThid,'THETASQ ',0,Nr,0,1,1,dummy)
93          do bj = myByLo(myThid), myByHi(myThid)        
94          do bj = myByLo(myThid), myByHi(myThid)
95          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
96           do K=1,Nr            do K=1,Nr
97            do j = 1,sNy              do j = 1,sNy
98            do i = 1,sNx                do i = 1,sNx
99             dummy(i,j,K,bi,bj) = salt(i,j,K,bi,bj)*salt(i,j,K,bi,bj)                  dummy(i,j,K,bi,bj) = salt(i,j,K,bi,bj)*salt(i,j,K,bi,bj)
100            enddo                enddo
101                enddo
102            enddo            enddo
          enddo  
103          enddo          enddo
104          enddo        enddo
105          call fill_diagnostics(myThid,'SALTSQ  ',0,Nr,0,1,1,dummy)        call fill_diagnostics(myThid,'SALTSQ  ',0,Nr,0,1,1,dummy)
106          
107          do bj = myByLo(myThid), myByHi(myThid)        do bj = myByLo(myThid), myByHi(myThid)
108          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
109           do K=1,Nr            do K=1,Nr
110            do j = 1,sNy              do j = 1,sNy
111            do i = 1,sNx                do i = 1,sNx
112             dummy(i,j,K,bi,bj) = uVel(i,j,K,bi,bj)*vVel(i,j,K,bi,bj)                  dummy(i,j,K,bi,bj) = uVel(i,j,K,bi,bj)*vVel(i,j,K,bi,bj)
113            enddo                enddo
114                enddo
115            enddo            enddo
          enddo  
116          enddo          enddo
117          enddo        enddo
118          call fill_diagnostics(myThid,'UVELVVEL',0,Nr,0,1,1,dummy)        call fill_diagnostics(myThid,'UVELVVEL',0,Nr,0,1,1,dummy)
119          
120          do bj = myByLo(myThid), myByHi(myThid)        do bj = myByLo(myThid), myByHi(myThid)
121          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
122           do K=1,Nr            do K=1,Nr
123            do j = 1,sNy              do j = 1,sNy
124            do i = 1,sNx                do i = 1,sNx
125             dummy(i,j,K,bi,bj) = uVel(i,j,K,bi,bj)*                  dummy(i,j,K,bi,bj) = uVel(i,j,K,bi,bj)*
126       &         0.5*(theta(i,j,K,bi,bj)+theta(i-1,j,K,bi,bj))       &               0.5*(theta(i,j,K,bi,bj)+theta(i-1,j,K,bi,bj))
127            enddo                enddo
128                enddo
129            enddo            enddo
          enddo  
         enddo  
130          enddo          enddo
131          call fill_diagnostics(myThid,'UVELTH  ',0,Nr,0,1,1,dummy)        enddo
132          call fill_diagnostics(myThid,'UVELTH  ',0,Nr,0,1,1,dummy)
133          do bj = myByLo(myThid), myByHi(myThid)        
134          do bj = myByLo(myThid), myByHi(myThid)
135          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
136           do K=1,Nr            do K=1,Nr
137            do j = 1,sNy              do j = 1,sNy
138            do i = 1,sNx                do i = 1,sNx
139             dummy(i,j,K,bi,bj) = vVel(i,j,K,bi,bj)*                  dummy(i,j,K,bi,bj) = vVel(i,j,K,bi,bj)*
140       &         0.5*(theta(i,j,K,bi,bj)+theta(i,j-1,K,bi,bj))       &               0.5*(theta(i,j,K,bi,bj)+theta(i,j-1,K,bi,bj))
141            enddo                enddo
142                enddo
143            enddo            enddo
          enddo  
         enddo  
144          enddo          enddo
145          call fill_diagnostics(myThid,'VVELTH  ',0,Nr,0,1,1,dummy)        enddo
146          call fill_diagnostics(myThid,'VVELTH  ',0,Nr,0,1,1,dummy)
147          do bj = myByLo(myThid), myByHi(myThid)        
148           do bi = myBxLo(myThid), myBxHi(myThid)        do bj = myByLo(myThid), myByHi(myThid)
149            do bi = myBxLo(myThid), myBxHi(myThid)
150            do K=1,Nr            do K=1,Nr
151             km1 = MAX(k-1,1)              km1 = MAX(k-1,1)
152             do j = 1,sNy              do j = 1,sNy
153              do i = 1,sNx                do i = 1,sNx
154               dummy(i,j,K,bi,bj) = wVel(i,j,K,bi,bj)*0.5*                  dummy(i,j,K,bi,bj) = wVel(i,j,K,bi,bj)*0.5*
155       &                 (theta(i,j,K,bi,bj)+theta(i,j,km1,bi,bj))       &               (theta(i,j,K,bi,bj)+theta(i,j,km1,bi,bj))
156                  enddo
157              enddo              enddo
            enddo  
158            enddo            enddo
          enddo  
159          enddo          enddo
160          call fill_diagnostics(myThid,'WVELTH  ',0,Nr,0,1,1,dummy)        enddo
161          call fill_diagnostics(myThid,'WVELTH  ',0,Nr,0,1,1,dummy)
162          do bj = myByLo(myThid), myByHi(myThid)        
163          do bj = myByLo(myThid), myByHi(myThid)
164          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
165           do K=1,Nr            do K=1,Nr
166            do j = 1,sNy              do j = 1,sNy
167            do i = 1,sNx                do i = 1,sNx
168             dummy(i,j,K,bi,bj) = uVel(i,j,K,bi,bj)*                  dummy(i,j,K,bi,bj) = uVel(i,j,K,bi,bj)*
169       &         0.5*(salt(i,j,K,bi,bj)+salt(i-1,j,K,bi,bj))       &               0.5*(salt(i,j,K,bi,bj)+salt(i-1,j,K,bi,bj))
170            enddo                enddo
171                enddo
172            enddo            enddo
          enddo  
         enddo  
173          enddo          enddo
174          call fill_diagnostics(myThid,'UVELSLT ',0,Nr,0,1,1,dummy)        enddo
175          call fill_diagnostics(myThid,'UVELSLT ',0,Nr,0,1,1,dummy)
176          do bj = myByLo(myThid), myByHi(myThid)        
177          do bj = myByLo(myThid), myByHi(myThid)
178          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
179           do K=1,Nr            do K=1,Nr
180            do j = 1,sNy              do j = 1,sNy
181            do i = 1,sNx                do i = 1,sNx
182             dummy(i,j,K,bi,bj) = vVel(i,j,K,bi,bj)*                  dummy(i,j,K,bi,bj) = vVel(i,j,K,bi,bj)*
183       &         0.5*(salt(i,j,K,bi,bj)+salt(i,j-1,K,bi,bj))       &               0.5*(salt(i,j,K,bi,bj)+salt(i,j-1,K,bi,bj))
184            enddo                enddo
185                enddo
186            enddo            enddo
          enddo  
         enddo  
187          enddo          enddo
188          call fill_diagnostics(myThid,'VVELSLT ',0,Nr,0,1,1,dummy)        enddo
189          call fill_diagnostics(myThid,'VVELSLT ',0,Nr,0,1,1,dummy)
190    
191          do bj = myByLo(myThid), myByHi(myThid)        do bj = myByLo(myThid), myByHi(myThid)
192           do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
193            do K=1,Nr            do K=1,Nr
194             km1 = MAX(k-1,1)              km1 = MAX(k-1,1)
195             do j = 1,sNy              do j = 1,sNy
196              do i = 1,sNx                do i = 1,sNx
197               dummy(i,j,K,bi,bj) = wVel(i,j,K,bi,bj)*0.5*                  dummy(i,j,K,bi,bj) = wVel(i,j,K,bi,bj)*0.5*
198       &                 (salt(i,j,K,bi,bj)+salt(i,j,km1,bi,bj))       &               (salt(i,j,K,bi,bj)+salt(i,j,km1,bi,bj))
199                  enddo
200              enddo              enddo
            enddo  
201            enddo            enddo
          enddo  
202          enddo          enddo
203          call fill_diagnostics(myThid,'WVELSLT ',0,Nr,0,1,1,dummy)        enddo
204          call fill_diagnostics(myThid,'WVELSLT ',0,Nr,0,1,1,dummy)
205          do bj = myByLo(myThid), myByHi(myThid)        
206          do bj = myByLo(myThid), myByHi(myThid)
207          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
208           do K=1,Nr            do K=1,Nr
209            do j = 1,sNy              do j = 1,sNy
210            do i = 1,sNx                do i = 1,sNx
211             dummy(i,j,K,bi,bj) = uVel(i,j,K,bi,bj)*hFacW(i,j,K,bi,bj)                  dummy(i,j,K,bi,bj)
212            enddo       &               = uVel(i,j,K,bi,bj)*hFacW(i,j,K,bi,bj)
213                  enddo
214                enddo
215            enddo            enddo
          enddo  
         enddo  
216          enddo          enddo
217          call fill_diagnostics(myThid,'UVELMASS',0,Nr,0,1,1,dummy)        enddo
218          call fill_diagnostics(myThid,'UVELMASS',0,Nr,0,1,1,dummy)
219    
220          do bj = myByLo(myThid), myByHi(myThid)        do bj = myByLo(myThid), myByHi(myThid)
221          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
222           do K=1,Nr            do K=1,Nr
223            do j = 1,sNy              do j = 1,sNy
224            do i = 1,sNx                do i = 1,sNx
225             dummy(i,j,K,bi,bj) = vVel(i,j,K,bi,bj)*hFacS(i,j,K,bi,bj)                  dummy(i,j,K,bi,bj)
226            enddo       &               = vVel(i,j,K,bi,bj)*hFacS(i,j,K,bi,bj)
227                  enddo
228                enddo
229            enddo            enddo
          enddo  
         enddo  
230          enddo          enddo
231          call fill_diagnostics(myThid,'VVELMASS',0,Nr,0,1,1,dummy)        enddo
232          call fill_diagnostics(myThid,'VVELMASS',0,Nr,0,1,1,dummy)
233    
234          do bj = myByLo(myThid), myByHi(myThid)        do bj = myByLo(myThid), myByHi(myThid)
235          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
236           do K=1,Nr            do K=1,Nr
237            do j = 1,sNy              do j = 1,sNy
238            do i = 1,sNx                do i = 1,sNx
239             dummy(i,j,K,bi,bj) = uVel(i,j,K,bi,bj)*                  dummy(i,j,K,bi,bj) = uVel(i,j,K,bi,bj)*
240       .         0.5*(theta(i,j,K,bi,bj)+theta(i-1,j,K,bi,bj))       &               0.5*(theta(i,j,K,bi,bj)+theta(i-1,j,K,bi,bj))
241       .                                * hFacW(i,j,K,bi,bj)       &               * hFacW(i,j,K,bi,bj)
242            enddo                enddo
243                enddo
244            enddo            enddo
          enddo  
         enddo  
245          enddo          enddo
246          call fill_diagnostics(myThid,'UTHMASS ',0,Nr,0,1,1,dummy)        enddo
247          call fill_diagnostics(myThid,'UTHMASS ',0,Nr,0,1,1,dummy)
248    
249          do bj = myByLo(myThid), myByHi(myThid)        do bj = myByLo(myThid), myByHi(myThid)
250          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
251           do K=1,Nr            do K=1,Nr
252            do j = 1,sNy              do j = 1,sNy
253            do i = 1,sNx                do i = 1,sNx
254             dummy(i,j,K,bi,bj) = vVel(i,j,K,bi,bj)*                  dummy(i,j,K,bi,bj) = vVel(i,j,K,bi,bj)*
255       .         0.5*(theta(i,j,K,bi,bj)+theta(i,j-1,K,bi,bj))       &               0.5*(theta(i,j,K,bi,bj)+theta(i,j-1,K,bi,bj))
256       .                                * hFacS(i,j,K,bi,bj)       &               * hFacS(i,j,K,bi,bj)
257            enddo                enddo
258                enddo
259            enddo            enddo
          enddo  
         enddo  
260          enddo          enddo
261          call fill_diagnostics(myThid,'VTHMASS ',0,Nr,0,1,1,dummy)        enddo
262          call fill_diagnostics(myThid,'VTHMASS ',0,Nr,0,1,1,dummy)
263          do bj = myByLo(myThid), myByHi(myThid)        
264          do bj = myByLo(myThid), myByHi(myThid)
265          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
266           do K=1,Nr            do K=1,Nr
267            do j = 1,sNy              do j = 1,sNy
268            do i = 1,sNx                do i = 1,sNx
269             dummy(i,j,K,bi,bj) = uVel(i,j,K,bi,bj)*                  dummy(i,j,K,bi,bj) = uVel(i,j,K,bi,bj)*
270       .         0.5*(salt(i,j,K,bi,bj)+salt(i-1,j,K,bi,bj))       &               0.5*(salt(i,j,K,bi,bj)+salt(i-1,j,K,bi,bj))
271       .                                * hFacW(i,j,K,bi,bj)       &               * hFacW(i,j,K,bi,bj)
272            enddo                enddo
273                enddo
274            enddo            enddo
          enddo  
275          enddo          enddo
276          enddo        enddo
277          call fill_diagnostics(myThid,'USLTMASS',0,Nr,0,1,1,dummy)        call fill_diagnostics(myThid,'USLTMASS',0,Nr,0,1,1,dummy)
278    
279          do bj = myByLo(myThid), myByHi(myThid)        do bj = myByLo(myThid), myByHi(myThid)
280          do bi = myBxLo(myThid), myBxHi(myThid)          do bi = myBxLo(myThid), myBxHi(myThid)
281           do K=1,Nr            do K=1,Nr
282            do j = 1,sNy              do j = 1,sNy
283            do i = 1,sNx                do i = 1,sNx
284             dummy(i,j,K,bi,bj) = vVel(i,j,K,bi,bj)*                  dummy(i,j,K,bi,bj) = vVel(i,j,K,bi,bj)*
285       .         0.5*(salt(i,j,K,bi,bj)+salt(i,j-1,K,bi,bj))       &               0.5*(salt(i,j,K,bi,bj)+salt(i,j-1,K,bi,bj))
286       .                                * hFacS(i,j,K,bi,bj)       &               * hFacS(i,j,K,bi,bj)
287            enddo                enddo
288                enddo
289            enddo            enddo
          enddo  
         enddo  
290          enddo          enddo
291          call fill_diagnostics(myThid,'VSLTMASS',0,Nr,0,1,1,dummy)        enddo
292          call fill_diagnostics(myThid,'VSLTMASS',0,Nr,0,1,1,dummy)
293          
294          
295  #endif /* ALLOW_DIAGNOSTICS */  #endif /* ALLOW_DIAGNOSTICS */
296          
297        return        return
298        end        end

Legend:
Removed from v.1.10  
changed lines
  Added in v.1.11

  ViewVC Help
Powered by ViewVC 1.1.22