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

Contents of /MITgcm/pkg/mom_fluxform/mom_u_xviscflux.F

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


Revision 1.5 - (show annotations) (download)
Fri Sep 16 20:57:09 2005 UTC (18 years, 8 months ago) by baylor
Branch: MAIN
CVS Tags: checkpoint57s_post
Changes since 1.4: +8 -3 lines
Add variable viscosity calculators to mom_fluxform.  Now should be able to use
Smagorinsky, Leith, etc. with fluxform.

1 C $Header: /u/gcmpack/MITgcm/pkg/mom_fluxform/mom_u_xviscflux.F,v 1.4 2003/10/09 04:19:20 edhill Exp $
2 C $Name: $
3
4 #include "MOM_FLUXFORM_OPTIONS.h"
5
6 CBOP
7 C !ROUTINE: MOM_U_XVISCFLUX
8
9 C !INTERFACE: ==========================================================
10 SUBROUTINE MOM_U_XVISCFLUX(
11 I bi,bj,k,
12 I uFld, del2u,
13 O xViscFluxU,
14 I viscAh_Z,viscAh_D,viscA4_Z,viscA4_D,
15 I myThid)
16
17 C !DESCRIPTION:
18 C Calculates the area integrated zonal viscous fluxes of U:
19 C \begin{equation*}
20 C F^x = - \frac{ \Delta y_f \Delta r_f h_c }{\Delta x_f}
21 C ( A_h \delta_i u - A_4 \delta_i \nabla^2 u )
22 C \end{equation*}
23
24 C !USES: ===============================================================
25 IMPLICIT NONE
26 #include "SIZE.h"
27 #include "EEPARAMS.h"
28 #include "PARAMS.h"
29 #include "GRID.h"
30
31 C !INPUT PARAMETERS: ===================================================
32 C bi,bj :: tile indices
33 C k :: vertical level
34 C uFld :: zonal flow
35 C del2u :: Laplacian of zonal flow
36 C myThid :: thread number
37 INTEGER bi,bj,k
38 _RL uFld(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
39 _RL del2u(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
40 _RL viscAh_Z(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
41 _RL viscAh_D(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
42 _RL viscA4_Z(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
43 _RL viscA4_D(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
44 INTEGER myThid
45
46 C !OUTPUT PARAMETERS: ==================================================
47 C xViscFluxU :: viscous fluxes
48 _RL xViscFluxU(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
49
50 C !LOCAL VARIABLES: ====================================================
51 C i,j :: loop indices
52 INTEGER I,J
53 CEOP
54
55 C - Laplacian and bi-harmonic terms
56 DO j=1-Oly,sNy+Oly-1
57 DO i=1-Olx,sNx+Olx-1
58 xViscFluxU(i,j) =
59 & _dyF(i,j,bi,bj)*drF(k)*_hFacC(i,j,k,bi,bj)
60 & *(
61 & -viscAh_D(i,j)*(uFld(i+1,j)-uFld(i,j))
62 & *cosFacU(J,bi,bj)
63 & +viscA4_D(i,j)*(del2u(i+1,j) -del2u(i,j) )
64 #ifdef COSINEMETH_III
65 & *sqcosFacU(J,bi,bj)
66 #else
67 & *cosFacU(J,bi,bj)
68 #endif
69 & )*_recip_dxF(i,j,bi,bj)
70 ENDDO
71 ENDDO
72
73 RETURN
74 END

  ViewVC Help
Powered by ViewVC 1.1.22