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

Diff of /MITgcm/pkg/mom_fluxform/mom_fluxform.F

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

revision 1.45 by heimbach, Mon Oct 1 15:46:33 2012 UTC revision 1.46 by jmc, Sun Jul 28 21:04:25 2013 UTC
# Line 26  C stresses as well as internal viscous s Line 26  C stresses as well as internal viscous s
26  CEOI  CEOI
27    
28  #include "MOM_FLUXFORM_OPTIONS.h"  #include "MOM_FLUXFORM_OPTIONS.h"
29    #ifdef ALLOW_MOM_COMMON
30    # include "MOM_COMMON_OPTIONS.h"
31    #endif
32    
33  CBOP  CBOP
34  C !ROUTINE: MOM_FLUXFORM  C !ROUTINE: MOM_FLUXFORM
# Line 47  C !USES: =============================== Line 50  C !USES: ===============================
50  C     == Global variables ==  C     == Global variables ==
51        IMPLICIT NONE        IMPLICIT NONE
52  #include "SIZE.h"  #include "SIZE.h"
 #include "DYNVARS.h"  
 #include "FFIELDS.h"  
53  #include "EEPARAMS.h"  #include "EEPARAMS.h"
54  #include "PARAMS.h"  #include "PARAMS.h"
55  #include "GRID.h"  #include "GRID.h"
56    #include "DYNVARS.h"
57    #include "FFIELDS.h"
58  #include "SURFACE.h"  #include "SURFACE.h"
59    #ifdef ALLOW_MOM_COMMON
60    # include "MOM_VISC.h"
61    #endif
62  #ifdef ALLOW_AUTODIFF_TAMC  #ifdef ALLOW_AUTODIFF_TAMC
63  # include "tamc.h"  # include "tamc.h"
64  # include "tamc_keys.h"  # include "tamc_keys.h"
# Line 159  C     uDudxFac, AhDudxFac, etc ... indiv Line 165  C     uDudxFac, AhDudxFac, etc ... indiv
165        _RL  mtFacV        _RL  mtFacV
166        _RL  mtNHFacV        _RL  mtNHFacV
167        _RL  sideMaskFac        _RL  sideMaskFac
168        LOGICAL bottomDragTerms,harmonic,biharmonic,useVariableViscosity        LOGICAL bottomDragTerms
169  CEOP  CEOP
170  #ifdef MOM_BOUNDARY_CONSERVE  #ifdef MOM_BOUNDARY_CONSERVE
171        COMMON / MOM_FLUXFORM_LOCAL / uBnd, vBnd        COMMON / MOM_FLUXFORM_LOCAL / uBnd, vBnd
# Line 363  C---  Calculate vertical transports (at Line 369  C---  Calculate vertical transports (at
369  #endif /* MOM_BOUNDARY_CONSERVE */  #endif /* MOM_BOUNDARY_CONSERVE */
370    
371        IF (momViscosity) THEN        IF (momViscosity) THEN
372         CALL MOM_CALC_VISC(         CALL MOM_CALC_VISC( bi, bj, k,
373       I        bi,bj,k,       O        viscAh_Z, viscAh_D, viscA4_Z, viscA4_D,
374       O        viscAh_Z,viscAh_D,viscA4_Z,viscA4_D,       I        hDiv, vort3, tension, strain, KE, hFacZ,
375       O        harmonic,biharmonic,useVariableViscosity,       I        myThid )
      I        hDiv,vort3,tension,strain,KE,hFacZ,  
      I        myThid)  
