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

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

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


Revision 1.15 - (show annotations) (download)
Mon Aug 13 18:05:26 2001 UTC (22 years, 10 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint40pre7, checkpoint40pre6, checkpoint40pre9, checkpoint40pre8, checkpoint40
Changes since 1.14: +12 -18 lines
Modifications related to split into thermodynamics.F, dynamics.F
o missing initialisations in dynamics.F added
o some fields no longer needed in dynamics/thermodynamics deleted
o split of calc_diffusivity.F into calc_viscosity.F
  (plus split of kpp_calc_diff.F into kpp_calc_visc.F)
o Modifications of some store directives for TAF

1 C $Header: /u/gcmpack/models/MITgcmUV/model/src/calc_diffusivity.F,v 1.14 2001/07/30 20:37:45 heimbach Exp $
2 C $Name: checkpoint40pre4 $
3
4 #include "CPP_OPTIONS.h"
5
6 CStartOfInterFace
7 SUBROUTINE CALC_DIFFUSIVITY(
8 I bi,bj,iMin,iMax,jMin,jMax,K,
9 I maskUp,
10 O KappaRT,KappaRS,
11 I myThid)
12
13 C /==========================================================\
14 C | SUBROUTINE CALC_DIFFUSIVITY |
15 C | o Calculate net diffusivity |
16 C \==========================================================/
17 IMPLICIT NONE
18
19 C == GLobal variables ==
20 #include "SIZE.h"
21 #include "EEPARAMS.h"
22 #include "PARAMS.h"
23 #include "DYNVARS.h"
24 #include "GRID.h"
25
26 C == Routine arguments ==
27 C bi, bj, iMin, iMax, jMin, jMax - Range of points for which calculation
28 C maskUp - land/water mask for Wvel points (above tracer level)
29 C myThid - Instance number for this innvocation of CALC_COMMON_FACTORS
30 C
31 INTEGER bi,bj,iMin,iMax,jMin,jMax,K
32 _RS maskUp(1-Olx:sNx+Olx,1-Oly:sNy+Oly)
33 _RL KappaRT(1-Olx:sNx+Olx,1-Oly:sNy+Oly,Nr)
34 _RL KappaRS(1-Olx:sNx+Olx,1-Oly:sNy+Oly,Nr)
35 INTEGER myThid
36 CEndOfInterface
37
38 C == Local variables ==
39 C I, J, K - Loop counters
40 INTEGER i,j
41
42 DO j=jMin,jMax
43 DO i=iMin,iMax
44 KappaRT(i,j,k) = maskUp(i,j)*
45 & (
46 & KappaRT(i,j,k)
47 #if (defined (ALLOW_AUTODIFF_TAMC) && defined (ALLOW_DIFFKR_CONTROL))
48 & + diffKr(i,j,k,bi,bj)
49 #else
50 & + diffKrT
51 #endif
52 & )
53 ENDDO
54 ENDDO
55
56 DO j=jMin,jMax
57 DO i=iMin,iMax
58 KappaRS(i,j,k) = maskUp(i,j)*
59 & (
60 & KappaRS(i,j,k)
61 #if (defined (ALLOW_AUTODIFF_TAMC) && defined (ALLOW_DIFFKR_CONTROL))
62 & + diffKr(i,j,k,bi,bj)
63 #else
64 & + diffKrS
65 #endif
66 & )
67 ENDDO
68 ENDDO
69
70 #ifdef ALLOW_GMREDI
71 IF (useGMRedi) CALL GMREDI_CALC_DIFF(
72 I bi,bj,iMin,iMax,jMin,jMax,K,
73 I maskUp,
74 O KappaRT,KappaRS,
75 I myThid)
76 #endif
77
78 #ifdef ALLOW_KPP
79 IF (useKPP) CALL KPP_CALC_DIFF(
80 I bi,bj,iMin+1,iMax,jMin+1,jMax,K,
81 I maskUp,
82 O KappaRT,KappaRS,
83 I myThid)
84 #endif
85
86
87 RETURN
88 END

  ViewVC Help
Powered by ViewVC 1.1.22