/[MITgcm]/MITgcm/pkg/ecco/cost_drifter.F
ViewVC logotype

Diff of /MITgcm/pkg/ecco/cost_drifter.F

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

revision 1.3 by heimbach, Mon Mar 28 23:49:49 2005 UTC revision 1.4 by jmc, Tue Oct 9 00:02:50 2007 UTC
# Line 1  Line 1 
1  C $Header$  C $Header$
2    C $Name$
3    
4  #include "COST_CPPOPTIONS.h"  #include "COST_CPPOPTIONS.h"
5    
# Line 209  c                 set mask13c=0 in areas Line 210  c                 set mask13c=0 in areas
210    
211           do j = jmin,jmax-1,2           do j = jmin,jmax-1,2
212             do i = i6min,imax-5,6             do i = i6min,imax-5,6
213               masktmp(i,j,bi,bj) =               masktmp(i,j,bi,bj) =
214       &           (mask13c(i,j,bi,bj)+mask13c(i+1,j,bi,bj)       &           (mask13c(i,j,bi,bj)+mask13c(i+1,j,bi,bj)
215       &           +mask13c(i+2,j,bi,bj)+mask13c(i+3,j,bi,bj)       &           +mask13c(i+2,j,bi,bj)+mask13c(i+3,j,bi,bj)
216       &           +mask13c(i+4,j,bi,bj)+mask13c(i+5,j,bi,bj)       &           +mask13c(i+4,j,bi,bj)+mask13c(i+5,j,bi,bj)
# Line 236  c                 set mask13c=0 in areas Line 237  c                 set mask13c=0 in areas
237               endif               endif
238             enddo             enddo
239           enddo           enddo
240                  
241           do j = jmin,jmax-1,2           do j = jmin,jmax-1,2
242             do i = i6min,imax-5,6             do i = i6min,imax-5,6
243               masktmp(i,j,bi,bj) =               masktmp(i,j,bi,bj) =
244       &             (mask13c(i,j,bi,bj)+mask13c(i+1,j,bi,bj)       &             (mask13c(i,j,bi,bj)+mask13c(i+1,j,bi,bj)
245       &             +mask13c(i+2,j,bi,bj)+mask13c(i+3,j,bi,bj)       &             +mask13c(i+2,j,bi,bj)+mask13c(i+3,j,bi,bj)
246       &             +mask13c(i+4,j,bi,bj)+mask13c(i+5,j,bi,bj)       &             +mask13c(i+4,j,bi,bj)+mask13c(i+5,j,bi,bj)
247       &             +mask13c(i,j+1,bi,bj)+mask13c(i+1,j+1,bi,bj)       &             +mask13c(i,j+1,bi,bj)+mask13c(i+1,j+1,bi,bj)
248       &             +mask13c(i+2,j+1,bi,bj)+mask13c(i+3,j+1,bi,bj)       &             +mask13c(i+2,j+1,bi,bj)+mask13c(i+3,j+1,bi,bj)
249       &             +mask13c(i+4,j+1,bi,bj)+mask13c(i+5,j+1,bi,bj))         &             +mask13c(i+4,j+1,bi,bj)+mask13c(i+5,j+1,bi,bj))
250               if ( masktmp(i,j,bi,bj) .eq.0.0 ) then               if ( masktmp(i,j,bi,bj) .eq.0.0 ) then
251                  v6bar(i,j,bi,bj) = 0.0                  v6bar(i,j,bi,bj) = 0.0
252               else               else
# Line 266  c                 set mask13c=0 in areas Line 267  c                 set mask13c=0 in areas
267               endif               endif
268             enddo             enddo
269           enddo           enddo
270                  
271           do j = jmin,jmax-1,2           do j = jmin,jmax-1,2
272             do i = i6min,imax-5, 6             do i = i6min,imax-5, 6
273  c--   change unit from cm/s to m/s  c--   change unit from cm/s to m/s
# Line 285  c                  wvd(i,j,bi,bj) = 1.0 Line 286  c                  wvd(i,j,bi,bj) = 1.0
286             enddo             enddo
287           enddo           enddo
288    
289  CADJ STORE wud(:,:,bi,bj)    CADJ STORE wud(:,:,bi,bj)
290  CADJ &     = tapelev_ini_bibj_k, key=ikey, byte=isbyte  CADJ &     = tapelev_ini_bibj_k, key=ikey, byte=isbyte
291  CADJ STORE wvd(:,:,bi,bj)    CADJ STORE wvd(:,:,bi,bj)
292  CADJ &     = tapelev_ini_bibj_k, key=ikey, byte=isbyte  CADJ &     = tapelev_ini_bibj_k, key=ikey, byte=isbyte
293  CADJ STORE u6bar(:,:,bi,bj)  CADJ STORE u6bar(:,:,bi,bj)
294  CADJ &     = tapelev_ini_bibj_k, key=ikey, byte=isbyte  CADJ &     = tapelev_ini_bibj_k, key=ikey, byte=isbyte
295  CADJ STORE v6bar(:,:,bi,bj)  CADJ STORE v6bar(:,:,bi,bj)
296  CADJ &     = tapelev_ini_bibj_k, key=ikey, byte=isbyte  CADJ &     = tapelev_ini_bibj_k, key=ikey, byte=isbyte
297    
298  c--           Compute model data misfit and cost function term for  c--           Compute model data misfit and cost function term for
299  c             drifters.  c             drifters.
300           do j = jmin,jmax-1,2           do j = jmin,jmax-1,2
301              do i = i6min,imax-5, 6              do i = i6min,imax-5, 6
302                 fctile_drift = fctile_drift                 fctile_drift = fctile_drift
303       &              + (wud(i,j,bi,bj)*cosphi(i,j,bi,bj)*       &              + (wud(i,j,bi,bj)*cosphi(i,j,bi,bj)*
304       &                 mask6c(i,j,bi,bj)*       &                 mask6c(i,j,bi,bj)*
305       &                (u6bar(i,j,bi,bj) - uddat(i,j,bi,bj))*       &                (u6bar(i,j,bi,bj) - uddat(i,j,bi,bj))*
306       &                (u6bar(i,j,bi,bj) - uddat(i,j,bi,bj))   )       &                (u6bar(i,j,bi,bj) - uddat(i,j,bi,bj))   )
307       &              + (wvd(i,j,bi,bj)*cosphi(i,j,bi,bj)*       &              + (wvd(i,j,bi,bj)*cosphi(i,j,bi,bj)*
308       &                 mask6c(i,j,bi,bj)*       &                 mask6c(i,j,bi,bj)*
309       &                (v6bar(i,j,bi,bj) - vddat(i,j,bi,bj))*       &                (v6bar(i,j,bi,bj) - vddat(i,j,bi,bj))*

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

  ViewVC Help
Powered by ViewVC 1.1.22