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

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

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


Revision 1.4 - (show annotations) (download)
Sun Jun 12 16:08:04 2011 UTC (12 years, 10 months ago) by gforget
Branch: MAIN
CVS Tags: checkpoint64h, checkpoint64a, checkpoint64c, checkpoint64b, checkpoint64e, checkpoint64d, checkpoint64g, checkpoint64f, checkpoint63p, checkpoint63q, checkpoint63r, checkpoint63s, checkpoint63l, checkpoint63m, checkpoint63n, checkpoint63o, checkpoint63h, checkpoint63i, checkpoint63j, checkpoint63k, checkpoint63d, checkpoint63e, checkpoint63f, checkpoint63g, checkpoint63a, checkpoint63b, checkpoint63c, checkpoint64, checkpoint63, checkpoint62z
Changes since 1.3: +38 -1 lines
- retired pkg/seaice diags: SIyneg, SIfice, SIsnwice, SIthdgrh.

1 C $Header: /u/gcmpack/MITgcm/pkg/diagnostics/diagnostics_list_check.F,v 1.3 2010/04/03 22:32:22 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_LIST_CHECK
9
10 C !INTERFACE:
11 SUBROUTINE DIAGNOSTICS_LIST_CHECK(
12 O ndCount,
13 I ld, md,
14 I nbLists, nbFlds, fldsList, myThid )
15
16 C !DESCRIPTION:
17 C Check a list of fields for disable diagnostics,
18 C starting with the current one:
19 C print relevant error message and return the number
20 C of disable diagnostics that this list contains.
21
22 C !USES:
23 IMPLICIT NONE
24 #include "SIZE.h"
25 #include "EEPARAMS.h"
26 #include "PARAMS.h"
27 #include "DIAGNOSTICS_SIZE.h"
28 #include "DIAGNOSTICS.h"
29
30 C !INPUT PARAMETERS:
31 C ld :: current ouput stream number
32 C md :: current field in ouput stream ld
33 C nbLists :: number of output streams
34 C nbFlds(n):: number of diagnostics for output stream # n
35 C fldsList :: list of field names to check
36 C myThid :: my Thread Id. number
37 INTEGER ld, md, nbLists
38 INTEGER nbFlds(numlists)
39 CHARACTER*8 fldsList(numperlist,numlists)
40 INTEGER myThid
41 C !OUTPUT PARAMETERS:
42 C ndCount :: number of disable diagnostics in list "fldsList"
43 INTEGER ndCount
44 CEOP
45
46 C !LOCAL VARIABLES:
47 CHARACTER*(MAX_LEN_MBUF) msgBuf
48 LOGICAL found
49 CHARACTER*8 diagName
50 INTEGER n,m,m1,i
51
52 ndCount = 0.
53 _BEGIN_MASTER(myThid)
54
55
56 C- File names:
57 m1 = md
58 DO n = ld,nbLists
59 DO m = m1,nbFlds(n)
60
61 diagName = fldsList(m,n)
62 found = .FALSE.
63 IF ( ndCount.GT.0 ) THEN
64 C Search all possible model diagnostics
65 DO i=1,ndiagt
66 IF ( diagName.EQ.cdiag(i) ) found = .TRUE.
67 ENDDO
68 ENDIF
69 IF ( .NOT.found ) THEN
70 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
71 IF ( diagName.EQ.'PRESSURE' ) THEN
72 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
73 & diagName, '" was replaced by "RCENTER "'
74 CALL PRINT_ERROR( msgBuf , myThid )
75 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
76 & '=> need to change "data.diagnostics" accordingly'
77 CALL PRINT_ERROR( msgBuf , myThid )
78 ndCount = ndCount + 1
79 ENDIF
80 IF ( diagName.EQ.'TICE ' ) THEN
81 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
82 & diagName, '" was replaced by "oceFreez"'
83 CALL PRINT_ERROR( msgBuf , myThid )
84 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
85 & '=> need to change "data.diagnostics" accordingly'
86 CALL PRINT_ERROR( msgBuf , myThid )
87 ndCount = ndCount + 1
88 ENDIF
89 IF ( diagName.EQ.'TAUX ' ) THEN
90 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
91 & diagName, '" was replaced by "oceTAUX "'
92 CALL PRINT_ERROR( msgBuf , myThid )
93 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
94 & '=> need to change "data.diagnostics" accordingly'
95 CALL PRINT_ERROR( msgBuf , myThid )
96 ndCount = ndCount + 1
97 ENDIF
98 IF ( diagName.EQ.'TAUY ' ) THEN
99 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
100 & diagName, '" was replaced by "oceTAUY "'
101 CALL PRINT_ERROR( msgBuf , myThid )
102 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
103 & '=> need to change "data.diagnostics" accordingly'
104 CALL PRINT_ERROR( msgBuf , myThid )
105 ndCount = ndCount + 1
106 ENDIF
107 IF ( diagName.EQ.'SWFLUX ' ) THEN
108 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
109 & diagName, '" was replaced by "oceQsw "'
110 CALL PRINT_ERROR( msgBuf , myThid )
111 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
112 & '=> need to change "data.diagnostics" accordingly'
113 CALL PRINT_ERROR( msgBuf , myThid )
114 ndCount = ndCount + 1
115 ENDIF
116 IF ( diagName(1:5).EQ.'DIFx_' .OR.
117 & diagName(1:5).EQ.'DIFxT' ) THEN
118 WRITE(msgBuf,'(5A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
119 & diagName, '" was replaced by "DFxE',
120 & diagName(5:8), '"'
121 CALL PRINT_ERROR( msgBuf , myThid )
122 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
123 & '=> need to change "data.diagnostics" accordingly'
124 CALL PRINT_ERROR( msgBuf , myThid )
125 ndCount = ndCount + 1
126 ENDIF
127 IF ( diagName(1:5).EQ.'DIFy_' .OR.
128 & diagName(1:5).EQ.'DIFyT' ) THEN
129 WRITE(msgBuf,'(5A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
130 & diagName, '" was replaced by "DFyE',
131 & diagName(5:8), '"'
132 CALL PRINT_ERROR( msgBuf , myThid )
133 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
134 & '=> need to change "data.diagnostics" accordingly'
135 CALL PRINT_ERROR( msgBuf , myThid )
136 ndCount = ndCount + 1
137 ENDIF
138 IF ( diagName.EQ.'KPPmld ' ) THEN
139 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
140 & diagName, '" was retired in favor of "MXLDEPTH"'
141 CALL PRINT_ERROR( msgBuf , myThid )
142 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
143 & '=> need to change "data.diagnostics" accordingly'
144 CALL PRINT_ERROR( msgBuf , myThid )
145 ndCount = ndCount + 1
146 ENDIF
147 IF ( diagName.EQ.'KPPghat ' ) THEN
148 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
149 & diagName, '" was retired in favor of "KPPghatK"'
150 CALL PRINT_ERROR( msgBuf , myThid )
151 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
152 & '=> need to change "data.diagnostics" accordingly'
153 CALL PRINT_ERROR( msgBuf , myThid )
154 ndCount = ndCount + 1
155 ENDIF
156 IF ( diagName.EQ.'SIyneg ' ) THEN
157 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
158 & diagName, '" was retired in favor of "SIdHbOCN"'
159 CALL PRINT_ERROR( msgBuf , myThid )
160 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
161 & '=> need to change "data.diagnostics" accordingly'
162 CALL PRINT_ERROR( msgBuf , myThid )
163 ndCount = ndCount + 1
164 ENDIF
165 IF ( diagName.EQ.'SIfice ' ) THEN
166 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
167 & diagName, '" was retired in favor of "SIdHbATC"'
168 CALL PRINT_ERROR( msgBuf , myThid )
169 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
170 & '=> need to change "data.diagnostics" accordingly'
171 CALL PRINT_ERROR( msgBuf , myThid )
172 ndCount = ndCount + 1
173 ENDIF
174 IF ( diagName.EQ.'SIsnwice' ) THEN
175 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
176 & diagName, '" was retired in favor of "SIdHbFLO"'
177 CALL PRINT_ERROR( msgBuf , myThid )
178 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
179 & '=> need to change "data.diagnostics" accordingly'
180 CALL PRINT_ERROR( msgBuf , myThid )
181 ndCount = ndCount + 1
182 ENDIF
183 IF ( diagName.EQ.'SIthdgrh' ) THEN
184 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
185 & diagName, '" was retired in favor of "SIdHb*"'
186 CALL PRINT_ERROR( msgBuf , myThid )
187 WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
188 & '=> need to change "data.diagnostics" accordingly'
189 CALL PRINT_ERROR( msgBuf , myThid )
190 ndCount = ndCount + 1
191 ENDIF
192
193 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
194 ENDIF
195 IF ( ndCount.EQ.0 ) RETURN
196
197 ENDDO
198 m1 = 1
199 ENDDO
200
201 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
202
203 _END_MASTER(myThid)
204
205 RETURN
206 END

  ViewVC Help
Powered by ViewVC 1.1.22