/[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.1 - (hide annotations) (download)
Sun Nov 19 21:59:56 2006 UTC (17 years, 5 months ago) by jmc
Branch: MAIN
CVS Tags: mitgcm_mapl_00, checkpoint58u_post, checkpoint58w_post, checkpoint60, checkpoint61, checkpoint58x_post, checkpoint58t_post, checkpoint59q, checkpoint59p, checkpoint59r, checkpoint59e, checkpoint59d, checkpoint59g, checkpoint59f, checkpoint59a, checkpoint59c, checkpoint59b, checkpoint59m, checkpoint59l, checkpoint59o, checkpoint59n, checkpoint59i, checkpoint59h, checkpoint59k, checkpoint59j, checkpoint59, checkpoint58y_post, checkpoint58v_post, checkpoint58s_post, checkpoint61d, checkpoint61e, checkpoint61b, checkpoint61c, checkpoint61a
new S/R: check for retired (or renamed) diagnostics.

1 jmc 1.1 C $Header: $
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, nbFlds, fldsList, myThid )
14    
15     C !DESCRIPTION:
16     C Check a list of fields for disable diagnostics,
17     C starting with the current one:
18     C print relevant error message and return the number
19     C of disable diagnostics that this list contains.
20    
21     C !USES:
22     IMPLICIT NONE
23     #include "SIZE.h"
24     #include "EEPARAMS.h"
25     #include "PARAMS.h"
26     #include "DIAGNOSTICS_SIZE.h"
27     #include "DIAGNOSTICS.h"
28    
29     C !INPUT PARAMETERS:
30     C ld :: current ouput stream number
31     C md :: current field in ouput stream ld
32     C nbLists :: number of output streams
33     C nbFlds(n):: number of diagnostics for output stream # n
34     C fldsList :: list of field names to check
35     C myThid :: my Thread Id. number
36     INTEGER ld, md, nbLists
37     INTEGER nbFlds(numlists)
38     CHARACTER*8 fldsList(numperlist,numlists)
39     INTEGER myThid
40     C !OUTPUT PARAMETERS:
41     C ndCount :: number of disable diagnostics in list "fldsList"
42     INTEGER ndCount
43     CEOP
44    
45     C !LOCAL VARIABLES:
46     CHARACTER*(MAX_LEN_MBUF) msgBuf
47     LOGICAL found
48     CHARACTER*8 diagName
49     INTEGER n,m,m1,i
50    
51     ndCount = 0.
52     _BEGIN_MASTER(myThid)
53    
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     C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
138     ENDIF
139     IF ( ndCount.EQ.0 ) RETURN
140    
141     ENDDO
142     m1 = 1
143     ENDDO
144    
145     C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
146    
147     _END_MASTER(myThid)
148    
149     RETURN
150     END

  ViewVC Help
Powered by ViewVC 1.1.22