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

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

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


Revision 1.16 - (hide annotations) (download)
Wed Sep 26 18:09:13 2001 UTC (22 years, 8 months ago) by cnh
Branch: MAIN
CVS Tags: checkpoint44e_post, checkpoint43a-release1mods, checkpoint44g_post, chkpt44d_post, release1_p1, checkpoint44e_pre, release1_b1, checkpoint43, release1_chkpt44d_post, release1-branch_tutorials, chkpt44a_post, checkpoint44h_pre, chkpt44c_pre, checkpoint45a_post, ecco_c44_e19, ecco_c44_e18, ecco_c44_e17, ecco_c44_e16, release1-branch-end, release1_final_v1, checkpoint44f_post, checkpoint44b_post, checkpoint44h_post, ecco_c44_e22, chkpt44a_pre, ecco_c44_e20, ecco_c44_e21, ecco-branch-mod1, ecco-branch-mod2, ecco-branch-mod3, ecco-branch-mod4, ecco-branch-mod5, release1_beta1, checkpoint44b_pre, checkpoint42, checkpoint41, checkpoint44, checkpoint45, chkpt44c_post, checkpoint44f_pre, release1-branch_branchpoint
Branch point for: release1_coupled, release1_final, release1-branch, release1, ecco-branch
Changes since 1.15: +29 -14 lines
Bringing comments up to data and formatting for document extraction.

1 cnh 1.16 C $Header: /u/gcmpack/models/MITgcmUV/model/src/calc_diffusivity.F,v 1.15 2001/08/13 18:05:26 heimbach Exp $
2     C $Name: $
3 adcroft 1.1
4 cnh 1.7 #include "CPP_OPTIONS.h"
5 adcroft 1.1
6 cnh 1.16 CBOP
7     C !ROUTINE: CALC_DIFFUSIVITY
8     C !INTERFACE:
9 adcroft 1.1 SUBROUTINE CALC_DIFFUSIVITY(
10     I bi,bj,iMin,iMax,jMin,jMax,K,
11 adcroft 1.13 I maskUp,
12 heimbach 1.15 O KappaRT,KappaRS,
13 adcroft 1.1 I myThid)
14    
15 cnh 1.16 C !DESCRIPTION: \bv
16     C *==========================================================*
17     C | SUBROUTINE CALC_DIFFUSIVITY
18     C | o Calculate net vertical diffusivity
19     C *==========================================================*
20     C | Combines spatially varying diffusion coefficients from
21     C | KPP and/or GM and/or convective stability test.
22     C *==========================================================*
23     C \ev
24    
25     C !USES:
26 adcroft 1.1 IMPLICIT NONE
27     C == GLobal variables ==
28     #include "SIZE.h"
29 cnh 1.2 #include "EEPARAMS.h"
30 adcroft 1.1 #include "PARAMS.h"
31     #include "DYNVARS.h"
32 adcroft 1.8 #include "GRID.h"
33 adcroft 1.1
34 cnh 1.16 C !INPUT/OUTPUT PARAMETERS:
35 adcroft 1.1 C == Routine arguments ==
36 cnh 1.16 C bi, bj, :: Range of points for which calculation
37     C iMin, is performed.
38     C iMax,
39     C jMin,
40     C jMax
41     C maskUp :: land/water mask for Wvel points (above tracer level)
42     C myThid :: Instance number for this innvocation of CALC_DIFFUSIVITY
43     C KappaRT :: Net diffusivity for temperature
44     C KappaRS :: Net diffusivity for salinity
45 adcroft 1.1 INTEGER bi,bj,iMin,iMax,jMin,jMax,K
46 cnh 1.3 _RS maskUp(1-Olx:sNx+Olx,1-Oly:sNy+Oly)
47 cnh 1.6 _RL KappaRT(1-Olx:sNx+Olx,1-Oly:sNy+Oly,Nr)
48     _RL KappaRS(1-Olx:sNx+Olx,1-Oly:sNy+Oly,Nr)
49 adcroft 1.1 INTEGER myThid
50    
51 cnh 1.16 C !LOCAL VARIABLES:
52 adcroft 1.1 C == Local variables ==
53 cnh 1.16 C I, J :: Loop counters
54 adcroft 1.1 INTEGER i,j
55 cnh 1.16 CEOP
56 adcroft 1.1
57     DO j=jMin,jMax
58     DO i=iMin,iMax
59 adcroft 1.13 KappaRT(i,j,k) = maskUp(i,j)*
60 adcroft 1.8 & (
61 adcroft 1.9 & KappaRT(i,j,k)
62 heimbach 1.15 #if (defined (ALLOW_AUTODIFF_TAMC) && defined (ALLOW_DIFFKR_CONTROL))
63     & + diffKr(i,j,k,bi,bj)
64     #else
65 adcroft 1.9 & + diffKrT
66 heimbach 1.15 #endif
67 adcroft 1.8 & )
68 adcroft 1.4 ENDDO
69     ENDDO
70    
71     DO j=jMin,jMax
72     DO i=iMin,iMax
73 adcroft 1.13 KappaRS(i,j,k) = maskUp(i,j)*
74 adcroft 1.8 & (
75 adcroft 1.9 & KappaRS(i,j,k)
76 heimbach 1.15 #if (defined (ALLOW_AUTODIFF_TAMC) && defined (ALLOW_DIFFKR_CONTROL))
77     & + diffKr(i,j,k,bi,bj)
78     #else
79 adcroft 1.9 & + diffKrS
80 heimbach 1.15 #endif
81 adcroft 1.8 & )
82     ENDDO
83     ENDDO
84    
85 adcroft 1.10 #ifdef ALLOW_GMREDI
86 heimbach 1.11 IF (useGMRedi) CALL GMREDI_CALC_DIFF(
87 adcroft 1.10 I bi,bj,iMin,iMax,jMin,jMax,K,
88     I maskUp,
89     O KappaRT,KappaRS,
90     I myThid)
91     #endif
92    
93     #ifdef ALLOW_KPP
94 heimbach 1.11 IF (useKPP) CALL KPP_CALC_DIFF(
95 heimbach 1.14 I bi,bj,iMin+1,iMax,jMin+1,jMax,K,
96 adcroft 1.10 I maskUp,
97 heimbach 1.15 O KappaRT,KappaRS,
98 adcroft 1.10 I myThid)
99     #endif
100    
101 adcroft 1.1
102     RETURN
103     END

  ViewVC Help
Powered by ViewVC 1.1.22