/[MITgcm]/MITgcm/verification/aim.5l_cs/code/mom_vecinv.F
ViewVC logotype

Diff of /MITgcm/verification/aim.5l_cs/code/mom_vecinv.F

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

revision 1.2 by jmc, Sat Feb 8 02:20:25 2003 UTC revision 1.3 by jmc, Fri Apr 11 13:42:41 2003 UTC
# Line 264  C      or in terms of tension and strain Line 264  C      or in terms of tension and strain
264         ENDIF         ENDIF
265        ENDIF        ENDIF
266    
 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|  
 c     include 'mom_vecinv.inc'  
 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|  
   
267  C---- Zonal momentum equation starts here  C---- Zonal momentum equation starts here
268    
269  C--   Vertical flux (fVer is at upper face of "u" cell)  C--   Vertical flux (fVer is at upper face of "u" cell)
# Line 333  c       ENDDO Line 329  c       ENDDO
329  c      ENDDO  c      ENDDO
330  c     ENDIF  c     ENDIF
331    
 C--   Set du/dt on boundaries to zero  
       DO j=jMin,jMax  
        DO i=iMin,iMax  
         gU(i,j,k,bi,bj) = gU(i,j,k,bi,bj)*_maskW(i,j,k,bi,bj)  
        ENDDO  
       ENDDO  
   
332    
333  C---- Meridional momentum equation starts here  C---- Meridional momentum equation starts here
334    
# Line 406  c       ENDDO Line 395  c       ENDDO
395  c      ENDDO  c      ENDDO
396  c     ENDIF  c     ENDIF
397    
 C--   Set dv/dt on boundaries to zero  
       DO j=jMin,jMax  
        DO i=iMin,iMax  
         gV(i,j,k,bi,bj) = gV(i,j,k,bi,bj)*_maskS(i,j,k,bi,bj)  
        ENDDO  
       ENDDO  
   
