32 |
|
|
33 |
#include "SIZE.h" |
#include "SIZE.h" |
34 |
#include "EEPARAMS.h" |
#include "EEPARAMS.h" |
|
c #include "EESUPPORT.h" |
|
35 |
#include "PARAMS.h" |
#include "PARAMS.h" |
36 |
#include "DIAGNOSTICS_SIZE.h" |
#include "DIAGNOSTICS_SIZE.h" |
37 |
#include "DIAGNOSTICS.h" |
#include "DIAGNOSTICS.h" |
44 |
#endif |
#endif |
45 |
|
|
46 |
C !INPUT PARAMETERS: |
C !INPUT PARAMETERS: |
47 |
|
C myThid :: my Thread Id number |
48 |
INTEGER myThid |
INTEGER myThid |
49 |
CEOP |
CEOP |
50 |
|
|
51 |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
C !LOCAL VARIABLES: |
52 |
|
INTEGER l, n, nlevs |
53 |
|
INTEGER dUnit, stdUnit |
54 |
|
CHARACTER*(MAX_LEN_MBUF) msgBuf |
55 |
|
CHARACTER*(72) ccHead, ccLine |
56 |
|
INTEGER ILNBLNK |
57 |
|
EXTERNAL ILNBLNK |
58 |
|
|
59 |
INTEGER n, nlevs |
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
60 |
|
|
61 |
nlevs = MAX(Nr,Nrphys) |
nlevs = MAX(Nr,Nrphys) |
62 |
|
|
70 |
IF (gdiag(n)(10:10) .EQ. 'M') kdiag(n) = nlevs - 1 |
IF (gdiag(n)(10:10) .EQ. 'M') kdiag(n) = nlevs - 1 |
71 |
ENDDO |
ENDDO |
72 |
|
|
73 |
|
_BEGIN_MASTER( myThid ) |
74 |
|
stdUnit = standardMessageUnit |
75 |
|
WRITE(msgBuf,'(2A)') |
76 |
|
& '------------------------------------------------------------' |
77 |
|
CALL PRINT_MESSAGE( msgBuf, stdUnit,SQUEEZE_RIGHT, myThid) |
78 |
|
WRITE(msgBuf,'(A)') 'DIAGNOSTICS_SET_LEVELS: done' |
79 |
|
CALL PRINT_MESSAGE( msgBuf, stdUnit,SQUEEZE_RIGHT, myThid) |
80 |
|
WRITE(msgBuf,'(A,I4)') |
81 |
|
& ' Total Nb of available Diagnostics: ndiagt=', ndiagt |
82 |
|
CALL PRINT_MESSAGE( msgBuf, stdUnit,SQUEEZE_RIGHT, myThid) |
83 |
|
|
84 |
|
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
85 |
|
C write a summary of the (long) list of all available diagnostics: |
86 |
|
IF ( debugLevel.GE.debLevA ) THEN |
87 |
|
|
88 |
|
WRITE(msgBuf,'(2A)') |
89 |
|
& ' write list of available Diagnostics to file: ', |
90 |
|
& 'available_diagnostics' |
91 |
|
CALL PRINT_MESSAGE( msgBuf, stdUnit,SQUEEZE_RIGHT, myThid) |
92 |
|
|
93 |
|
WRITE(ccHead,'(2A)') |
94 |
|
& ' Num |<-Name->|Levs|<-parsing code->|<-- Units -->|', |
95 |
|
& '<- Tile (max=80c)' |
96 |
|
DO l=1,LEN(ccLine) |
97 |
|
ccLine(l:l) = '-' |
98 |
|
ENDDO |
99 |
|
|
100 |
|
CALL MDSFINDUNIT( dUnit, mythid ) |
101 |
|
OPEN(dUnit, file='available_diagnostics', status='unknown', |
102 |
|
& form='formatted') |
103 |
|
WRITE(dUnit,'(A,I4)') |
104 |
|
& ' Total Nb of available Diagnostics: ndiagt=', ndiagt |
105 |
|
WRITE(dUnit,'(A)') ccLine |
106 |
|
WRITE(dUnit,'(A)') ccHead |
107 |
|
WRITE(dUnit,'(A)') ccLine |
108 |
|
DO n=1,ndiagt |
109 |
|
IF ( MOD(n,100).EQ.0 ) THEN |
110 |
|
WRITE(dUnit,'(A)') ccLine |
111 |
|
WRITE(dUnit,'(A)') ccHead |
112 |
|
WRITE(dUnit,'(A)') ccLine |
113 |
|
ENDIF |
114 |
|
l = ILNBLNK(tdiag(n)) |
115 |
|
IF (l.GE.1) THEN |
116 |
|
WRITE(dUnit,'(I4,3A,I3,6A)') n,' |',cdiag(n),'|', |
117 |
|
& kdiag(n),' |',gdiag(n),'|',udiag(n),'|',tdiag(n)(1:l) |
118 |
|
ELSE |
119 |
|
WRITE(dUnit,'(I4,3A,I3,6A)') n,' |',cdiag(n),'|', |
120 |
|
& kdiag(n),' |',gdiag(n),'|',udiag(n),'|' |
121 |
|
ENDIF |
122 |
|
ENDDO |
123 |
|
WRITE(dUnit,'(A)') ccLine |
124 |
|
WRITE(dUnit,'(A)') ccHead |
125 |
|
WRITE(dUnit,'(A)') ccLine |
126 |
|
CLOSE(dUnit) |
127 |
|
|
128 |
|
C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----| |
129 |
|
ENDIF |
130 |
|
_END_MASTER( myThid ) |
131 |
|
|
132 |
RETURN |
RETURN |
133 |
END |
END |