/[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.68 by heimbach, Mon Oct 1 15:46:33 2012 UTC revision 1.69 by jmc, Sun Jul 28 21:04:25 2013 UTC
# Line 2  C $Header$ Line 2  C $Header$
2  C $Name$  C $Name$
3    
4  #include "MOM_VECINV_OPTIONS.h"  #include "MOM_VECINV_OPTIONS.h"
5    #ifdef ALLOW_MOM_COMMON
6    # include "MOM_COMMON_OPTIONS.h"
7    #endif
8    
9        SUBROUTINE MOM_VECINV(        SUBROUTINE MOM_VECINV(
10       I        bi,bj,k,iMin,iMax,jMin,jMax,       I        bi,bj,k,iMin,iMax,jMin,jMax,
# Line 29  C     *================================= Line 32  C     *=================================
32    
33  C     == Global variables ==  C     == Global variables ==
34  #include "SIZE.h"  #include "SIZE.h"
 #include "DYNVARS.h"  
35  #include "EEPARAMS.h"  #include "EEPARAMS.h"
36  #include "PARAMS.h"  #include "PARAMS.h"
 #ifdef ALLOW_MNC  
 #include "MNC_PARAMS.h"  
 #endif  
37  #include "GRID.h"  #include "GRID.h"
38    #include "DYNVARS.h"
39    #ifdef ALLOW_MOM_COMMON
40    # include "MOM_VISC.h"
41    #endif
42  #ifdef ALLOW_TIMEAVE  #ifdef ALLOW_TIMEAVE
43  #include "TIMEAVE_STATV.h"  # include "TIMEAVE_STATV.h"
44    #endif
45    #ifdef ALLOW_MNC
46    # include "MNC_PARAMS.h"
47  #endif  #endif
48  #ifdef ALLOW_AUTODIFF_TAMC  #ifdef ALLOW_AUTODIFF_TAMC
49  # include "tamc.h"  # include "tamc.h"
# Line 111  C     xxxFac :: On-off tracer parameters Line 117  C     xxxFac :: On-off tracer parameters
117        _RL  sideMaskFac        _RL  sideMaskFac
118        LOGICAL bottomDragTerms        LOGICAL bottomDragTerms
119        LOGICAL writeDiag        LOGICAL writeDiag
       LOGICAL harmonic,biharmonic,useVariableViscosity  
120  #ifdef ALLOW_AUTODIFF_TAMC  #ifdef ALLOW_AUTODIFF_TAMC
121        INTEGER imomkey        INTEGER imomkey
122  #endif  #endif
# Line 268  C-     account for no-slip / free-slip B Line 273  C-     account for no-slip / free-slip B
273         ENDDO         ENDDO
274    
275  C--    Calculate Viscosities  C--    Calculate Viscosities
276         CALL MOM_CALC_VISC(         CALL MOM_CALC_VISC( bi, bj, k,
277       I        bi,bj,k,       O        viscAh_Z, viscAh_D, viscA4_Z, viscA4_D,
278       O        viscAh_Z,viscAh_D,viscA4_Z,viscA4_D,       I        hDiv, vort3, tension, strain, KE, hfacZ,
279       O        harmonic,biharmonic,useVariableViscosity,       I        myThid )
      I        hDiv,vort3,tension,strain,KE,hfacZ,  
      I        myThid)  
280    
281  C      Calculate del^2 u and del^2 v for bi-harmonic term  C      Calculate del^2 u and del^2 v for bi-harmonic term
282         IF (biharmonic) THEN         IF (useBiharmonicVisc) THEN
283           CALL MOM_VI_DEL2UV(bi,bj,k,hDiv,vort3,hFacZ,           CALL MOM_VI_DEL2UV(bi,bj,k,hDiv,vort3,hFacZ,
284       O                      del2u,del2v,       O                      del2u,del2v,
285       &                      myThid)       &                      myThid)
# Line 323  C        mask strain as if free-slip sin Line 326  C        mask strain as if free-slip sin
326              IF ( hFacZ(i,j).EQ.0. ) strain(i,j) = 0. _d 0              IF ( hFacZ(i,j).EQ.0. ) strain(i,j) = 0. _d 0
327            ENDDO            ENDDO
328           ENDDO           ENDDO
329           CALL MOM_HDISSIP(bi,bj,k,hDiv,vort3,tension,strain,KE,           CALL MOM_HDISSIP( bi, bj, k,
330       I                    hFacZ,       I            hDiv, vort3, tension, strain, KE, hFacZ,
331       I                    viscAh_Z,viscAh_D,viscA4_Z,viscA4_D,       I            viscAh_Z, viscAh_D, viscA4_Z, viscA4_D,
332       I                    harmonic,biharmonic,useVariableViscosity,       I            useHarmonicVisc, useBiharmonicVisc, useVariableVisc,
333       O                    guDiss,gvDiss,       O            guDiss, gvDiss,
334       I                    myThid)       I            myThid )
335         ELSE         ELSE
336  C      in terms of vorticity and divergence  C      in terms of vorticity and divergence
337           CALL MOM_VI_HDISSIP(bi,bj,k,hDiv,vort3,tension,strain,KE,           CALL MOM_VI_HDISSIP( bi, bj, k,
338       I                       hFacZ,dStar,zStar,       I            hDiv, vort3, tension, strain, KE, hFacZ,dStar,zStar,
339       I                       viscAh_Z,viscAh_D,viscA4_Z,viscA4_D,       I            viscAh_Z, viscAh_D, viscA4_Z, viscA4_D,
340       I                       harmonic,biharmonic,useVariableViscosity,       I            useHarmonicVisc, useBiharmonicVisc, useVariableVisc,
341       O                       guDiss,gvDiss,       O            guDiss, gvDiss,
342       &                       myThid)       &            myThid )
343         ENDIF         ENDIF
344  C--   if (momViscosity) end of block.  C--   if (momViscosity) end of block.
345        ENDIF        ENDIF
# Line 373  C--   Tendency is minus divergence of th Line 376  C--   Tendency is minus divergence of th
376  C-- No-slip and drag BCs appear as body forces in cell abutting topography  C-- No-slip and drag BCs appear as body forces in cell abutting topography
377        IF (momViscosity.AND.no_slip_sides) THEN        IF (momViscosity.AND.no_slip_sides) THEN
378  C-     No-slip BCs impose a drag at walls...  C-     No-slip BCs impose a drag at walls...
379         CALL MOM_U_SIDEDRAG(         CALL MOM_U_SIDEDRAG( bi, bj, k,
380       I        bi,bj,k,       I          uFld, del2u, hFacZ,
381       I        uFld, del2u, hFacZ,       I          viscAh_Z, viscA4_Z,
382       I        viscAh_Z,viscA4_Z,       I          useHarmonicVisc, useBiharmonicVisc, useVariableVisc,
383       I        harmonic,biharmonic,useVariableViscosity,       O          vF,
384       O        vF,       I          myThid )
      I        myThid)  
385         DO j=jMin,jMax         DO j=jMin,jMax
386          DO i=iMin,iMax          DO i=iMin,iMax
387           guDiss(i,j) = guDiss(i,j)+vF(i,j)           guDiss(i,j) = guDiss(i,j)+vF(i,j)
# Line 436  C--   Tendency is minus divergence of th Line 438  C--   Tendency is minus divergence of th
438  C-- No-slip and drag BCs appear as body forces in cell abutting topography  C-- No-slip and drag BCs appear as body forces in cell abutting topography
439        IF (momViscosity.AND.no_slip_sides) THEN        IF (momViscosity.AND.no_slip_sides) THEN
440  C-     No-slip BCs impose a drag at walls...  C-     No-slip BCs impose a drag at walls...
441         CALL MOM_V_SIDEDRAG(         CALL MOM_V_SIDEDRAG( bi, bj, k,
442       I        bi,bj,k,       I          vFld, del2v, hFacZ,
443       I        vFld, del2v, hFacZ,       I          viscAh_Z, viscA4_Z,
444       I        viscAh_Z,viscA4_Z,       I          useHarmonicVisc, useBiharmonicVisc, useVariableVisc,
445       I        harmonic,biharmonic,useVariableViscosity,       O          vF,
446       O        vF,       I          myThid )
      I        myThid)  
447         DO j=jMin,jMax         DO j=jMin,jMax
448          DO i=iMin,iMax          DO i=iMin,iMax
449           gvDiss(i,j) = gvDiss(i,j)+vF(i,j)           gvDiss(i,j) = gvDiss(i,j)+vF(i,j)

Legend:
Removed from v.1.68  
changed lines
  Added in v.1.69

  ViewVC Help
Powered by ViewVC 1.1.22