/[MITgcm]/MITgcm/pkg/diagnostics/diagnostics_init_early.F
ViewVC logotype

Contents of /MITgcm/pkg/diagnostics/diagnostics_init_early.F

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


Revision 1.19 - (show annotations) (download)
Tue Jun 2 20:58:22 2015 UTC (8 years, 10 months ago) by jmc
Branch: MAIN
CVS Tags: 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, checkpoint65n, checkpoint65o, checkpoint65m, HEAD
Changes since 1.18: +2 -1 lines
add few _BARRIER around anyupdate of "diag_pkgStatus"

1 C $Header: /u/gcmpack/MITgcm/pkg/diagnostics/diagnostics_init_early.F,v 1.18 2013/08/14 00:57:33 jmc Exp $
2 C $Name: $
3
4 #include "DIAG_OPTIONS.h"
5
6 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
7 CBOP 0
8 C !ROUTINE: DIAGNOSTICS_INIT_EARLY
9
10 C !INTERFACE:
11 SUBROUTINE DIAGNOSTICS_INIT_EARLY( myThid )
12
13 C !DESCRIPTION:
14 C Initialize available diagnostics list: set the following attributes:
15 C name (=cdiag), parsing code (=gdiag), units (=udiag), and title (=tdiag)
16 C Note: 1) diagnostics defined here are not presently filled. To use
17 C one of them, one just needs to add a call to S/R DIAGNOSTICS_FILL
18 C with the diagnostic name 'SDIAG...' or 'UDIAG...'
19 C 2) GDIAG is defined as character*16 and can be to character*1
20 C parse(16) with the following codes currently defined:
21
22 C \begin{center}
23 C \begin{tabular}[h]{|c|c|}\hline
24 C \textbf{Positions} & \textbf{Characters}
25 C & \textbf{Meanings} \\\hline
26 C parse(1) & S & scalar \\
27 C & U & vector component in X direction \\
28 C & V & vector component in Y direction \\
29 C & W & vector component in vertical direction \\
30 C parse(2) & U & C-grid U-Point \\
31 C & V & C-grid V-Point \\
32 C & M & C-grid Mass Point \\
33 C & Z & C-grid Corner Point \\
34 C parse(3) & & Used for Level Integrated output: cumulate levels \\
35 C & r & same but cumulate product by model level thickness \\
36 C & R & same but cumulate product by hFac & level thickness \\
37 C parse(4) & P & positive definite \\
38 C parse(5 ) & C & with counter array \\
39 C & P & post-processed (not filled up) from other diags \\
40 C & D & disable an array for output \\
41 C parse(6--8) & '123' & retired, formerly: 3-digit mate number \\
42 C parse(9) & U & model-level plus 1/2 \\
43 C & M & model-level middle \\
44 C & L & model-level minus 1/2 \\
45 C parse(10) & 0 & levels = 0 \\
46 C & 1 & levels = 1 \\
47 C & R & levels = Nr \\
48 C & L & levels = MAX(Nr,NrPhys) \\
49 C & M & levels = MAX(Nr,NrPhys) - 1 \\
50 C & G & levels = Ground_level Number \\
51 C & I & levels = sea-Ice_level Number \\
52 C & X & free levels option (need to be set explicitly) \\
53 C \end{tabular}
54 C \end{center}
55
56 C !USES:
57 IMPLICIT NONE
58 #include "SIZE.h"
59 #include "EEPARAMS.h"
60 #include "PARAMS.h"
61 #include "DIAGNOSTICS_SIZE.h"
62 #include "DIAGNOSTICS.h"
63
64 C !INPUT PARAMETERS:
65 INTEGER myThid
66 CEOP
67
68 C !LOCAL VARIABLES:
69 INTEGER n
70
71 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
72
73 _BARRIER
74 _BEGIN_MASTER( myThid )
75
76 DO n=1,ndiagMax
77 kdiag(n) = 0
78 hdiag(n) = 0
79 cdiag(n) = ' '
80 gdiag(n) = ' '
81 udiag(n) = ' '
82 tdiag(n) = ' '
83 ENDDO
84
85 C-- Diagnostics definition/setting starts here (can now add diags to list)
86 c IF ( diag_pkgStatus.NE.1 ) STOP
87 diag_pkgStatus = ready2setDiags
88
89 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
90 C For each output variable,
91 C specify Name (cdiag, 8c), Descriptions (tdiag, *c), Units (udiag, 16c)
92 C and parsing code (location on C grid, 2D/3D, ...) (gdiag, 16c)
93 C----------------------------------------------------------------------
94 cdiag( 1) = 'SDIAG1 '
95 tdiag( 1) = 'User-Defined Surface Diagnostic #1 '
96 udiag( 1) = 'user-defined '
97 gdiag( 1) = 'SM L1 '
98
99 cdiag( 2) = 'SDIAG2 '
100 tdiag( 2) = 'User-Defined Surface Diagnostic #2 '
101 udiag( 2) = 'user-defined '
102 gdiag( 2) = 'SM L1 '
103
104 cdiag( 3) = 'SDIAG3 '
105 tdiag( 3) = 'User-Defined Surface Diagnostic #3 '
106 udiag( 3) = 'user-defined '
107 gdiag( 3) = 'SM L1 '
108
109 cdiag( 4) = 'SDIAG4 '
110 tdiag( 4) = 'User-Defined Surface Diagnostic #4 '
111 udiag( 4) = 'user-defined '
112 gdiag( 4) = 'SM L1 '
113
114 cdiag( 5) = 'SDIAG5 '
115 tdiag( 5) = 'User-Defined Surface Diagnostic #5 '
116 udiag( 5) = 'user-defined '
117 gdiag( 5) = 'SM L1 '
118
119 cdiag( 6) = 'SDIAG6 '
120 tdiag( 6) = 'User-Defined Surface Diagnostic #6 '
121 udiag( 6) = 'user-defined '
122 gdiag( 6) = 'SM L1 '
123
124 cdiag( 7) = 'SDIAG7 '
125 tdiag( 7) = 'User-Defined U.pt Surface Diagnostic #7 '
126 udiag( 7) = 'user-defined '
127 gdiag( 7) = 'SU L1 '
128
129 cdiag( 8) = 'SDIAG8 '
130 tdiag( 8) = 'User-Defined V.pt Surface Diagnostic #8 '
131 udiag( 8) = 'user-defined '
132 gdiag( 8) = 'SV L1 '
133
134 cdiag( 9) = 'SDIAG9 '
135 tdiag( 9) = 'User-Defined U.vector Surface Diag. #9 '
136 udiag( 9) = 'user-defined '
137 gdiag( 9) = 'UU L1 '
138 hdiag( 9) = 10
139
140 cdiag(10) = 'SDIAG10 '
141 tdiag(10) = 'User-Defined V.vector Surface Diag. #10 '
142 udiag(10) = 'user-defined '
143 gdiag(10) = 'VV L1 '
144 hdiag(10) = 9
145
146 cdiag(11) = 'UDIAG1 '
147 tdiag(11) = 'User-Defined Model-Level Diagnostic #1 '
148 udiag(11) = 'user-defined '
149 gdiag(11) = 'SM MR '
150
151 cdiag(12) = 'UDIAG2 '
152 tdiag(12) = 'User-Defined Model-Level Diagnostic #2 '
153 udiag(12) = 'user-defined '
154 gdiag(12) = 'SM MR '
155
156 cdiag(13) = 'UDIAG3 '
157 tdiag(13) = 'User-Defined Model-Level Diagnostic #3 '
158 udiag(13) = 'user-defined '
159 gdiag(13) = 'SMR MR '
160
161 cdiag(14) = 'UDIAG4 '
162 tdiag(14) = 'User-Defined Model-Level Diagnostic #4 '
163 udiag(14) = 'user-defined '
164 gdiag(14) = 'SMR MR '
165
166 cdiag(15) = 'UDIAG5 '
167 tdiag(15) = 'User-Defined U.pt Model-Level Diag. #5 '
168 udiag(15) = 'user-defined '
169 gdiag(15) = 'SU MR '
170
171 cdiag(16) = 'UDIAG6 '
172 tdiag(16) = 'User-Defined V.pt Model-Level Diag. #6 '
173 udiag(16) = 'user-defined '
174 gdiag(16) = 'SV MR '
175
176 cdiag(17) = 'UDIAG7 '
177 tdiag(17) = 'User-Defined U.vector Model-Lev Diag.#7 '
178 udiag(17) = 'user-defined '
179 gdiag(17) = 'UUR MR '
180 hdiag(17) = 18
181
182 cdiag(18) = 'UDIAG8 '
183 tdiag(18) = 'User-Defined V.vector Model-Lev Diag.#8 '
184 udiag(18) = 'user-defined '
185 gdiag(18) = 'VVR MR '
186 hdiag(18) = 17
187
188 cdiag(19) = 'UDIAG9 '
189 tdiag(19) = 'User-Defined Phys-Level Diagnostic #9 '
190 udiag(19) = 'user-defined '
191 gdiag(19) = 'SM ML '
192
193 cdiag(20) = 'UDIAG10 '
194 tdiag(20) = 'User-Defined Phys-Level Diagnostic #10 '
195 udiag(20) = 'user-defined '
196 gdiag(20) = 'SM ML '
197
198 cdiag(21) = 'SDIAGC '
199 tdiag(21) = 'User-Defined Counted Surface Diagnostic '
200 udiag(21) = 'user-defined '
201 gdiag(21) = 'SM C L1 '
202 hdiag(21) = 22
203
204 cdiag(22) = 'SDIAGCC '
205 tdiag(22) = 'User-Defined Surface Diagnostic Counter '
206 udiag(22) = 'count '
207 gdiag(22) = 'SM L1 '
208
209 C- set the total number of available diagnostics
210 ndiagt = 22
211
212 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
213
214 _END_MASTER( myThid )
215 _BARRIER
216
217 RETURN
218 END

  ViewVC Help
Powered by ViewVC 1.1.22