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

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

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


Revision 1.19 - (hide annotations) (download)
Tue Jun 2 20:58:22 2015 UTC (9 years 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 jmc 1.19 C $Header: /u/gcmpack/MITgcm/pkg/diagnostics/diagnostics_init_early.F,v 1.18 2013/08/14 00:57:33 jmc Exp $
2 jmc 1.1 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 jmc 1.11 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 jmc 1.1 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 jmc 1.3 C & U & vector component in X direction \\
28     C & V & vector component in Y direction \\
29     C & W & vector component in vertical direction \\
30 jmc 1.1 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 jmc 1.15 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 jmc 1.1 C parse(4) & P & positive definite \\
38     C parse(5 ) & C & with counter array \\
39 jmc 1.17 C & P & post-processed (not filled up) from other diags \\
40 jmc 1.1 C & D & disable an array for output \\
41 jmc 1.15 C parse(6--8) & '123' & retired, formerly: 3-digit mate number \\
42 jmc 1.1 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 jmc 1.7 C & G & levels = Ground_level Number \\
51     C & I & levels = sea-Ice_level Number \\
52 jmc 1.16 C & X & free levels option (need to be set explicitly) \\
53 jmc 1.1 C \end{tabular}
54     C \end{center}
55    
56     C !USES:
57 jmc 1.12 IMPLICIT NONE
58 jmc 1.1 #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 jmc 1.12 INTEGER myThid
66 jmc 1.1 CEOP
67    
68 jmc 1.12 C !LOCAL VARIABLES:
69     INTEGER n
70 jmc 1.1
71 jmc 1.12 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
72    
73 jmc 1.19 _BARRIER
74 jmc 1.12 _BEGIN_MASTER( myThid )
75    
76     DO n=1,ndiagMax
77 jmc 1.1 kdiag(n) = 0
78 jmc 1.13 hdiag(n) = 0
79 jmc 1.1 cdiag(n) = ' '
80     gdiag(n) = ' '
81     udiag(n) = ' '
82     tdiag(n) = ' '
83 jmc 1.12 ENDDO
84 jmc 1.1
85 jmc 1.16 C-- Diagnostics definition/setting starts here (can now add diags to list)
86 jmc 1.18 c IF ( diag_pkgStatus.NE.1 ) STOP
87     diag_pkgStatus = ready2setDiags
88 jmc 1.16
89 jmc 1.1 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
90     C For each output variable,
91 jmc 1.11 C specify Name (cdiag, 8c), Descriptions (tdiag, *c), Units (udiag, 16c)
92 jmc 1.1 C and parsing code (location on C grid, 2D/3D, ...) (gdiag, 16c)
93     C----------------------------------------------------------------------
94 jmc 1.15 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 molod 1.10
104     cdiag( 3) = 'SDIAG3 '
105 jmc 1.15 tdiag( 3) = 'User-Defined Surface Diagnostic #3 '
106 molod 1.10 udiag( 3) = 'user-defined '
107     gdiag( 3) = 'SM L1 '
108    
109     cdiag( 4) = 'SDIAG4 '
110 jmc 1.15 tdiag( 4) = 'User-Defined Surface Diagnostic #4 '
111 molod 1.10 udiag( 4) = 'user-defined '
112     gdiag( 4) = 'SM L1 '
113    
114     cdiag( 5) = 'SDIAG5 '
115 jmc 1.15 tdiag( 5) = 'User-Defined Surface Diagnostic #5 '
116 molod 1.10 udiag( 5) = 'user-defined '
117     gdiag( 5) = 'SM L1 '
118    
119     cdiag( 6) = 'SDIAG6 '
120 jmc 1.15 tdiag( 6) = 'User-Defined Surface Diagnostic #6 '
121 molod 1.10 udiag( 6) = 'user-defined '
122     gdiag( 6) = 'SM L1 '
123    
124     cdiag( 7) = 'SDIAG7 '
125 jmc 1.15 tdiag( 7) = 'User-Defined U.pt Surface Diagnostic #7 '
126 molod 1.10 udiag( 7) = 'user-defined '
127 jmc 1.15 gdiag( 7) = 'SU L1 '
128 molod 1.10
129     cdiag( 8) = 'SDIAG8 '
130 jmc 1.15 tdiag( 8) = 'User-Defined V.pt Surface Diagnostic #8 '
131 molod 1.10 udiag( 8) = 'user-defined '
132 jmc 1.15 gdiag( 8) = 'SV L1 '
133 molod 1.10
134     cdiag( 9) = 'SDIAG9 '
135 jmc 1.15 tdiag( 9) = 'User-Defined U.vector Surface Diag. #9 '
136 molod 1.10 udiag( 9) = 'user-defined '
137 jmc 1.15 gdiag( 9) = 'UU L1 '
138     hdiag( 9) = 10
139 molod 1.10
140     cdiag(10) = 'SDIAG10 '
141 jmc 1.15 tdiag(10) = 'User-Defined V.vector Surface Diag. #10 '
142 molod 1.10 udiag(10) = 'user-defined '
143 jmc 1.15 gdiag(10) = 'VV L1 '
144     hdiag(10) = 9
145 molod 1.10
146 jmc 1.14 cdiag(11) = 'UDIAG1 '
147 jmc 1.15 tdiag(11) = 'User-Defined Model-Level Diagnostic #1 '
148 jmc 1.14 udiag(11) = 'user-defined '
149     gdiag(11) = 'SM MR '
150    
151     cdiag(12) = 'UDIAG2 '
152 jmc 1.15 tdiag(12) = 'User-Defined Model-Level Diagnostic #2 '
153 jmc 1.14 udiag(12) = 'user-defined '
154     gdiag(12) = 'SM MR '
155 molod 1.10
156     cdiag(13) = 'UDIAG3 '
157 jmc 1.15 tdiag(13) = 'User-Defined Model-Level Diagnostic #3 '
158 molod 1.10 udiag(13) = 'user-defined '
159 jmc 1.15 gdiag(13) = 'SMR MR '
160 molod 1.10
161     cdiag(14) = 'UDIAG4 '
162 jmc 1.15 tdiag(14) = 'User-Defined Model-Level Diagnostic #4 '
163 molod 1.10 udiag(14) = 'user-defined '
164 jmc 1.15 gdiag(14) = 'SMR MR '
165 molod 1.10
166     cdiag(15) = 'UDIAG5 '
167 jmc 1.15 tdiag(15) = 'User-Defined U.pt Model-Level Diag. #5 '
168 molod 1.10 udiag(15) = 'user-defined '
169 jmc 1.15 gdiag(15) = 'SU MR '
170 molod 1.10
171     cdiag(16) = 'UDIAG6 '
172 jmc 1.15 tdiag(16) = 'User-Defined V.pt Model-Level Diag. #6 '
173 molod 1.10 udiag(16) = 'user-defined '
174 jmc 1.15 gdiag(16) = 'SV MR '
175 molod 1.10
176     cdiag(17) = 'UDIAG7 '
177 jmc 1.15 tdiag(17) = 'User-Defined U.vector Model-Lev Diag.#7 '
178 molod 1.10 udiag(17) = 'user-defined '
179 jmc 1.15 gdiag(17) = 'UUR MR '
180     hdiag(17) = 18
181 molod 1.10
182     cdiag(18) = 'UDIAG8 '
183 jmc 1.15 tdiag(18) = 'User-Defined V.vector Model-Lev Diag.#8 '
184 molod 1.10 udiag(18) = 'user-defined '
185 jmc 1.15 gdiag(18) = 'VVR MR '
186     hdiag(18) = 17
187 molod 1.10
188     cdiag(19) = 'UDIAG9 '
189 jmc 1.15 tdiag(19) = 'User-Defined Phys-Level Diagnostic #9 '
190 molod 1.10 udiag(19) = 'user-defined '
191     gdiag(19) = 'SM ML '
192    
193     cdiag(20) = 'UDIAG10 '
194 jmc 1.15 tdiag(20) = 'User-Defined Phys-Level Diagnostic #10 '
195 molod 1.10 udiag(20) = 'user-defined '
196     gdiag(20) = 'SM ML '
197    
198     cdiag(21) = 'SDIAGC '
199 jmc 1.14 tdiag(21) = 'User-Defined Counted Surface Diagnostic '
200 molod 1.10 udiag(21) = 'user-defined '
201 jmc 1.13 gdiag(21) = 'SM C L1 '
202     hdiag(21) = 22
203 molod 1.10
204     cdiag(22) = 'SDIAGCC '
205 jmc 1.14 tdiag(22) = 'User-Defined Surface Diagnostic Counter '
206 molod 1.10 udiag(22) = 'count '
207 jmc 1.13 gdiag(22) = 'SM L1 '
208 molod 1.9
209 jmc 1.12 C- set the total number of available diagnostics
210 molod 1.10 ndiagt = 22
211 jmc 1.1
212 jmc 1.12 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
213    
214     _END_MASTER( myThid )
215     _BARRIER
216 jmc 1.1
217     RETURN
218     END

  ViewVC Help
Powered by ViewVC 1.1.22