Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:45:18 UTC

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
4e8a78de50 Jean*0001 #include "CPP_OPTIONS.h"
                0002 
                0003       SUBROUTINE MOM_VI_MASK_VORT3(
                0004      I        bi,bj,k,
                0005      O        hFacZ,r_hFacZ,
                0006      U        vort3,
                0007      I        myThid)
                0008       IMPLICIT NONE
                0009 C
                0010 C     Compute hFactor and recip_hFactor at the corner (Z-point)
                0011 C     and set vort3 to zero where hFac = 0 (apply a mask)
                0012 C
                0013 
                0014 C     == Global variables ==
                0015 #include "SIZE.h"
                0016 #include "GRID.h"
                0017 
                0018 C     == Routine arguments ==
                0019       INTEGER bi,bj,k
                0020       _RS hFacZ(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
                0021       _RS r_hFacZ(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
                0022       _RL vort3(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
                0023       _RS hFacZOpen
                0024       INTEGER myThid
                0025 
                0026 C     == Local variables ==
                0027       INTEGER I,J
                0028 
                0029 C--   Calculate open water fraction at vorticity points
                0030 
                0031 c     DO i=1-Olx,sNx+Olx
                0032 c      hFacZ(i,1-Oly)=0.
                0033 c      r_hFacZ(i,1-Oly)=0.
                0034 c     ENDDO
                0035 
                0036       DO j=2-Oly,sNy+Oly
                0037 c      hFacZ(1-Olx,j)=0.
                0038 c      r_hFacZ(1-Olx,j)=0.
                0039        DO i=2-Olx,sNx+Olx
                0040         hFacZOpen=min(_hFacW(i,j,k,bi,bj),
                0041      &                _hFacW(i,j-1,k,bi,bj))
                0042         hFacZOpen=min(_hFacS(i,j,k,bi,bj),hFacZOpen)
                0043         hFacZOpen=min(_hFacS(i-1,j,k,bi,bj),hFacZOpen)
                0044         hFacZ(i,j)=hFacZOpen
                0045         IF (hFacZ(i,j).EQ.0.) THEN
                0046          r_hFacZ(i,j)=0.
                0047          vort3(i,j)=0.
                0048         ELSE
                0049          r_hFacZ(i,j)=1./hFacZ(i,j)
                0050         ENDIF
                0051        ENDDO
                0052       ENDDO
                0053 
                0054       RETURN
                0055       END