Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:42:14 UTC

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
6d54cf9ca1 Ed H*0001 #include "MOM_FLUXFORM_OPTIONS.h"
aea29c8517 Alis*0002 
71207ba845 Alis*0003 CBOP
                0004 C !ROUTINE: MOM_V_ADV_UV
                0005 
                0006 C !INTERFACE: ==========================================================
aea29c8517 Alis*0007       SUBROUTINE MOM_V_ADV_UV(
                0008      I        bi,bj,k,
                0009      I        uTrans, vFld,
                0010      O        AdvectFluxUV,
                0011      I        myThid)
                0012 
71207ba845 Alis*0013 C !DESCRIPTION:
                0014 C Calculates the zonal advective flux of meridional momentum:
                0015 C \begin{equation*}
                0016 C F^x = \overline{U}^j \overline{v}^{i}
                0017 C \end{equation*}
                0018 
                0019 C !USES: ===============================================================
                0020       IMPLICIT NONE
aea29c8517 Alis*0021 #include "SIZE.h"
                0022 #include "EEPARAMS.h"
                0023 #include "PARAMS.h"
                0024 #include "GRID.h"
                0025 
71207ba845 Alis*0026 C !INPUT PARAMETERS: ===================================================
                0027 C  bi,bj                :: tile indices
                0028 C  k                    :: vertical level
                0029 C  uTrans               :: zonal transport
                0030 C  vFld                 :: meridional flow
                0031 C  myThid               :: thread number
aea29c8517 Alis*0032       INTEGER bi,bj,k
                0033       _RL uTrans(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
                0034       _RL vFld(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
                0035       INTEGER myThid
71207ba845 Alis*0036 C !OUTPUT PARAMETERS: ==================================================
                0037 C  AdvectFluxUV         :: advective flux
                0038       _RL AdvectFluxUV(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
aea29c8517 Alis*0039 
71207ba845 Alis*0040 C !LOCAL VARIABLES: ====================================================
                0041 C  i,j                  :: loop indices
229b6d70e7 Jean*0042       INTEGER i,j
71207ba845 Alis*0043 CEOP
aea29c8517 Alis*0044 
                0045       DO j=1-Oly+1,sNy+Oly
                0046        DO i=1-Olx+1,sNx+Olx
                0047         AdvectFluxUV(i,j) =
                0048      &  0.25*( uTrans(i,j) + uTrans(i,j-1) )
229b6d70e7 Jean*0049 #ifdef MOM_BOUNDARY_CONSERVE
                0050      &      *(   vFld(i,j)*_maskS(i-1,j,k,bi,bj)
                0051      &         + vFld(i-1,j)*_maskS(i,j,k,bi,bj) )
                0052 #else
aea29c8517 Alis*0053      &      *(   vFld(i,j) +   vFld(i-1,j) )
229b6d70e7 Jean*0054 #endif
aea29c8517 Alis*0055 #ifdef OLD_ADV_BCS
                0056      &      *_maskS(i,j,k,bi,bj)
                0057      &      *_maskS(i-1,j,k,bi,bj)
                0058 #endif /* OLD_ADV_BCS */
                0059        ENDDO
                0060       ENDDO
                0061 
                0062       RETURN
                0063       END