/[MITgcm]/MITgcm/pkg/monitor/mon_out.F
ViewVC logotype

Annotation of /MITgcm/pkg/monitor/mon_out.F

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


Revision 1.6 - (hide annotations) (download)
Sat Apr 3 21:17:10 2004 UTC (20 years, 2 months ago) by edhill
Branch: MAIN
Changes since 1.5: +80 -201 lines
 o removing duplicate code in mon_out.F in preparation for MNC output
 o convert all monitor files to protex-style comments

1 edhill 1.6 C $Header: /u/gcmpack/MITgcm/pkg/monitor/mon_out.F,v 1.5 2004/04/03 04:57:11 edhill Exp $
2 cnh 1.1 C $Name: $
3    
4 adcroft 1.3 #include "MONITOR_OPTIONS.h"
5 cnh 1.1
6 edhill 1.5 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
7     CBOP
8     C !ROUTINE: MON_OUT_I
9    
10     C !INTERFACE:
11 edhill 1.6 SUBROUTINE MON_OUT_I( pref, value, foot, myThid )
12 edhill 1.5
13     C !DESCRIPTION:
14     C Formatted integer I/O for monitor print out.
15    
16     C !INPUT PARAMETERS:
17 edhill 1.6 C pref - Field prefix ( ignored if == mon_string_none )
18     C value - Value to print
19     C foot - Field suffix ( ignored if == mon_string_none )
20 cnh 1.1 CHARACTER*(*) pref
21     INTEGER value
22     CHARACTER*(*) foot
23 edhill 1.5 INTEGER myThid
24     CEOP
25 cnh 1.1
26 edhill 1.6 CALL MON_OUT_ALL(pref, foot, 1, value, 0.0, 0.0d0, myThid)
27     RETURN
28     END
29 cnh 1.1
30 edhill 1.6 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
31     CBOP
32     C !ROUTINE: MON_OUT_RS
33 cnh 1.1
34 edhill 1.6 C !INTERFACE:
35     SUBROUTINE MON_OUT_RS( pref, value, foot, myThid )
36 cnh 1.1
37 edhill 1.6 C !DESCRIPTION:
38     C Formatted RS I/O for monitor print out.
39 cnh 1.1
40 edhill 1.6 C !INPUT PARAMETERS:
41     C pref - Field prefix ( ignored if == mon_string_none )
42     C value - Value to print
43     C foot - Field suffix ( ignored if == mon_string_none )
44     CHARACTER*(*) pref
45     _RS value
46     CHARACTER*(*) foot
47     INTEGER myThid
48     CEOP
49 cnh 1.1
50 edhill 1.6 CALL MON_OUT_ALL(pref, foot, 2, 0, value, 0.0d0, myThid)
51 cnh 1.1 RETURN
52     END
53 edhill 1.5
54     C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
55 edhill 1.6 CBOP
56     C !ROUTINE: MON_OUT_RL
57 edhill 1.5
58 edhill 1.6 C !INTERFACE:
59     SUBROUTINE MON_OUT_RL(pref, value, foot, myThid )
60 cnh 1.1
61 edhill 1.6 C !DESCRIPTION:
62     C Formatted RL I/O for monitor print out.
63 cnh 1.1
64 edhill 1.6 C !INPUT PARAMETERS:
65     C pref - Field prefix ( ignored if == mon_string_none )
66     C value - Value to print
67     C foot - Field suffix ( ignored if == mon_string_none )
68 cnh 1.1 CHARACTER*(*) pref
69 edhill 1.6 _RL value
70 cnh 1.1 CHARACTER*(*) foot
71 edhill 1.6 INTEGER myThid
72     CEOP
73 cnh 1.1
74 edhill 1.6 CALL MON_OUT_ALL(pref, foot, 3, 0, 0.0, value, myThid)
75     RETURN
76     END
77 cnh 1.1
78 edhill 1.6 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
79     CBOP 1
80     C !ROUTINE: MON_OUT_ALL
81 cnh 1.1
82 edhill 1.6 C !INTERFACE:
83     SUBROUTINE MON_OUT_ALL(
84     I pref, foot,
85     I itype, ival, rval, dval,
86     I myThid )
87 cnh 1.1
88 edhill 1.6 C !DESCRIPTION:
89     C Formatted I/O for monitor output.
90 cnh 1.1
91 edhill 1.6 C !USES:
92 cnh 1.1 IMPLICIT NONE
93     #include "SIZE.h"
94     #include "EEPARAMS.h"
95 dimitri 1.4 #include "PARAMS.h"
96     #include "EESUPPORT.h"
97 cnh 1.1 #include "MONITOR.h"
98 edhill 1.6 INTEGER IFNBLNK
99     INTEGER ILNBLNK
100    
101     C !INPUT PARAMETERS:
102     C pref - Field prefix ( ignored if == mon_string_none )
103     C foot - Field suffix ( ignored if == mon_string_none )
104     CHARACTER*(*) pref, foot
105     INTEGER itype
106     INTEGER ival
107     _RS rval
108     _RL dval
109     INTEGER myThid
110     CEOP
111 cnh 1.1
112 edhill 1.6 C !LOCAL VARIABLES:
113     C msgBuf - Buffer for building output string
114     C lBuf - Buffer for length
115     C I0 - Temps used in calculating string length
116 cnh 1.1 CHARACTER*(MAX_LEN_MBUF) msgBuf
117     INTEGER lBuf
118     INTEGER I0, I1, IL
119    
120     msgBuf = ' '
121     lBuf = 0
122    
123     I0 = IFNBLNK(mon_head)
124     I1 = ILNBLNK(mon_head)
125     IL = I1-I0+1
126     IF ( IL .GT. 0 .AND. lBuf+IL+1 .LE. MAX_LEN_MBUF ) THEN
127     msgBuf(1:IL) = mon_head
128     lBuf = IL+1
129     msgBuf(lBuf:lBuf) = ' '
130     ENDIF
131    
132     IF ( mon_pref(1:mon_prefL) .NE. mon_string_none .AND.
133     & lBuf+mon_prefL+1 .LE. MAX_LEN_MBUF ) THEN
134     lBuf = lBuf+1
135     msgBuf(lBuf:lBuf+mon_prefL-1) = mon_pref(1:mon_prefL)
136     lBuf = lBuf+mon_prefL-1
137     ENDIF
138    
139     I0 = IFNBLNK(pref)
140     I1 = ILNBLNK(pref)
141     IL = I1-I0+1
142     IF ( IL .GT. 0 ) THEN
143     IF ( pref(I0:I1) .NE. mon_string_none .AND.
144     & lBuf+IL+1 .LE. MAX_LEN_MBUF ) THEN
145     lBuf = lBuf+1
146     msgBuf(lBuf:lBuf+IL-1) = pref(I0:I1)
147     lBuf = lBuf+IL-1
148     ENDIF
149     ENDIF
150    
151     I0 = IFNBLNK(foot)
152     I1 = ILNBLNK(foot)
153     IL = I1-I0+1
154     IF ( IL .GT. 0 ) THEN
155     IF ( foot(I0:I1) .NE. mon_string_none .AND.
156     & lBuf+IL+1 .LE. MAX_LEN_MBUF ) THEN
157     lBuf = lBuf+1
158     msgBuf(lBuf:lBuf+IL-1) = foot(I0:I1)
159     lBuf = lBuf+IL-1
160     ENDIF
161     ENDIF
162    
163     msgBuf(35:35) = '='
164    
165 adcroft 1.2 _BEGIN_MASTER(myThid)
166 dimitri 1.4 #ifdef ALLOW_USE_MPI
167 edhill 1.6 IF ( .NOT. useSingleCPUIO .OR. mpiMyId .EQ. 0 ) THEN
168 dimitri 1.4 #endif /* ALLOW_USE_MPI */
169 edhill 1.6 IF (itype .EQ. 1)
170     & WRITE(msgBuf(36:57),'(1X,I21)') ival
171     IF (itype .EQ. 2)
172     & WRITE(msgBuf(36:57),'(1X,1P1E21.13)') rval
173     IF (itype .EQ. 3)
174     & WRITE(msgBuf(36:57),'(1X,1P1E21.13)') dval
175     CALL PRINT_MESSAGE( msgBuf, mon_ioUnit, SQUEEZE_RIGHT, 1 )
176 dimitri 1.4 #ifdef ALLOW_USE_MPI
177 edhill 1.6 ENDIF
178 dimitri 1.4 #endif /* ALLOW_USE_MPI */
179 adcroft 1.2 _END_MASTER()
180 cnh 1.1
181     RETURN
182     END
183 edhill 1.6
184     C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|

  ViewVC Help
Powered by ViewVC 1.1.22