/[MITgcm]/MITgcm_contrib/natl_12/code/mom_v_xviscflux.F
ViewVC logotype

Contents of /MITgcm_contrib/natl_12/code/mom_v_xviscflux.F

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


Revision 1.1 - (show annotations) (download)
Tue Aug 5 21:22:44 2003 UTC (22 years ago) by cnh
Branch: MAIN
Adding set of files for 1/12 Atlantic configuration

1 C $Header: /u/u0/gcmpack/MITgcm/pkg/mom_fluxform/mom_v_xviscflux.F,v 1.3 2001/09/26 19:05:21 adcroft Exp $
2 C $Name: $
3
4 #include "CPP_OPTIONS.h"
5
6 CBOP
7 C !ROUTINE: MOM_V_XVISCFLUX
8
9 C !INTERFACE: ==========================================================
10 SUBROUTINE MOM_V_XVISCFLUX(
11 I bi,bj,k,
12 I vFld, del2v, hFacZ,
13 O xViscFluxV,
14 I myThid)
15
16 C !DESCRIPTION:
17 C Calculates the area integrated zonal viscous fluxes of V:
18 C \begin{equation*}
19 C F^x = - \frac{ \Delta x_u \Delta r_f h_z }{\Delta x_v}
20 C ( A_h \delta_i v - A_4 \delta_i \nabla^2 v )
21 C \end{equation*}
22
23 C !USES: ===============================================================
24 IMPLICIT NONE
25 #include "SIZE.h"
26 #include "EEPARAMS.h"
27 #include "PARAMS.h"
28 #include "GRID.h"
29
30 C !INPUT PARAMETERS: ===================================================
31 C bi,bj :: tile indices
32 C k :: vertical level
33 C vFld :: meridional flow
34 C del2v :: Laplacian of meridional flow
35 C myThid :: thread number
36 INTEGER bi,bj,k
37 _RL vFld(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
38 _RL del2v(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
39 _RS hFacZ(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
40 INTEGER myThid
41
42 C !OUTPUT PARAMETERS: ==================================================
43 C xViscFluxU :: viscous fluxes
44 _RL xViscFluxV(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
45
46 C !LOCAL VARIABLES: ====================================================
47 C i,j :: loop indices
48 INTEGER I,J
49 _RS gridScalingA4
50 CEOP
51
52 C - Laplacian and bi-harmonic terms
53 DO j=1-Oly,sNy+Oly
54 DO i=1-Olx+1,sNx+Olx
55 gridScalingA4 = (_dxV(i,j,bi,bj)**4)/(5000.**4)
56 xViscFluxV(i,j) =
57 & _dyU(i,j,bi,bj)*drF(k)*hFacZ(i,j)
58 & *(
59 & -viscAh*(vFld(i,j)-vFld(i-1,j))
60 & *cosFacV(J,bi,bj)
61 & +viscA4*(del2v(i,j) -del2v(i-1,j) )
62 & *gridScalingA4
63 #ifdef COSINEMETH_III
64 & *sqcosFacV(J,bi,bj)
65 #else
66 & *cosFacV(J,bi,bj)
67 #endif
68 & )*_recip_dxV(i,j,bi,bj)
69 ENDDO
70 ENDDO
71
72 RETURN
73 END

  ViewVC Help
Powered by ViewVC 1.1.22