/[MITgcm]/MITgcm/pkg/kpp/kpp_diagnostics_init.F
ViewVC logotype

Contents of /MITgcm/pkg/kpp/kpp_diagnostics_init.F

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


Revision 1.10 - (show annotations) (download)
Wed May 21 10:45:33 2014 UTC (10 years, 1 month ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint64y, checkpoint64x, checkpoint64z, checkpoint65, checkpoint66g, checkpoint66f, checkpoint66e, checkpoint66d, checkpoint66c, checkpoint66b, checkpoint66a, checkpoint66o, checkpoint66n, checkpoint66m, checkpoint66l, checkpoint66k, checkpoint66j, checkpoint66i, checkpoint66h, checkpoint65z, checkpoint65x, checkpoint65y, checkpoint65r, checkpoint65s, checkpoint65p, checkpoint65q, checkpoint65v, checkpoint65w, checkpoint65t, checkpoint65u, checkpoint65j, checkpoint65k, checkpoint65h, checkpoint65i, checkpoint65n, checkpoint65o, checkpoint65l, checkpoint65m, checkpoint65b, checkpoint65c, checkpoint65a, checkpoint65f, checkpoint65g, checkpoint65d, checkpoint65e, HEAD
Changes since 1.9: +8 -1 lines
An Nguyen's extensions to salt_plume package
(carry corresponding heat flux along with salt redistribution)

1 C $Header: /u/gcmpack/MITgcm_contrib/atnguyen/code_21Dec2012_saltplume/kpp_diagnostics_init.F,v 1.3 2014/05/01 08:09:30 atn Exp $
2 C $Name: $
3
4 #include "KPP_OPTIONS.h"
5 #ifdef ALLOW_SALT_PLUME
6 #include "SALT_PLUME_OPTIONS.h"
7 #endif
8
9 CBOP
10 C !ROUTINE: KPP_DIAGNOSTICS_INIT
11 C !INTERFACE:
12 SUBROUTINE KPP_DIAGNOSTICS_INIT( myThid )
13
14 C !DESCRIPTION: \bv
15 C *==========================================================*
16 C | SUBROUTINE KPP_DIAGNOSTICS_INIT
17 C | o Routine to initialize list of all available diagnostics
18 C | for KPP package
19 C *==========================================================*
20 C \ev
21 C !USES:
22 IMPLICIT NONE
23
24 C === Global variables ===
25 #include "EEPARAMS.h"
26 #include "SIZE.h"
27 #ifdef ALLOW_GENERIC_ADVDIFF
28 # include "GAD.h"
29 #endif
30
31 C !INPUT/OUTPUT PARAMETERS:
32 C === Routine arguments ===
33 C myThid :: my Thread Id number
34 INTEGER myThid
35 CEOP
36
37 #ifdef ALLOW_DIAGNOSTICS
38 C !LOCAL VARIABLES:
39 C === Local variables ===
40 C diagNum :: diagnostics number in the (long) list of available diag.
41 C diagMate :: diag. mate number in the (long) list of available diag.
42 C diagName :: local short name (8c) of a diagnostics
43 C diagCode :: local parser field with characteristics of the diagnostics
44 C cf head of S/R DIAGNOSTICS_INIT_EARLY or DIAGNOSTICS_MAIN_INIT
45 C diagUnits :: local string (16c): physical units of a diagnostic field
46 C diagTitle :: local string (80c): description of field in diagnostic
47 INTEGER diagNum
48 c INTEGER diagMate
49 CHARACTER*4 diagSufx
50 CHARACTER*8 diagName
51 CHARACTER*16 diagCode
52 CHARACTER*16 diagUnits
53 CHARACTER*(80) diagTitle
54 #ifdef ALLOW_GENERIC_ADVDIFF
55 CHARACTER*4 GAD_DIAG_SUFX
56 EXTERNAL GAD_DIAG_SUFX
57 #endif
58
59
60 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
61
62 diagName = 'KPPviscA'
63 diagTitle = 'KPP vertical eddy viscosity coefficient'
64 diagUnits = 'm^2/s '
65 diagCode = 'SM P LR '
66 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
67 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
68
69 diagName = 'KPPdiffS'
70 diagTitle = 'Vertical diffusion coefficient for salt & tracers'
71 diagUnits = 'm^2/s '
72 diagCode = 'SM P LR '
73 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
74 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
75
76 diagName = 'KPPdiffT'
77 diagTitle = 'Vertical diffusion coefficient for heat'
78 diagUnits = 'm^2/s '
79 diagCode = 'SM P LR '
80 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
81 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
82
83 diagName = 'KPPghatK'
84 diagTitle = 'ratio of KPP non-local (salt) flux'
85 & //' relative to surface-flux'
86 diagUnits = '0-1 '
87 diagCode = 'SM P LR '
88 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
89 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
90
91 diagName = 'KPPhbl '
92 diagTitle = 'KPP boundary layer depth, bulk Ri criterion'
93 diagUnits = 'm '
94 diagCode = 'SM P 1 '
95 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
96 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
97
98 diagName = 'KPPfrac '
99 diagTitle = 'Short-wave flux fraction penetrating mixing layer'
100 diagUnits = ' '
101 diagCode = 'SM P 1 '
102 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
103 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
104
105 diagName = 'KPPdbsfc'
106 diagTitle = 'Buoyancy difference with respect to surface'
107 diagUnits = 'm/s^2 '
108 diagCode = 'SM P UR '
109 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
110 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
111
112 diagName = 'KPPbfsfc'
113 diagTitle = 'Bo+radiation absorbed to d=hbf*hbl + plume'
114 diagUnits = 'm^2/s^3 '
115 diagCode = 'SM P UR '
116 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
117 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
118
119 diagName = 'KPPRi '
120 diagTitle = 'Bulk Richardson number'
121 diagUnits = 'non-dimensional '
122 diagCode = 'SM P UR '
123 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
124 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
125
126 diagName = 'KPPbo '
127 diagTitle = 'Surface turbulent buoyancy forcing'
128 diagUnits = 'm^2/s^3 '
129 diagCode = 'SM P 1 '
130 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
131 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
132
133 diagName = 'KPPbosol'
134 diagTitle = 'surface radiative buoyancy forcing'
135 diagUnits = 'm^2/s^3 '
136 diagCode = 'SM P 1 '
137 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
138 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
139
140 diagName = 'KPPdbloc'
141 diagTitle = 'Local delta buoyancy across interfaces'
142 diagUnits = 'm/s^2 '
143 diagCode = 'SM P UR '
144 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
145 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
146
147 #ifndef EXCLUDE_KPP_DOUBLEDIFF
148 diagName = 'KPPnuddt'
149 diagTitle = 'Vertical double diffusion coefficient for heat'
150 diagUnits = 'm^2/s '
151 diagCode = 'SM P UR '
152 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
153 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
154
155 diagName = 'KPPnudds'
156 diagTitle = 'Vertical double diffusion coefficient for salt'
157 diagUnits = 'm^2/s '
158 diagCode = 'SM P UR '
159 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
160 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
161 #endif /* ndef EXCLUDE_KPP_DOUBLEDIFF */
162
163 diagSufx = 'aaaa'
164 #ifdef ALLOW_GENERIC_ADVDIFF
165 diagSufx = GAD_DIAG_SUFX( GAD_TEMPERATURE, myThid )
166 #endif
167 diagName = 'KPPg'//diagSufx
168 diagTitle = 'KPP non-local Flux of Pot.Temperature'
169 diagUnits = 'degC.m^3/s '
170 diagCode = 'WM LR '
171 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
172 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
173
174 #ifdef ALLOW_GENERIC_ADVDIFF
175 diagSufx = GAD_DIAG_SUFX( GAD_SALINITY, myThid )
176 #endif
177 diagName = 'KPPg'//diagSufx
178 diagTitle = 'KPP non-local Flux of Salinity'
179 diagUnits = 'psu.m^3/s '
180 diagCode = 'WM LR '
181 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
182 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
183
184 #ifdef ALLOW_SALT_PLUME
185 diagName = 'KPPpfrac'
186 diagTitle = 'Salt plume flux fraction penetrating mixing layer'
187 diagUnits = ' '
188 diagCode = 'SM P 1 '
189 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
190 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
191
192 diagName = 'KPPboplm'
193 diagTitle = 'Surface haline buoyancy forcing'
194 diagUnits = 'm^2/s^3 '
195 #ifdef SALT_PLUME_VOLUME
196 diagCode = 'SM P UR '
197 #else /* SALT_PLUME_VOLUME */
198 diagCode = 'SM P 1 '
199 #endif /* SALT_PLUME_VOLUME */
200 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
201 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
202 #endif /* ALLOW_SALT_PLUME */
203
204 #endif /* ALLOW_DIAGNOSTICS */
205
206 RETURN
207 END

  ViewVC Help
Powered by ViewVC 1.1.22