File indexing completed on 2021-06-09 05:11:57 UTC
view on githubraw file Latest commit 2b4c90c1 on 2021-06-08 16:01:04 UTC
7e819019d5 Dimi*0001 #include "KPP_OPTIONS.h"
1f89baba18 Patr*0002 #ifdef ALLOW_SALT_PLUME
0003 #include "SALT_PLUME_OPTIONS.h"
0004 #endif
7e819019d5 Dimi*0005
0006
0007
0008
0009 SUBROUTINE KPP_DIAGNOSTICS_INIT( myThid )
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019 IMPLICIT NONE
0020
0021
0022 #include "EEPARAMS.h"
3b6725a42f Jean*0023 #include "SIZE.h"
0024 #ifdef ALLOW_GENERIC_ADVDIFF
0025 # include "GAD.h"
0026 #endif
7e819019d5 Dimi*0027
0028
0029
0030
0031 INTEGER myThid
0032
0033
0034 #ifdef ALLOW_DIAGNOSTICS
0035
0036
0037
3b6725a42f Jean*0038
7e819019d5 Dimi*0039
0040
0041
0042
0043
0044 INTEGER diagNum
3b6725a42f Jean*0045
0046 CHARACTER*4 diagSufx
7e819019d5 Dimi*0047 CHARACTER*8 diagName
0048 CHARACTER*16 diagCode
0049 CHARACTER*16 diagUnits
0050 CHARACTER*(80) diagTitle
3b6725a42f Jean*0051 #ifdef ALLOW_GENERIC_ADVDIFF
0052 CHARACTER*4 GAD_DIAG_SUFX
0053 EXTERNAL GAD_DIAG_SUFX
0054 #endif
0055
7e819019d5 Dimi*0056
0057
0058 diagName = 'KPPviscA'
0059 diagTitle = 'KPP vertical eddy viscosity coefficient'
0060 diagUnits = 'm^2/s '
8e7e785cad Jean*0061 diagCode = 'SM P LR '
0062 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0063 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
7e819019d5 Dimi*0064
0065 diagName = 'KPPdiffS'
0066 diagTitle = 'Vertical diffusion coefficient for salt & tracers'
0067 diagUnits = 'm^2/s '
8e7e785cad Jean*0068 diagCode = 'SM P LR '
0069 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0070 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
7e819019d5 Dimi*0071
0072 diagName = 'KPPdiffT'
0073 diagTitle = 'Vertical diffusion coefficient for heat'
0074 diagUnits = 'm^2/s '
8e7e785cad Jean*0075 diagCode = 'SM P LR '
0076 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0077 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
7e819019d5 Dimi*0078
141e734c73 Jean*0079 diagName = 'KPPghatK'
0080 diagTitle = 'ratio of KPP non-local (salt) flux'
0081 & //' relative to surface-flux'
0082 diagUnits = '0-1 '
7e819019d5 Dimi*0083 diagCode = 'SM P LR '
8e7e785cad Jean*0084 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0085 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
7e819019d5 Dimi*0086
0087 diagName = 'KPPhbl '
b8912f4f10 Dimi*0088 diagTitle = 'KPP boundary layer depth, bulk Ri criterion'
7e819019d5 Dimi*0089 diagUnits = 'm '
0090 diagCode = 'SM P 1 '
8e7e785cad Jean*0091 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0092 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
7e819019d5 Dimi*0093
0094 diagName = 'KPPfrac '
0095 diagTitle = 'Short-wave flux fraction penetrating mixing layer'
0096 diagUnits = ' '
0097 diagCode = 'SM P 1 '
8e7e785cad Jean*0098 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0099 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
7e819019d5 Dimi*0100
30c6f5b1cd An T*0101 diagName = 'KPPdbsfc'
0102 diagTitle = 'Buoyancy difference with respect to surface'
0103 diagUnits = 'm/s^2 '
0104 diagCode = 'SM P UR '
8e7e785cad Jean*0105 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0106 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
30c6f5b1cd An T*0107
0108 diagName = 'KPPbfsfc'
0109 diagTitle = 'Bo+radiation absorbed to d=hbf*hbl + plume'
0110 diagUnits = 'm^2/s^3 '
0111 diagCode = 'SM P UR '
8e7e785cad Jean*0112 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0113 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
30c6f5b1cd An T*0114
b5ecce171d Davi*0115 diagName = 'KPPRi '
0116 diagTitle = 'Bulk Richardson number'
0117 diagUnits = 'non-dimensional '
0118 diagCode = 'SM P UR '
8e7e785cad Jean*0119 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0120 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
b5ecce171d Davi*0121
30c6f5b1cd An T*0122 diagName = 'KPPbo '
0123 diagTitle = 'Surface turbulent buoyancy forcing'
0124 diagUnits = 'm^2/s^3 '
0125 diagCode = 'SM P 1 '
8e7e785cad Jean*0126 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0127 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
30c6f5b1cd An T*0128
0129 diagName = 'KPPbosol'
0130 diagTitle = 'surface radiative buoyancy forcing'
0131 diagUnits = 'm^2/s^3 '
0132 diagCode = 'SM P 1 '
8e7e785cad Jean*0133 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0134 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
30c6f5b1cd An T*0135
0136 diagName = 'KPPdbloc'
0137 diagTitle = 'Local delta buoyancy across interfaces'
0138 diagUnits = 'm/s^2 '
0139 diagCode = 'SM P UR '
8e7e785cad Jean*0140 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0141 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
30c6f5b1cd An T*0142
2b4c90c108 Mart*0143 diagName = 'KPPshsq '
0144 diagTitle = 'Local shear (V(k-1)-V(k))^2'
0145 diagUnits = 'm^2/s^2 '
0146 diagCode = 'SM P UR '
0147 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0148 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
0149
0150 diagName = 'KPPdVsq '
0151 diagTitle = 'Shear relative to surface (V(ksrf)-V(k))**2'
0152 diagUnits = 'm^2/s^2 '
0153 diagCode = 'SM P UR '
0154 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0155 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
0156
e750a5e49e Mart*0157 #ifndef EXCLUDE_KPP_DOUBLEDIFF
0158 diagName = 'KPPnuddt'
0159 diagTitle = 'Vertical double diffusion coefficient for heat'
0160 diagUnits = 'm^2/s '
0161 diagCode = 'SM P UR '
8e7e785cad Jean*0162 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0163 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
e750a5e49e Mart*0164
0165 diagName = 'KPPnudds'
0166 diagTitle = 'Vertical double diffusion coefficient for salt'
0167 diagUnits = 'm^2/s '
0168 diagCode = 'SM P UR '
8e7e785cad Jean*0169 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0170 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
e750a5e49e Mart*0171 #endif /* ndef EXCLUDE_KPP_DOUBLEDIFF */
0172
3b6725a42f Jean*0173 diagSufx = 'aaaa'
0174 #ifdef ALLOW_GENERIC_ADVDIFF
0175 diagSufx = GAD_DIAG_SUFX( GAD_TEMPERATURE, myThid )
0176 #endif
0177 diagName = 'KPPg'//diagSufx
0178 diagTitle = 'KPP non-local Flux of Pot.Temperature'
0179 diagUnits = 'degC.m^3/s '
0180 diagCode = 'WM LR '
0181 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0182 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
0183
0184 #ifdef ALLOW_GENERIC_ADVDIFF
0185 diagSufx = GAD_DIAG_SUFX( GAD_SALINITY, myThid )
0186 #endif
0187 diagName = 'KPPg'//diagSufx
0188 diagTitle = 'KPP non-local Flux of Salinity'
ba0b047096 Mart*0189 diagUnits = 'g/kg.m^3/s '
3b6725a42f Jean*0190 diagCode = 'WM LR '
0191 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0192 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
0193
30c6f5b1cd An T*0194 #ifdef ALLOW_SALT_PLUME
0195 diagName = 'KPPpfrac'
0196 diagTitle = 'Salt plume flux fraction penetrating mixing layer'
0197 diagUnits = ' '
0198 diagCode = 'SM P 1 '
8e7e785cad Jean*0199 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0200 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
30c6f5b1cd An T*0201
0202 diagName = 'KPPboplm'
0203 diagTitle = 'Surface haline buoyancy forcing'
0204 diagUnits = 'm^2/s^3 '
1f89baba18 Patr*0205 #ifdef SALT_PLUME_VOLUME
0206 diagCode = 'SM P UR '
0207 #else /* SALT_PLUME_VOLUME */
30c6f5b1cd An T*0208 diagCode = 'SM P 1 '
1f89baba18 Patr*0209 #endif /* SALT_PLUME_VOLUME */
8e7e785cad Jean*0210 CALL DIAGNOSTICS_ADDTOLIST( diagNum,
0211 I diagName, diagCode, diagUnits, diagTitle, 0, myThid )
30c6f5b1cd An T*0212 #endif /* ALLOW_SALT_PLUME */
0213
7e819019d5 Dimi*0214 #endif /* ALLOW_DIAGNOSTICS */
0215
0216 RETURN
0217 END