398  C--   Horizontal Coriolis terms  C--   Horizontal Coriolis terms
399        CALL MOM_VI_MASK_VORT3(bi,bj,k,hFacZ,r_hFacZ,vort3,myThid)        CALL MOM_VI_MASK_VORT3(bi,bj,k,hFacZ,r_hFacZ,vort3,myThid)
400  c     CALL MOM_VI_CALC_ABSVORT3(bi,bj,k,vort3,omega3,myThid)  c     CALL MOM_VI_CALC_ABSVORT3(bi,bj,k,vort3,omega3,myThid)
401        CALL MOM_VI_CORIOLIS(bi,bj,k,uFld,vFld,omega3,hFacZ,r_hFacZ,        IF (useCoriolis) THEN
402       &                     uCf,vCf,myThid)         CALL MOM_VI_CORIOLIS(bi,bj,k,uFld,vFld,omega3,hFacZ,r_hFacZ,
403        DO j=jMin,jMax       &                      uCf,vCf,myThid)
404         DO i=iMin,iMax         DO j=jMin,jMax
405          gU(i,j,k,bi,bj) = (gU(i,j,k,bi,bj)+uCf(i,j))          DO i=iMin,iMax
406       &                    *_maskW(i,j,k,bi,bj)           gU(i,j,k,bi,bj) = gU(i,j,k,bi,bj)+uCf(i,j)
407          gV(i,j,k,bi,bj) = (gV(i,j,k,bi,bj)+vCf(i,j))           gV(i,j,k,bi,bj) = gV(i,j,k,bi,bj)+vCf(i,j)
408       &                    *_maskS(i,j,k,bi,bj)          ENDDO
409         ENDDO         ENDDO
410        ENDDO        ENDIF
411  c     CALL MOM_VI_U_CORIOLIS(bi,bj,K,vFld,omega3,r_hFacZ,uCf,myThid)  
412        CALL MOM_VI_U_CORIOLIS(bi,bj,K,vFld,vort3,hFacZ,r_hFacZ,        IF (momAdvection) THEN
413       &                       uCf,myThid)  C--   Horizontal advection of relative vorticity
414  c     CALL MOM_VI_U_CORIOLIS_C4(bi,bj,K,vFld,vort3,r_hFacZ,uCf,myThid)  c      CALL MOM_VI_U_CORIOLIS(bi,bj,K,vFld,omega3,r_hFacZ,uCf,myThid)
415        DO j=jMin,jMax         CALL MOM_VI_U_CORIOLIS(bi,bj,K,vFld,vort3,hFacZ,r_hFacZ,
416         DO i=iMin,iMax       &                        uCf,myThid)
417          gU(i,j,k,bi,bj) = (gU(i,j,k,bi,bj)+uCf(i,j))  c      CALL MOM_VI_U_CORIOLIS_C4(bi,bj,K,vFld,vort3,r_hFacZ,uCf,myThid)
418       &                    *_maskW(i,j,k,bi,bj)         DO j=jMin,jMax
419            DO i=iMin,iMax
420             gU(i,j,k,bi,bj) = gU(i,j,k,bi,bj)+uCf(i,j)
421            ENDDO
422         ENDDO         ENDDO
423        ENDDO  c      CALL MOM_VI_V_CORIOLIS(bi,bj,K,uFld,omega3,r_hFacZ,vCf,myThid)
424  c     CALL MOM_VI_V_CORIOLIS(bi,bj,K,uFld,omega3,r_hFacZ,vCf,myThid)         CALL MOM_VI_V_CORIOLIS(bi,bj,K,uFld,vort3,hFacZ,r_hFacZ,
       CALL MOM_VI_V_CORIOLIS(bi,bj,K,uFld,vort3,hFacZ,r_hFacZ,  
425       &                       vCf,myThid)       &                       vCf,myThid)
426  c     CALL MOM_VI_V_CORIOLIS_C4(bi,bj,K,uFld,vort3,r_hFacZ,vCf,myThid)  c      CALL MOM_VI_V_CORIOLIS_C4(bi,bj,K,uFld,vort3,r_hFacZ,vCf,myThid)
427        DO j=jMin,jMax         DO j=jMin,jMax
428         DO i=iMin,iMax          DO i=iMin,iMax
429          gV(i,j,k,bi,bj) = (gV(i,j,k,bi,bj)+vCf(i,j))           gV(i,j,k,bi,bj) = gV(i,j,k,bi,bj)+vCf(i,j)
430       &                    *_maskS(i,j,k,bi,bj)          ENDDO
431         ENDDO         ENDDO
       ENDDO  
432    
433        IF (momAdvection) THEN  C--   Vertical shear terms (-w*du/dr & -w*dv/dr)
434  C--   Vertical shear terms (Coriolis)         CALL MOM_VI_U_VERTSHEAR(bi,bj,K,uVel,wVel,uCf,myThid)
435        CALL MOM_VI_U_VERTSHEAR(bi,bj,K,uVel,wVel,uCf,myThid)         DO j=jMin,jMax
436        DO j=jMin,jMax          DO i=iMin,iMax
437         DO i=iMin,iMax           gU(i,j,k,bi,bj) = gU(i,j,k,bi,bj)+uCf(i,j)
438          gU(i,j,k,bi,bj) = (gU(i,j,k,bi,bj)+uCf(i,j))          ENDDO
      &                    *_maskW(i,j,k,bi,bj)  
439         ENDDO         ENDDO
440        ENDDO         CALL MOM_VI_V_VERTSHEAR(bi,bj,K,vVel,wVel,vCf,myThid)
441        CALL MOM_VI_V_VERTSHEAR(bi,bj,K,vVel,wVel,vCf,myThid)         DO j=jMin,jMax
442        DO j=jMin,jMax          DO i=iMin,iMax
443         DO i=iMin,iMax           gV(i,j,k,bi,bj) = gV(i,j,k,bi,bj)+vCf(i,j)
444          gV(i,j,k,bi,bj) = (gV(i,j,k,bi,bj)+vCf(i,j))          ENDDO
      &                    *_maskS(i,j,k,bi,bj)  
