/[MITgcm]/MITgcm/model/src/calc_viscosity.F
ViewVC logotype

Contents of /MITgcm/model/src/calc_viscosity.F

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


Revision 1.10 - (show annotations) (download)
Wed Jul 30 03:31:35 2014 UTC (9 years, 9 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint65h, checkpoint65b, checkpoint65c, checkpoint65f, checkpoint65g, checkpoint65d, checkpoint65e
Changes since 1.9: +12 -5 lines
-  add new pkg "kl10" for mixing due to internal wave breaking
  ( http://www.sciencedirect.com/science/article/pii/S1463500310000144 )

1 C $Header: /u/gcmpack/MITgcm/model/src/calc_viscosity.F,v 1.9 2009/10/08 20:03:18 jmc Exp $
2 C $Name: $
3
4 #include "PACKAGES_CONFIG.h"
5 #include "CPP_OPTIONS.h"
6
7 CBOP
8 C !ROUTINE: CALC_VISCOSITY
9 C !INTERFACE:
10 SUBROUTINE CALC_VISCOSITY(
11 I bi,bj, iMin,iMax,jMin,jMax,
12 O KappaRU, KappaRV,
13 I myThid )
14
15 C !DESCRIPTION: \bv
16 C *==========================================================*
17 C | SUBROUTINE CALC_VISCOSITY
18 C | o Calculate net vertical viscosity
19 C *==========================================================*
20 C \ev
21
22 C !USES:
23 IMPLICIT NONE
24 C == GLobal variables ==
25 #include "SIZE.h"
26 #include "EEPARAMS.h"
27 #include "PARAMS.h"
28 #include "DYNVARS.h"
29 #include "GRID.h"
30
31 C !INPUT/OUTPUT PARAMETERS:
32 C == Routine arguments ==
33 C iMin,iMax,jMin,jMax :: Range of points for which calculation
34 C bi,bj :: current tile indices
35 C KappaRU :: Total vertical viscosity for zonal flow.
36 C KappaRV :: Total vertical viscosity for meridional flow.
37 C myThid :: my Thread Id number
38 INTEGER iMin,iMax,jMin,jMax
39 INTEGER bi,bj
40 _RL KappaRU(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
41 _RL KappaRV(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
42 INTEGER myThid
43
44 C !LOCAL VARIABLES:
45 C == Local variables ==
46 C i, j, k :: Loop counters
47 INTEGER i,j,k
48 CEOP
49
50 DO k = 1,Nr
51
52 DO j = 1-OLy, sNy+OLy
53 DO i = 1-OLx, sNx+OLx
54 KappaRU(i,j,k) = viscArNr(k)
55 KappaRV(i,j,k) = viscArNr(k)
56 ENDDO
57 ENDDO
58
59 #ifdef ALLOW_KPP
60 IF (useKPP) CALL KPP_CALC_VISC(
61 I bi,bj, iMin,iMax,jMin,jMax, k,
62 O KappaRU,KappaRV,
63 I myThid)
64 #endif
65
66 #ifdef ALLOW_PP81
67 IF (usePP81) CALL PP81_CALC_VISC(
68 I bi,bj, iMin,iMax,jMin,jMax, k,
69 O KappaRU,KappaRV,
70 I myThid)
71 #endif
72
73 #ifdef ALLOW_KL10
74 IF (useKL10) CALL KL10_CALC_VISC(
75 I bi,bj, iMin,iMax,jMin,jMax, k,
76 O KappaRU,KappaRV,
77 I myThid)
78 #endif
79
80 #ifdef ALLOW_MY82
81 IF (useMY82) CALL MY82_CALC_VISC(
82 I bi,bj, iMin,iMax,jMin,jMax, k,
83 O KappaRU,KappaRV,
84 I myThid)
85 #endif
86
87 #ifdef ALLOW_GGL90
88 IF (useGGL90) CALL GGL90_CALC_VISC(
89 I bi,bj, iMin,iMax,jMin,jMax, k,
90 O KappaRU,KappaRV,
91 I myThid)
92 #endif
93
94 C-- end of k loop
95 ENDDO
96
97 RETURN
98 END

  ViewVC Help
Powered by ViewVC 1.1.22