1 |
C $Header: /u/gcmpack/MITgcm_contrib/atnguyen/code_21Dec2012_saltplume/salt_plume_diagnostics_init.F,v 1.4 2014/05/02 06:10:48 atn Exp $ |
2 |
C $Name: $ |
3 |
|
4 |
#include "SALT_PLUME_OPTIONS.h" |
5 |
|
6 |
CBOP 0 |
7 |
C !ROUTINE: SALT_PLUME_DIAGNOSTICS_INIT |
8 |
C !INTERFACE: |
9 |
SUBROUTINE SALT_PLUME_DIAGNOSTICS_INIT( myThid ) |
10 |
|
11 |
C !DESCRIPTION: |
12 |
C Initialize list of all available diagnostics |
13 |
|
14 |
C !USES: |
15 |
IMPLICIT NONE |
16 |
#include "EEPARAMS.h" |
17 |
|
18 |
C !INPUT/OUTPUT PARAMETERS: |
19 |
C myThid :: my Thread Id number |
20 |
INTEGER myThid |
21 |
CEOP |
22 |
|
23 |
#ifdef ALLOW_SALT_PLUME |
24 |
#ifdef ALLOW_DIAGNOSTICS |
25 |
|
26 |
C !LOCAL VARIABLES: |
27 |
C === Local variables === |
28 |
C diagNum :: diagnostics number in the (long) list of available diag. |
29 |
C diagName :: local short name (8c) of a diagnostics |
30 |
C diagCode :: local parser field with characteristics of the diagnostics |
31 |
C cf head of S/R DIAGNOSTICS_INIT_EARLY or DIAGNOSTICS_MAIN_INIT |
32 |
C diagUnits :: local string (16c): physical units of a diagnostic field |
33 |
C diagTitle :: local string (80c): description of field in diagnostic |
34 |
INTEGER diagNum |
35 |
CHARACTER*8 diagName |
36 |
CHARACTER*16 diagCode |
37 |
CHARACTER*16 diagUnits |
38 |
CHARACTER*(80) diagTitle |
39 |
|
40 |
diagName = 'PLUMEKB ' |
41 |
diagTitle = 'fractional plume: [0-1] (unitless)' |
42 |
diagUnits = ' ' |
43 |
diagCode = 'SM MR ' |
44 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
45 |
I diagName, diagCode, diagUnits, diagTitle, 0, myThid ) |
46 |
|
47 |
diagName = 'oceSPtnd' |
48 |
diagTitle = 'salt tendency due to salt plume flux' |
49 |
& //' >0 increases salinity' |
50 |
diagUnits = 'g/m^2/s ' |
51 |
diagCode = 'SM MR ' |
52 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
53 |
I diagName, diagCode, diagUnits, diagTitle, 0, myThid ) |
54 |
|
55 |
|
56 |
diagName = 'oceSPflx' |
57 |
diagTitle = 'net surface Salt flux rejected into the ocean during' |
58 |
& //' freezing, (+=down),' |
59 |
c & //' >0 increases salinity' |
60 |
diagUnits = 'g/m^2/s ' |
61 |
diagCode = 'SM U1 ' |
62 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
63 |
I diagName, diagCode, diagUnits, diagTitle, 0, myThid ) |
64 |
|
65 |
diagName = 'oceSPDep' |
66 |
diagTitle = 'Salt plume depth based on density criterion (>0)' |
67 |
diagUnits = 'm ' |
68 |
diagCode = 'SM U1 ' |
69 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
70 |
I diagName, diagCode, diagUnits, diagTitle, 0, myThid ) |
71 |
|
72 |
#ifdef SALT_PLUME_VOLUME |
73 |
diagName = 'oceSPvol' |
74 |
diagTitle = '' |
75 |
& //'surf brineVol associated w salt plume flux' |
76 |
diagUnits = 'm/s ' |
77 |
diagCode = 'SM U1 ' |
78 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
79 |
I diagName, diagCode, diagUnits, diagTitle, 0, myThid ) |
80 |
c |
81 |
diagName = 'PLUMEKB1' |
82 |
diagTitle = 'fractional plume: [0-1] (unitless)' |
83 |
diagUnits = ' ' |
84 |
diagCode = 'SM UR ' |
85 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
86 |
I diagName, diagCode, diagUnits, diagTitle, 0, myThid ) |
87 |
|
88 |
diagName = 'oceEPtnd' |
89 |
diagTitle = 'temperature tendency due to salt plume flux' |
90 |
& //' >0 increases temperature' |
91 |
diagUnits = 'W/m^2 ' |
92 |
diagCode = 'SM MR ' |
93 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
94 |
I diagName, diagCode, diagUnits, diagTitle, 0, myThid ) |
95 |
c |
96 |
diagName = 'SPtd_TH ' |
97 |
diagTitle = 'Energy tendency associated with salt plume flux' |
98 |
& //' >0 increases temperature' |
99 |
diagUnits = 'W/m^2 ' |
100 |
diagCode = 'SM MR ' |
101 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
102 |
I diagName, diagCode, diagUnits, diagTitle, 0, myThid ) |
103 |
cSPtd_SLT is a duplicate of oceSPtnd |
104 |
diagName = 'SPtd_SLT' |
105 |
diagTitle = 'salt tendency associated with salt plume flux' |
106 |
& //' >0 increases salinity' |
107 |
diagUnits = 'g/m^2/s ' |
108 |
diagCode = 'SM MR ' |
109 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
110 |
I diagName, diagCode, diagUnits, diagTitle, 0, myThid ) |
111 |
|
112 |
diagName = 'SPforcT1' |
113 |
diagTitle = '' |
114 |
& //' range [1:Nr] ' |
115 |
diagUnits = 'unitless ' |
116 |
diagCode = 'SM U1 ' |
117 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
118 |
I diagName, diagCode, diagUnits, diagTitle, 0, myThid ) |
119 |
|
120 |
diagName = 'SPforcS1' |
121 |
diagTitle = '' |
122 |
& //' range [1:Nr] ' |
123 |
diagUnits = 'unitless ' |
124 |
diagCode = 'SM U1 ' |
125 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
126 |
I diagName, diagCode, diagUnits, diagTitle, 0, myThid ) |
127 |
|
128 |
diagName = 'SPVsuf2k' |
129 |
diagTitle = 'salt plume volume flux from surface INTO lev k' |
130 |
& //' >0 increases volume(k)' |
131 |
diagUnits = 'm/s ' |
132 |
diagCode = 'SM MR ' |
133 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
134 |
I diagName, diagCode, diagUnits, diagTitle, 0, myThid ) |
135 |
|
136 |
diagName = 'SPVk2m ' |
137 |
diagTitle = 'vol flux LEAVING k to k-1 due to SPVsuf2k&SPVp2k' |
138 |
& //' <0 decreases volume(k)' |
139 |
diagUnits = 'm/s ' |
140 |
diagCode = 'SM MR ' |
141 |
CALL DIAGNOSTICS_ADDTOLIST( diagNum, |
142 |
I diagName, diagCode, diagUnits, diagTitle, 0, myThid ) |
143 |
#endif /* SALT_PLUME_VOLUME */ |
144 |
|
145 |
#endif /* ALLOW_DIAGNOSTICS */ |
146 |
#endif /* ALLOW_SALT_PLUME */ |
147 |
|
148 |
RETURN |
149 |
END |