445         ENDDO         ENDDO
       ENDDO  
446    
447  C--   Bernoulli term  C--   Bernoulli term
448        CALL MOM_VI_U_GRAD_KE(bi,bj,K,KE,uCf,myThid)         CALL MOM_VI_U_GRAD_KE(bi,bj,K,KE,uCf,myThid)
449        DO j=jMin,jMax         DO j=jMin,jMax
450         DO i=iMin,iMax          DO i=iMin,iMax
451          gU(i,j,k,bi,bj) = (gU(i,j,k,bi,bj)+uCf(i,j))           gU(i,j,k,bi,bj) = gU(i,j,k,bi,bj)+uCf(i,j)
452       &                    *_maskW(i,j,k,bi,bj)          ENDDO
453         ENDDO         ENDDO
454        ENDDO         CALL MOM_VI_V_GRAD_KE(bi,bj,K,KE,vCf,myThid)
455        CALL MOM_VI_V_GRAD_KE(bi,bj,K,KE,vCf,myThid)         DO j=jMin,jMax
456            DO i=iMin,iMax
457             gV(i,j,k,bi,bj) = gV(i,j,k,bi,bj)+vCf(i,j)
458            ENDDO
459           ENDDO
460    C--   end if momAdvection
461          ENDIF
462    
463    C--   Set du/dt & dv/dt on boundaries to zero
464        DO j=jMin,jMax        DO j=jMin,jMax
465         DO i=iMin,iMax         DO i=iMin,iMax
466          gV(i,j,k,bi,bj) = (gV(i,j,k,bi,bj)+vCf(i,j))          gU(i,j,k,bi,bj) = gU(i,j,k,bi,bj)*_maskW(i,j,k,bi,bj)
467       &                    *_maskS(i,j,k,bi,bj)          gV(i,j,k,bi,bj) = gV(i,j,k,bi,bj)*_maskS(i,j,k,bi,bj)
468         ENDDO         ENDDO
469        ENDDO        ENDDO
470        ENDIF  
471    
472        IF (        IF (
473       &  DIFFERENT_MULTIPLE(diagFreq,myCurrentTime,       &  DIFFERENT_MULTIPLE(diagFreq,myCurrentTime,
# Line 492  C--   Bernoulli term Line 480  C--   Bernoulli term
480         CALL WRITE_LOCAL_RL('Du','I10',1,uDiss,bi,bj,k,myIter,myThid)         CALL WRITE_LOCAL_RL('Du','I10',1,uDiss,bi,bj,k,myIter,myThid)
481         CALL WRITE_LOCAL_RL('Dv','I10',1,vDiss,bi,bj,k,myIter,myThid)         CALL WRITE_LOCAL_RL('Dv','I10',1,vDiss,bi,bj,k,myIter,myThid)
482         CALL WRITE_LOCAL_RL('Z3','I10',1,vort3,bi,bj,k,myIter,myThid)         CALL WRITE_LOCAL_RL('Z3','I10',1,vort3,bi,bj,k,myIter,myThid)
483         CALL WRITE_LOCAL_RL('W3','I10',1,omega3,bi,bj,k,myIter,myThid)  c      CALL WRITE_LOCAL_RL('W3','I10',1,omega3,bi,bj,k,myIter,myThid)
484         CALL WRITE_LOCAL_RL('KE','I10',1,KE,bi,bj,k,myIter,myThid)         CALL WRITE_LOCAL_RL('KE','I10',1,KE,bi,bj,k,myIter,myThid)
485         CALL WRITE_LOCAL_RL('D','I10',1,hdiv,bi,bj,k,myIter,myThid)         CALL WRITE_LOCAL_RL('D','I10',1,hdiv,bi,bj,k,myIter,myThid)
486        ENDIF        ENDIF

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

  ViewVC Help
Powered by ViewVC 1.1.22