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

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

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


Revision 1.6 - (hide annotations) (download)
Sun Jan 19 14:42:58 2014 UTC (10 years, 3 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint64y, checkpoint64x, checkpoint64z, checkpoint64u, checkpoint64t, checkpoint64w, checkpoint64v, checkpoint65, 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, checkpoint65j, checkpoint65k, checkpoint65h, checkpoint65i, checkpoint65n, checkpoint65o, checkpoint65l, checkpoint65m, checkpoint65b, checkpoint65c, checkpoint65a, checkpoint65f, checkpoint65g, checkpoint65d, checkpoint65e, HEAD
Changes since 1.5: +2 -5 lines
minor fix

1 jmc 1.6 C $Header: /u/gcmpack/MITgcm/pkg/diagnostics/diagnostics_list_check.F,v 1.5 2013/06/11 01:34:13 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_LIST_CHECK
9    
10     C !INTERFACE:
11     SUBROUTINE DIAGNOSTICS_LIST_CHECK(
12     O ndCount,
13 dfer 1.2 I ld, md,
14     I nbLists, nbFlds, fldsList, myThid )
15 jmc 1.1
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 jmc 1.5 INTEGER nbFlds(numLists)
39     CHARACTER*8 fldsList(numperList,numLists)
40 jmc 1.1 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 jmc 1.6 ndCount = 0
53 jmc 1.1 _BEGIN_MASTER(myThid)
54    
55     C- File names:
56     m1 = md
57     DO n = ld,nbLists
58     DO m = m1,nbFlds(n)
59    
60     diagName = fldsList(m,n)
61     found = .FALSE.
62     IF ( ndCount.GT.0 ) THEN
63     C Search all possible model diagnostics
64     DO i=1,ndiagt
65     IF ( diagName.EQ.cdiag(i) ) found = .TRUE.
66     ENDDO
67     ENDIF
68     IF ( .NOT.found ) THEN
69     C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
70     IF ( diagName.EQ.'PRESSURE' ) THEN
71     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
72     & diagName, '" was replaced by "RCENTER "'
73     CALL PRINT_ERROR( msgBuf , myThid )
74     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
75     & '=> need to change "data.diagnostics" accordingly'
76     CALL PRINT_ERROR( msgBuf , myThid )
77     ndCount = ndCount + 1
78     ENDIF
79     IF ( diagName.EQ.'TICE ' ) THEN
80     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
81     & diagName, '" was replaced by "oceFreez"'
82     CALL PRINT_ERROR( msgBuf , myThid )
83     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
84     & '=> need to change "data.diagnostics" accordingly'
85     CALL PRINT_ERROR( msgBuf , myThid )
86     ndCount = ndCount + 1
87     ENDIF
88     IF ( diagName.EQ.'TAUX ' ) THEN
89     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
90     & diagName, '" was replaced by "oceTAUX "'
91     CALL PRINT_ERROR( msgBuf , myThid )
92     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
93     & '=> need to change "data.diagnostics" accordingly'
94     CALL PRINT_ERROR( msgBuf , myThid )
95     ndCount = ndCount + 1
96     ENDIF
97     IF ( diagName.EQ.'TAUY ' ) THEN
98     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
99     & diagName, '" was replaced by "oceTAUY "'
100     CALL PRINT_ERROR( msgBuf , myThid )
101     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
102     & '=> need to change "data.diagnostics" accordingly'
103     CALL PRINT_ERROR( msgBuf , myThid )
104     ndCount = ndCount + 1
105     ENDIF
106     IF ( diagName.EQ.'SWFLUX ' ) THEN
107     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
108     & diagName, '" was replaced by "oceQsw "'
109     CALL PRINT_ERROR( msgBuf , myThid )
110     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
111     & '=> need to change "data.diagnostics" accordingly'
112     CALL PRINT_ERROR( msgBuf , myThid )
113     ndCount = ndCount + 1
114     ENDIF
115     IF ( diagName(1:5).EQ.'DIFx_' .OR.
116     & diagName(1:5).EQ.'DIFxT' ) THEN
117     WRITE(msgBuf,'(5A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
118     & diagName, '" was replaced by "DFxE',
119     & diagName(5:8), '"'
120     CALL PRINT_ERROR( msgBuf , myThid )
121     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
122     & '=> need to change "data.diagnostics" accordingly'
123     CALL PRINT_ERROR( msgBuf , myThid )
124     ndCount = ndCount + 1
125     ENDIF
126     IF ( diagName(1:5).EQ.'DIFy_' .OR.
127     & diagName(1:5).EQ.'DIFyT' ) THEN
128     WRITE(msgBuf,'(5A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
129     & diagName, '" was replaced by "DFyE',
130     & diagName(5:8), '"'
131     CALL PRINT_ERROR( msgBuf , myThid )
132     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
133     & '=> need to change "data.diagnostics" accordingly'
134     CALL PRINT_ERROR( msgBuf , myThid )
135     ndCount = ndCount + 1
136     ENDIF
137 dfer 1.2 IF ( diagName.EQ.'KPPmld ' ) THEN
138     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
139     & diagName, '" was retired in favor of "MXLDEPTH"'
140     CALL PRINT_ERROR( msgBuf , myThid )
141     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
142     & '=> need to change "data.diagnostics" accordingly'
143     CALL PRINT_ERROR( msgBuf , myThid )
144     ndCount = ndCount + 1
145     ENDIF
146 jmc 1.3 IF ( diagName.EQ.'KPPghat ' ) THEN
147     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
148     & diagName, '" was retired in favor of "KPPghatK"'
149     CALL PRINT_ERROR( msgBuf , myThid )
150     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
151     & '=> need to change "data.diagnostics" accordingly'
152     CALL PRINT_ERROR( msgBuf , myThid )
153     ndCount = ndCount + 1
154     ENDIF
155 gforget 1.4 IF ( diagName.EQ.'SIyneg ' ) THEN
156     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
157     & diagName, '" was retired in favor of "SIdHbOCN"'
158     CALL PRINT_ERROR( msgBuf , myThid )
159     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
160     & '=> need to change "data.diagnostics" accordingly'
161     CALL PRINT_ERROR( msgBuf , myThid )
162     ndCount = ndCount + 1
163     ENDIF
164     IF ( diagName.EQ.'SIfice ' ) THEN
165     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
166     & diagName, '" was retired in favor of "SIdHbATC"'
167     CALL PRINT_ERROR( msgBuf , myThid )
168     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
169     & '=> need to change "data.diagnostics" accordingly'
170     CALL PRINT_ERROR( msgBuf , myThid )
171     ndCount = ndCount + 1
172     ENDIF
173     IF ( diagName.EQ.'SIsnwice' ) THEN
174     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
175     & diagName, '" was retired in favor of "SIdHbFLO"'
176     CALL PRINT_ERROR( msgBuf , myThid )
177     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
178     & '=> need to change "data.diagnostics" accordingly'
179     CALL PRINT_ERROR( msgBuf , myThid )
180     ndCount = ndCount + 1
181     ENDIF
182     IF ( diagName.EQ.'SIthdgrh' ) THEN
183     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
184     & diagName, '" was retired in favor of "SIdHb*"'
185     CALL PRINT_ERROR( msgBuf , myThid )
186     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
187     & '=> need to change "data.diagnostics" accordingly'
188     CALL PRINT_ERROR( msgBuf , myThid )
189     ndCount = ndCount + 1
190     ENDIF
191 jmc 1.5 IF ( diagName.EQ.'SI_FrcFx' ) THEN
192     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: diagnostic "',
193     & diagName, '" was retired (identical to "SI_Fract")'
194     CALL PRINT_ERROR( msgBuf , myThid )
195     WRITE(msgBuf,'(3A)') 'DIAGNOSTICS_LIST_CHECK: ',
196     & '=> need to change "data.diagnostics" accordingly'
197     CALL PRINT_ERROR( msgBuf , myThid )
198     ndCount = ndCount + 1
199     ENDIF
200    
201 jmc 1.1 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
202     ENDIF
203     IF ( ndCount.EQ.0 ) RETURN
204    
205     ENDDO
206     m1 = 1
207     ENDDO
208    
209     _END_MASTER(myThid)
210    
211     RETURN
212     END

  ViewVC Help
Powered by ViewVC 1.1.22