File indexing completed on 2018-03-02 18:42:21 UTC
view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
91672e10e3 Alis*0001 #include "MONITOR_OPTIONS.h"
1389d71047 Chri*0002
7633b97660 Ed H*0003
0004
0005
0006
0007
2741539ec0 Ed H*0008 SUBROUTINE MON_OUT_I( pref, value, foot, myThid )
1389d71047 Chri*0009
7633b97660 Ed H*0010
49aab2cab9 Jean*0011
7633b97660 Ed H*0012
0013
2741539ec0 Ed H*0014
0015
0016
1389d71047 Chri*0017 CHARACTER*(*) pref
0018 INTEGER value
0019 CHARACTER*(*) foot
7633b97660 Ed H*0020 INTEGER myThid
0021
1389d71047 Chri*0022
815d3bb6a3 Ed H*0023 CALL MON_OUT_ALL(pref, foot, 1, value, 0.0d0, myThid)
1389d71047 Chri*0024 RETURN
0025 END
7633b97660 Ed H*0026
0027
2741539ec0 Ed H*0028
0029
7633b97660 Ed H*0030
2741539ec0 Ed H*0031
0032 SUBROUTINE MON_OUT_RS( pref, value, foot, myThid )
1389d71047 Chri*0033
2741539ec0 Ed H*0034
0035
1389d71047 Chri*0036
2741539ec0 Ed H*0037
0038
0039
0040
1389d71047 Chri*0041 CHARACTER*(*) pref
0042 _RS value
0043 CHARACTER*(*) foot
2741539ec0 Ed H*0044 INTEGER myThid
0045
815d3bb6a3 Ed H*0046 REAL*8 dtmp
0047 dtmp = value
1389d71047 Chri*0048
815d3bb6a3 Ed H*0049 CALL MON_OUT_ALL(pref, foot, 2, 0, dtmp, myThid)
2741539ec0 Ed H*0050 RETURN
0051 END
1389d71047 Chri*0052
2741539ec0 Ed H*0053
0054
0055
1389d71047 Chri*0056
2741539ec0 Ed H*0057
815d3bb6a3 Ed H*0058 SUBROUTINE MON_OUT_RL( pref, value, foot, myThid )
1389d71047 Chri*0059
2741539ec0 Ed H*0060
0061
1389d71047 Chri*0062
2741539ec0 Ed H*0063
0064
0065
0066
0067 CHARACTER*(*) pref
0068 _RL value
0069 CHARACTER*(*) foot
0070 INTEGER myThid
0071
815d3bb6a3 Ed H*0072 REAL*8 dtmp
0073 dtmp = value
1389d71047 Chri*0074
815d3bb6a3 Ed H*0075 CALL MON_OUT_ALL(pref, foot, 2, 0, dtmp, myThid)
2741539ec0 Ed H*0076 RETURN
0077 END
1389d71047 Chri*0078
2741539ec0 Ed H*0079
0080
0081
1389d71047 Chri*0082
2741539ec0 Ed H*0083
0084 SUBROUTINE MON_OUT_ALL(
49aab2cab9 Jean*0085 I pref, foot,
815d3bb6a3 Ed H*0086 I itype, ival, dval,
2741539ec0 Ed H*0087 I myThid )
67067d3ff1 Alis*0088
2741539ec0 Ed H*0089
0090
1389d71047 Chri*0091
2741539ec0 Ed H*0092
0093 IMPLICIT NONE
1389d71047 Chri*0094 #include "SIZE.h"
0095 #include "EEPARAMS.h"
f02794c1c2 Dimi*0096 #include "PARAMS.h"
1389d71047 Chri*0097 #include "MONITOR.h"
0098
2741539ec0 Ed H*0099
0100
0101
0102 CHARACTER*(*) pref, foot
0103 INTEGER itype
0104 INTEGER ival
815d3bb6a3 Ed H*0105 REAL*8 dval
2741539ec0 Ed H*0106 INTEGER myThid
0107
1389d71047 Chri*0108
49aab2cab9 Jean*0109
0110 INTEGER IFNBLNK
0111 INTEGER ILNBLNK
0112 LOGICAL MASTER_CPU_IO
0113 EXTERNAL MASTER_CPU_IO
0114
2741539ec0 Ed H*0115
0116
0117
0118
1389d71047 Chri*0119 CHARACTER*(MAX_LEN_MBUF) msgBuf
0120 INTEGER lBuf
357126def9 Ed H*0121 INTEGER i, I0,I1, IL
0122 CHARACTER*(100) mon_vname
0123 INTEGER nvname
e0a17f1619 Ed H*0124 INTEGER ivarr(1)
0125 REAL*8 dvarr(1)
0126
49aab2cab9 Jean*0127 IF ( MASTER_CPU_IO(myThid) ) THEN
1389d71047 Chri*0128
d53a42ca6b Ed H*0129 ivarr(1) = ival
0130 dvarr(1) = dval
49aab2cab9 Jean*0131
d53a42ca6b Ed H*0132 msgBuf = ' '
0133 lBuf = 0
49aab2cab9 Jean*0134
d53a42ca6b Ed H*0135 DO i = 1,100
0136 mon_vname(i:i) = ' '
0137 ENDDO
49aab2cab9 Jean*0138
d53a42ca6b Ed H*0139 I0 = IFNBLNK(mon_head)
0140 I1 = ILNBLNK(mon_head)
0141 IL = I1-I0+1
0142 IF ( IL .GT. 0 .AND. lBuf+IL+1 .LE. MAX_LEN_MBUF ) THEN
0143 msgBuf(1:IL) = mon_head
0144 lBuf = IL+1
0145 msgBuf(lBuf:lBuf) = ' '
357126def9 Ed H*0146 ENDIF
49aab2cab9 Jean*0147
d53a42ca6b Ed H*0148 IF ( mon_pref(1:mon_prefL) .NE. mon_string_none .AND.
0149 & lBuf+mon_prefL+1 .LE. MAX_LEN_MBUF ) THEN
357126def9 Ed H*0150 lBuf = lBuf+1
d53a42ca6b Ed H*0151 msgBuf(lBuf:lBuf+mon_prefL-1) = mon_pref(1:mon_prefL)
0152 lBuf = lBuf+mon_prefL-1
0153 mon_vname(1:mon_prefL) = mon_pref(1:mon_prefL)
0154 nvname = mon_prefL
0155 ELSE
0156 nvname = 0
357126def9 Ed H*0157 ENDIF
49aab2cab9 Jean*0158
d53a42ca6b Ed H*0159 I0 = IFNBLNK(pref)
0160 I1 = ILNBLNK(pref)
0161 IL = I1-I0+1
0162 IF ( IL .GT. 0 ) THEN
49aab2cab9 Jean*0163 IF ( pref(I0:I1) .NE. mon_string_none .AND.
d53a42ca6b Ed H*0164 & lBuf+IL+1 .LE. MAX_LEN_MBUF ) THEN
0165 lBuf = lBuf+1
0166 msgBuf(lBuf:lBuf+IL-1) = pref(I0:I1)
0167 lBuf = lBuf+IL-1
0168 mon_vname((nvname+1):(nvname+IL)) = pref(I0:I1)
0169 nvname = nvname + IL
c815342335 Ed H*0170 ENDIF
d53a42ca6b Ed H*0171 ENDIF
49aab2cab9 Jean*0172
d53a42ca6b Ed H*0173 I0 = IFNBLNK(foot)
0174 I1 = ILNBLNK(foot)
0175 IL = I1-I0+1
0176 IF ( IL .GT. 0 ) THEN
49aab2cab9 Jean*0177 IF ( foot(I0:I1) .NE. mon_string_none .AND.
d53a42ca6b Ed H*0178 & lBuf+IL+1 .LE. MAX_LEN_MBUF ) THEN
0179 lBuf = lBuf+1
0180 msgBuf(lBuf:lBuf+IL-1) = foot(I0:I1)
0181 lBuf = lBuf+IL-1
0182 mon_vname((nvname+1):(nvname+IL)) = foot(I0:I1)
0183 nvname = nvname + IL
0184 ENDIF
0185 ENDIF
357126def9 Ed H*0186
d53a42ca6b Ed H*0187
0188
0189
49aab2cab9 Jean*0190
d53a42ca6b Ed H*0191 msgBuf(35:35) = '='
49aab2cab9 Jean*0192
d53a42ca6b Ed H*0193 IF (mon_write_stdout) THEN
0194 IF (itype .EQ. 1)
0195 & WRITE(msgBuf(36:57),'(1X,I21)') ival
0196 IF (itype .EQ. 2)
0197 & WRITE(msgBuf(36:57),'(1X,1P1E21.13)') dval
0198
49aab2cab9 Jean*0199
d53a42ca6b Ed H*0200
0201
0202
0203
0204
0205
0206
0207 CALL PRINT_MESSAGE(msgBuf, mon_ioUnit, SQUEEZE_RIGHT, 1)
0208 ENDIF
49aab2cab9 Jean*0209
357126def9 Ed H*0210 #ifdef ALLOW_MNC
d53a42ca6b Ed H*0211 IF (useMNC .AND. mon_write_mnc) THEN
0212 CALL MNC_CW_APPEND_VNAME(
0213 & mon_vname, '-_-_--__-__t', 0,0, myThid)
0214 IF (itype .EQ. 1)
0215 & CALL MNC_CW_I_W(
0216 & 'I',mon_fname,1,1,mon_vname, ivarr, myThid)
0217 IF (itype .EQ. 2)
0218 & CALL MNC_CW_RL_W(
0219 & 'D',mon_fname,1,1,mon_vname, dvarr, myThid)
0220 ENDIF
357126def9 Ed H*0221 #endif /* ALLOW_MNC */
0222
49aab2cab9 Jean*0223
d53a42ca6b Ed H*0224 ENDIF
67067d3ff1 Alis*0225
1389d71047 Chri*0226 RETURN
0227 END
2741539ec0 Ed H*0228
0229