/[MITgcm]/MITgcm/pkg/mom_vecinv/mom_vecinv.F
ViewVC logotype

Diff of /MITgcm/pkg/mom_vecinv/mom_vecinv.F

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

revision 1.45 by jmc, Wed Aug 24 23:16:05 2005 UTC revision 1.46 by jmc, Sun Sep 4 19:29:03 2005 UTC
# Line 208  C      Calculate del^2 u and del^2 v for Line 208  C      Calculate del^2 u and del^2 v for
208         ENDIF         ENDIF
209  C      Calculate dissipation terms for U and V equations  C      Calculate dissipation terms for U and V equations
210  C      in terms of vorticity and divergence  C      in terms of vorticity and divergence
211         IF (    viscAhD.NE.0. .OR. viscAhZ.NE.0.         IF (    viscAhD.NE.0. .OR. viscAhZ.NE.0.
212       &    .OR. viscA4D.NE.0. .OR. viscA4Z.NE.0.       &    .OR. viscA4D.NE.0. .OR. viscA4Z.NE.0.
213       &    .OR. viscAhGrid.NE.0. .OR. viscA4Grid.NE.0.       &    .OR. viscAhGrid.NE.0. .OR. viscA4Grid.NE.0.
214       &    .OR. viscC2leith.NE.0. .OR. viscC4leith.NE.0.       &    .OR. viscC2leith.NE.0. .OR. viscC4leith.NE.0.
# Line 360  C--   Horizontal Coriolis terms Line 360  C--   Horizontal Coriolis terms
360  c     IF (useCoriolis .AND. .NOT.useCDscheme  c     IF (useCoriolis .AND. .NOT.useCDscheme
361  c    &    .AND. .NOT. useAbsVorticity) THEN  c    &    .AND. .NOT. useAbsVorticity) THEN
362  C- jmc: change it to keep the Coriolis terms when useAbsVorticity=T & momAdvection=F  C- jmc: change it to keep the Coriolis terms when useAbsVorticity=T & momAdvection=F
363        IF ( useCoriolis .AND.        IF ( useCoriolis .AND.
364       &     .NOT.( useCDscheme .OR. useAbsVorticity.AND.momAdvection )       &     .NOT.( useCDscheme .OR. useAbsVorticity.AND.momAdvection )
365       &   ) THEN       &   ) THEN
366         IF (useAbsVorticity) THEN         IF (useAbsVorticity) THEN
# Line 378  C- jmc: change it to keep the Coriolis t Line 378  C- jmc: change it to keep the Coriolis t
378           gV(i,j,k,bi,bj) = vCf(i,j)           gV(i,j,k,bi,bj) = vCf(i,j)
379          ENDDO          ENDDO
380         ENDDO         ENDDO
381    
382         IF ( writeDiag ) THEN         IF ( writeDiag ) THEN
383           IF (snapshot_mdsio) THEN           IF (snapshot_mdsio) THEN
384             CALL WRITE_LOCAL_RL('fV','I10',1,uCf,bi,bj,k,myIter,myThid)             CALL WRITE_LOCAL_RL('fV','I10',1,uCf,bi,bj,k,myIter,myThid)
# Line 392  C- jmc: change it to keep the Coriolis t Line 393  C- jmc: change it to keep the Coriolis t
393           ENDIF           ENDIF
394  #endif /*  ALLOW_MNC  */  #endif /*  ALLOW_MNC  */
395         ENDIF         ENDIF
396    #ifdef ALLOW_DIAGNOSTICS
397           IF ( useDiagnostics ) THEN
398             CALL DIAGNOSTICS_FILL(uCf,'Um_Cori ',k,1,2,bi,bj,myThid)
399             CALL DIAGNOSTICS_FILL(vCf,'Vm_Cori ',k,1,2,bi,bj,myThid)
400           ENDIF
401    #endif /* ALLOW_DIAGNOSTICS */
402    
403        ELSE        ELSE
404         DO j=jMin,jMax         DO j=jMin,jMax
405          DO i=iMin,iMax          DO i=iMin,iMax
# Line 463  C--   Horizontal advection of relative ( Line 471  C--   Horizontal advection of relative (
471       &                           Nr, k, bi, bj, myThid)       &                           Nr, k, bi, bj, myThid)
472         ENDIF         ENDIF
473  #endif /* ALLOW_TIMEAVE */  #endif /* ALLOW_TIMEAVE */
474    #ifdef ALLOW_DIAGNOSTICS
475           IF ( useDiagnostics ) THEN
476             CALL DIAGNOSTICS_FILL(uCf,'Um_AdvZ3',k,1,2,bi,bj,myThid)
477             CALL DIAGNOSTICS_FILL(vCf,'Vm_AdvZ3',k,1,2,bi,bj,myThid)
478           ENDIF
479    #endif /* ALLOW_DIAGNOSTICS */
480    
481  C--   Vertical shear terms (-w*du/dr & -w*dv/dr)  C--   Vertical shear terms (-w*du/dr & -w*dv/dr)
482         IF ( .NOT. momImplVertAdv ) THEN         IF ( .NOT. momImplVertAdv ) THEN
# Line 478  C--   Vertical shear terms (-w*du/dr & - Line 492  C--   Vertical shear terms (-w*du/dr & -
492            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)
493           ENDDO           ENDDO
494          ENDDO          ENDDO
495    #ifdef ALLOW_DIAGNOSTICS
496            IF ( useDiagnostics ) THEN
497             CALL DIAGNOSTICS_FILL(uCf,'Um_AdvRe',k,1,2,bi,bj,myThid)
498             CALL DIAGNOSTICS_FILL(vCf,'Vm_AdvRe',k,1,2,bi,bj,myThid)
499            ENDIF
500    #endif /* ALLOW_DIAGNOSTICS */
501         ENDIF         ENDIF
502    
503  C--   Bernoulli term  C--   Bernoulli term
# Line 539  C--   Set du/dt & dv/dt on boundaries to Line 559  C--   Set du/dt & dv/dt on boundaries to
559            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)
560            CALL WRITE_LOCAL_RL('W3','I10',1,omega3,bi,bj,k,myIter,myThid)            CALL WRITE_LOCAL_RL('W3','I10',1,omega3,bi,bj,k,myIter,myThid)
561            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)
562            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)
563          ENDIF          ENDIF
564  #ifdef ALLOW_MNC  #ifdef ALLOW_MNC
565          IF (useMNC .AND. snapshot_mnc) THEN          IF (useMNC .AND. snapshot_mnc) THEN
# Line 557  C--   Set du/dt & dv/dt on boundaries to Line 577  C--   Set du/dt & dv/dt on boundaries to
577       &          offsets, myThid)       &          offsets, myThid)
578            CALL MNC_CW_RL_W_OFFSET('D','mom_vi',bi,bj,'KE',KE,            CALL MNC_CW_RL_W_OFFSET('D','mom_vi',bi,bj,'KE',KE,
579       &          offsets, myThid)       &          offsets, myThid)
580            CALL MNC_CW_RL_W_OFFSET('D','mom_vi',bi,bj,'D', hdiv,            CALL MNC_CW_RL_W_OFFSET('D','mom_vi',bi,bj,'D', hDiv,
581       &          offsets, myThid)       &          offsets, myThid)
582          ENDIF          ENDIF
583  #endif /*  ALLOW_MNC  */  #endif /*  ALLOW_MNC  */
584        ENDIF        ENDIF
585    
586    #ifdef ALLOW_DIAGNOSTICS
587          IF ( useDiagnostics ) THEN
588            CALL DIAGNOSTICS_FILL(KE,    'momKE   ',k,1,2,bi,bj,myThid)
589            CALL DIAGNOSTICS_FILL(hDiv,  'momHDiv ',k,1,2,bi,bj,myThid)
590            CALL DIAGNOSTICS_FILL(vort3, 'momVort3',k,1,2,bi,bj,myThid)
591            CALL DIAGNOSTICS_FILL(gU(1-Olx,1-Oly,k,bi,bj),
592         &                               'Um_Advec',k,1,2,bi,bj,myThid)
593            CALL DIAGNOSTICS_FILL(gV(1-Olx,1-Oly,k,bi,bj),
594         &                               'Vm_Advec',k,1,2,bi,bj,myThid)
595           IF (momViscosity) THEN
596            CALL DIAGNOSTICS_FILL(guDiss,'Um_Diss ',k,1,2,bi,bj,myThid)
597            CALL DIAGNOSTICS_FILL(gvDiss,'Vm_Diss ',k,1,2,bi,bj,myThid)
598           ENDIF
599          ENDIF
600    #endif /* ALLOW_DIAGNOSTICS */
601    
602  #endif /* ALLOW_MOM_VECINV */  #endif /* ALLOW_MOM_VECINV */
603    
604        RETURN        RETURN

Legend:
Removed from v.1.45  
changed lines
  Added in v.1.46

  ViewVC Help
Powered by ViewVC 1.1.22