376        ENDIF        ENDIF
377    
378  C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|  C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
# Line 480  C-    endif momAdvection. Line 484  C-    endif momAdvection.
484  C---  Calculate eddy fluxes (dissipation) between cells for zonal flow.  C---  Calculate eddy fluxes (dissipation) between cells for zonal flow.
485    
486  C     Bi-harmonic term del^2 U -> v4F  C     Bi-harmonic term del^2 U -> v4F
487          IF (biharmonic)          IF ( useBiharmonicVisc )
488       &  CALL MOM_U_DEL2U(bi,bj,k,uFld,hFacZ,v4f,myThid)       &  CALL MOM_U_DEL2U(bi,bj,k,uFld,hFacZ,v4f,myThid)
489    
490  C     Laplacian and bi-harmonic terms, Zonal  Fluxes -> fZon  C     Laplacian and bi-harmonic terms, Zonal  Fluxes -> fZon
# Line 529  C     anelastic: hor.visc.fluxes are not Line 533  C     anelastic: hor.visc.fluxes are not
533  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
534          IF (no_slip_sides) THEN          IF (no_slip_sides) THEN
535  C-     No-slip BCs impose a drag at walls...  C-     No-slip BCs impose a drag at walls...
536           CALL MOM_U_SIDEDRAG(           CALL MOM_U_SIDEDRAG( bi, bj, k,
      I        bi,bj,k,  
537       I        uFld, v4f, hFacZ,       I        uFld, v4f, hFacZ,
538       I        viscAh_Z,viscA4_Z,       I        viscAh_Z, viscA4_Z,
539       I        harmonic,biharmonic,useVariableViscosity,       I        useHarmonicVisc, useBiharmonicVisc, useVariableVisc,
540       O        vF,       O        vF,
541       I        myThid)       I        myThid )
542           DO j=jMin,jMax           DO j=jMin,jMax
543            DO i=iMin,iMax            DO i=iMin,iMax
544             gUdiss(i,j) = gUdiss(i,j) + vF(i,j)             gUdiss(i,j) = gUdiss(i,j) + vF(i,j)
# Line 706  C-    endif momAdvection. Line 709  C-    endif momAdvection.
709        IF (momViscosity) THEN        IF (momViscosity) THEN
710  C---  Calculate eddy fluxes (dissipation) between cells for meridional flow.  C---  Calculate eddy fluxes (dissipation) between cells for meridional flow.
711  C     Bi-harmonic term del^2 V -> v4F  C     Bi-harmonic term del^2 V -> v4F
712          IF (biharmonic)          IF ( useBiharmonicVisc )
713       &  CALL MOM_V_DEL2V(bi,bj,k,vFld,hFacZ,v4f,myThid)       &  CALL MOM_V_DEL2V(bi,bj,k,vFld,hFacZ,v4f,myThid)
714    
715  C     Laplacian and bi-harmonic terms, Zonal  Fluxes -> fZon  C     Laplacian and bi-harmonic terms, Zonal  Fluxes -> fZon
# Line 755  C     anelastic: hor.visc.fluxes are not Line 758  C     anelastic: hor.visc.fluxes are not
758  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
759          IF (no_slip_sides) THEN          IF (no_slip_sides) THEN
760  C-     No-slip BCs impose a drag at walls...  C-     No-slip BCs impose a drag at walls...
761           CALL MOM_V_SIDEDRAG(           CALL MOM_V_SIDEDRAG( bi, bj, k,
      I        bi,bj,k,  
762       I        vFld, v4f, hFacZ,       I        vFld, v4f, hFacZ,
763       I        viscAh_Z,viscA4_Z,       I        viscAh_Z,viscA4_Z,
764       I        harmonic,biharmonic,useVariableViscosity,       I        useHarmonicVisc, useBiharmonicVisc, useVariableVisc,
765       O        vF,       O        vF,
766       I        myThid)       I        myThid )
767           DO j=jMin,jMax           DO j=jMin,jMax
768            DO i=iMin,iMax            DO i=iMin,iMax
769             gvDiss(i,j) = gvDiss(i,j) + vF(i,j)             gvDiss(i,j) = gvDiss(i,j) + vF(i,j)

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

  ViewVC Help
Powered by ViewVC 1.1.22