/[MITgcm]/MITgcm/pkg/ptracers/ptracers_readparms.F
ViewVC logotype

Diff of /MITgcm/pkg/ptracers/ptracers_readparms.F

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

revision 1.24 by jmc, Tue May 23 23:32:41 2006 UTC revision 1.33 by jmc, Thu Aug 21 15:16:01 2008 UTC
# Line 18  C     !USES: Line 18  C     !USES:
18  #include "SIZE.h"  #include "SIZE.h"
19  #include "EEPARAMS.h"  #include "EEPARAMS.h"
20  #include "PTRACERS_SIZE.h"  #include "PTRACERS_SIZE.h"
21  #include "PTRACERS.h"  #include "PTRACERS_PARAMS.h"
22  #include "PARAMS.h"  #include "PARAMS.h"
23  #ifdef ALLOW_MNC  #ifdef ALLOW_MNC
24  #include "MNC_PARAMS.h"  #include "MNC_PARAMS.h"
# Line 39  C     msgBuf     :: message buffer Line 39  C     msgBuf     :: message buffer
39        INTEGER ic        INTEGER ic
40        CHARACTER*(MAX_LEN_MBUF) msgBuf        CHARACTER*(MAX_LEN_MBUF) msgBuf
41        _RL PTRACERS_diffKr(PTRACERS_num)        _RL PTRACERS_diffKr(PTRACERS_num)
42          _RL tauTr1ClimRelax
43    
44  C     PTRACERS_taveFreq :: Frequency with which time-averaged PTRACERS  C     PTRACERS_taveFreq :: Frequency with which time-averaged PTRACERS
45  C                          are written to post-processing files.  C                          are written to post-processing files.
46    C     tauTr1ClimRelax :: old parameter (will be removed 1 day)
47        NAMELIST /PTRACERS_PARM01/        NAMELIST /PTRACERS_PARM01/
48         &     tauTr1ClimRelax,
49       &     PTRACERS_dumpFreq,       &     PTRACERS_dumpFreq,
50       &     PTRACERS_taveFreq,       &     PTRACERS_taveFreq,
51       &     PTRACERS_monitorFreq,       &     PTRACERS_monitorFreq,
# Line 55  C                          are written t Line 58  C                          are written t
58       &     PTRACERS_ref,       &     PTRACERS_ref,
59       &     PTRACERS_EvPrRn,       &     PTRACERS_EvPrRn,
60       &     PTRACERS_useGMRedi,       &     PTRACERS_useGMRedi,
61         &     PTRACERS_useDWNSLP,
62       &     PTRACERS_useKPP,       &     PTRACERS_useKPP,
63       &     PTRACERS_Iter0,       &     PTRACERS_Iter0,
64       &     PTRACERS_numInUse,       &     PTRACERS_numInUse,
# Line 69  C                          are written t Line 73  C                          are written t
73       &     PTRACERS_pickup_write_mnc,       &     PTRACERS_pickup_write_mnc,
74       &     PTRACERS_pickup_read_mnc       &     PTRACERS_pickup_read_mnc
75    
76          _BEGIN_MASTER(myThid)
77    
78  C     This routine has been called by the main model so we set our  C     This routine has been called by the main model so we set our
79  C     internal flag to indicate we are in business  C     internal flag to indicate we are in business
80        PTRACERSisON=.TRUE.  c     PTRACERSisON=.TRUE.
81    C Note(jmc): remove this flag which is not really usefull (not set properly
82    C            when usePTRACERS=F and always TRUE otherwise);
83    C            much better to use "usePTRACERS" flag instead.
84    
85    C     Set ptracer IO & diagnostics labels (2 characters long)
86          CALL PTRACERS_SET_IOLABEL(
87         O                           PTRACERS_ioLabel,
88         I                           PTRACERS_num, myThid )
89    
90  C     Set defaults values for parameters in PTRACERS.h  C     Set defaults values for parameters in PTRACERS.h
91        PTRACERS_dumpFreq    = dumpFreq        PTRACERS_dumpFreq    = dumpFreq
# Line 91  C     Set defaults values for parameters Line 105  C     Set defaults values for parameters
105          ENDDO          ENDDO
106          PTRACERS_EvPrRn(iTracer)=UNSET_RL          PTRACERS_EvPrRn(iTracer)=UNSET_RL
107          PTRACERS_useGMRedi(iTracer)=useGMRedi          PTRACERS_useGMRedi(iTracer)=useGMRedi
108          PTRACERS_useKPP(iTracer)=useKPP          PTRACERS_useDWNSLP(iTracer)=useDOWN_SLOPE
109            PTRACERS_useKPP(iTracer)   =useKPP
110          PTRACERS_initialFile(iTracer)=' '          PTRACERS_initialFile(iTracer)=' '
111          DO ic = 1,MAX_LEN_FNAM          DO ic = 1,MAX_LEN_FNAM
112            PTRACERS_names(iTracer)(ic:ic) = ' '            PTRACERS_names(iTracer)(ic:ic) = ' '
# Line 101  C     Set defaults values for parameters Line 116  C     Set defaults values for parameters
116        ENDDO        ENDDO
117        PTRACERS_useRecords       = .FALSE.        PTRACERS_useRecords       = .FALSE.
118  #ifdef ALLOW_MNC  #ifdef ALLOW_MNC
119        PTRACERS_timeave_mnc      = timeave_mnc .AND. useMNC        PTRACERS_timeave_mnc      = useMNC .AND. timeave_mnc
120        PTRACERS_snapshot_mnc     = snapshot_mnc .AND. useMNC        PTRACERS_snapshot_mnc     = useMNC .AND. snapshot_mnc
121        PTRACERS_monitor_mnc      = monitor_mnc .AND. useMNC        PTRACERS_monitor_mnc      = useMNC .AND. monitor_mnc
122        PTRACERS_pickup_write_mnc = pickup_write_mnc .AND. useMNC        PTRACERS_pickup_write_mnc = useMNC .AND. pickup_write_mnc
123        PTRACERS_pickup_read_mnc  = pickup_read_mnc .AND. useMNC        PTRACERS_pickup_read_mnc  = useMNC .AND. pickup_read_mnc
124  #else  #else
125        PTRACERS_timeave_mnc      = .FALSE.        PTRACERS_timeave_mnc      = .FALSE.
126        PTRACERS_snapshot_mnc     = .FALSE.        PTRACERS_snapshot_mnc     = .FALSE.
# Line 113  C     Set defaults values for parameters Line 128  C     Set defaults values for parameters
128        PTRACERS_pickup_write_mnc = .FALSE.        PTRACERS_pickup_write_mnc = .FALSE.
129        PTRACERS_pickup_read_mnc  = .FALSE.        PTRACERS_pickup_read_mnc  = .FALSE.
130  #endif  #endif
131          tauTr1ClimRelax = 0.
132    
133  C     Open and read the data.ptracers file  C     Open and read the data.ptracers file
       _BEGIN_MASTER(myThid)  
134        WRITE(msgBuf,'(A)') ' PTRACERS_READPARMS: opening data.ptracers'        WRITE(msgBuf,'(A)') ' PTRACERS_READPARMS: opening data.ptracers'
135        CALL PRINT_MESSAGE(msgBuf, standardMessageUnit,        CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
136       &                   SQUEEZE_RIGHT , 1)       &                    SQUEEZE_RIGHT , myThid )
137        CALL OPEN_COPY_DATA_FILE(        CALL OPEN_COPY_DATA_FILE(
138       I                   'data.ptracers', 'PTRACERS_READPARMS',       I                   'data.ptracers', 'PTRACERS_READPARMS',
139       O                   iUnit,       O                   iUnit,
# Line 126  C     Open and read the data.ptracers fi Line 141  C     Open and read the data.ptracers fi
141        READ(UNIT=iUnit,NML=PTRACERS_PARM01)        READ(UNIT=iUnit,NML=PTRACERS_PARM01)
142        WRITE(msgBuf,'(A)')        WRITE(msgBuf,'(A)')
143       &  ' PTRACERS_READPARMS: finished reading data.ptracers'       &  ' PTRACERS_READPARMS: finished reading data.ptracers'
144        CALL PRINT_MESSAGE(msgBuf, standardMessageUnit,        CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
145       &                   SQUEEZE_RIGHT , 1)       &                    SQUEEZE_RIGHT , myThid )
146    
147  C     Close the open data file  C     Close the open data file
148        CLOSE(iUnit)        CLOSE(iUnit)
       _END_MASTER(myThid)  
   
 C     Everyone else must wait for the parameters to be loaded  
       _BARRIER  
149    
150  C     Now set-up any remaining parameters that result from the input  C     Now set-up any remaining parameters that result from the input
151  C     parameters  C     parameters
152    
153    C     Tracer 1 climatology relaxation time scale (<- but the code is gone !)
154          IF ( tauTr1ClimRelax .EQ. 0. ) THEN
155           lambdaTr1ClimRelax = 0.
156          ELSE
157           lambdaTr1ClimRelax = 1./tauTr1ClimRelax
158          ENDIF
159    
160  C     If PTRACERS_numInUse was not set in data.ptracers then we can  C     If PTRACERS_numInUse was not set in data.ptracers then we can
161  C     assume that all PTRACERS fields will be in use  C     assume that all PTRACERS fields will be in use
162        IF (PTRACERS_numInUse.LT.0) THEN        IF (PTRACERS_numInUse.LT.0) THEN
# Line 146  C     assume that all PTRACERS fields wi Line 164  C     assume that all PTRACERS fields wi
164        ENDIF        ENDIF
165  C     Check we are not trying to use more tracers than allowed  C     Check we are not trying to use more tracers than allowed
166        IF (PTRACERS_numInUse.GT.PTRACERS_num) THEN        IF (PTRACERS_numInUse.GT.PTRACERS_num) THEN
167          WRITE(msgBuf,'(A,I2,A,I2,A)')          WRITE(msgBuf,'(A,I4,A,I4,A)')
168       &       ' PTRACERS_READPARMS: You requested ',PTRACERS_numInUse,       &       ' PTRACERS_READPARMS: You requested',PTRACERS_numInUse,
169       &       ' tracers at run time when only ',PTRACERS_num,       &       ' tracers at run time when only',PTRACERS_num,
170       &       ' were specified at compile time. Naughty! '       &       ' were specified at compile time. Naughty! '
171          CALL PRINT_ERROR(msgBuf, 1)          CALL PRINT_ERROR( msgBuf, myThid )
172          STOP 'ABNORMAL END: S/R PTRACERS_READPARMS'          STOP 'ABNORMAL END: S/R PTRACERS_READPARMS'
173        ENDIF        ENDIF
174  C     Check that enough parameters were specified  C     Check that enough parameters were specified
175        DO iTracer=1,PTRACERS_numInUse        DO iTracer=1,PTRACERS_numInUse
176          IF (PTRACERS_advScheme(iTracer).EQ.0) THEN          IF (PTRACERS_advScheme(iTracer).EQ.0) THEN
177            WRITE(msgBuf,'(A,A,I2)')            WRITE(msgBuf,'(A,A,I3)')
178       &         ' PTRACERS_READPARMS: ',       &         ' PTRACERS_READPARMS: ',
179       &         'No advect. scheme specified for tracer #',       &         'No advect. scheme specified for tracer #',
180       &         iTracer       &         iTracer
181            CALL PRINT_ERROR(msgBuf, 1)            CALL PRINT_ERROR( msgBuf, myThid )
182            STOP 'ABNORMAL END: S/R PTRACERS_READPARMS'            STOP 'ABNORMAL END: S/R PTRACERS_READPARMS'
183          ENDIF          ENDIF
184        ENDDO        ENDDO
# Line 169  C     Check that enough parameters were Line 187  C     Check that enough parameters were
187         IF ( PTRACERS_ImplVertAdv(iTracer) ) THEN         IF ( PTRACERS_ImplVertAdv(iTracer) ) THEN
188          WRITE(msgBuf,'(A)')          WRITE(msgBuf,'(A)')
189       &   'PTRACERS_READPARMS: #undef INCLUDE_IMPLVERTADV_CODE'       &   'PTRACERS_READPARMS: #undef INCLUDE_IMPLVERTADV_CODE'
190          CALL PRINT_ERROR( msgBuf , myThid)          CALL PRINT_ERROR( msgBuf, myThid )
191          WRITE(msgBuf,'(2A,I2,A)') 'PTRACERS_READPARMS:',          WRITE(msgBuf,'(2A,I3,A)') 'PTRACERS_READPARMS:',
192       &   ' but pTracers_ImplVertAdv(',iTracer,' ) is TRUE'       &   ' but pTracers_ImplVertAdv(',iTracer,' ) is TRUE'
193          CALL PRINT_ERROR( msgBuf , myThid)          CALL PRINT_ERROR( msgBuf, myThid )
194          STOP 'ABNORMAL END: S/R PTRACERS_READPARMS'          STOP 'ABNORMAL END: S/R PTRACERS_READPARMS'
195         ENDIF         ENDIF
196        ENDDO        ENDDO
197  #endif  #endif
198        DO iTracer=1,PTRACERS_numInUse        DO iTracer=1,PTRACERS_numInUse
199          PTRACERS_useGMRedi(iTracer) = PTRACERS_useGMRedi(iTracer)          IF ( PTRACERS_useGMRedi(iTracer) .AND. .NOT.useGMRedi ) THEN
200       &                           .AND.useGMRedi            WRITE(msgBuf,'(2A,I3,A)') 'PTRACERS_READPARMS:',
201          PTRACERS_useKPP(iTracer) = PTRACERS_useKPP(iTracer)       &     ' pTracers_useGMRedi(',iTracer,' ) is TRUE'
202       &                        .AND.useKPP            CALL PRINT_ERROR( msgBuf, myThid )
203              WRITE(msgBuf,'(A,L5,A)')
204         &     'PTRACERS_READPARMS: But not useGMRedi (=',useGMRedi,')'
205              CALL PRINT_ERROR( msgBuf, myThid )
206              STOP 'ABNORMAL END: S/R PTRACERS_READPARMS'
207            ENDIF
208            IF ( PTRACERS_useDWNSLP(iTracer) .AND. .NOT.useDOWN_SLOPE ) THEN
209              WRITE(msgBuf,'(2A,I3,A)') 'PTRACERS_READPARMS:',
210         &     ' pTracers_useDWNSLP(',iTracer,' ) is TRUE'
211              CALL PRINT_ERROR( msgBuf, myThid )
212              WRITE(msgBuf,'(2A,L5,A)') 'PTRACERS_READPARMS:',
213         &     ' But not useDOWN_SLOPE (=', useDOWN_SLOPE, ')'
214              CALL PRINT_ERROR( msgBuf, myThid )
215              STOP 'ABNORMAL END: S/R PTRACERS_READPARMS'
216            ENDIF
217            IF ( PTRACERS_useKPP(iTracer) .AND. .NOT.useKPP ) THEN
218              WRITE(msgBuf,'(2A,I3,A)') 'PTRACERS_READPARMS:',
219         &     ' pTracers_useKPP(',iTracer,' ) is TRUE'
220              CALL PRINT_ERROR( msgBuf, myThid )
221              WRITE(msgBuf,'(A,L5,A)')
222         &     'PTRACERS_READPARMS: But not useKPP (=',useKPP,')'
223              CALL PRINT_ERROR( msgBuf, myThid )
224              STOP 'ABNORMAL END: S/R PTRACERS_READPARMS'
225            ENDIF
226          IF ( PTRACERS_diffKr(iTracer).NE.UNSET_RL ) THEN          IF ( PTRACERS_diffKr(iTracer).NE.UNSET_RL ) THEN
227           DO k=1,Nr           DO k=1,Nr
228            PTRACERS_diffKrNr(k,iTracer)=PTRACERS_diffKr(iTracer)            PTRACERS_diffKrNr(k,iTracer)=PTRACERS_diffKr(iTracer)
# Line 190  C     Check that enough parameters were Line 231  C     Check that enough parameters were
231        ENDDO        ENDDO
232    
233  #ifdef ALLOW_MNC  #ifdef ALLOW_MNC
234        PTRACERS_timeave_mnc      =        PTRACERS_timeave_mnc      = useMNC .AND. PTRACERS_timeave_mnc
235       &     PTRACERS_timeave_mnc      .AND. useMNC        PTRACERS_snapshot_mnc     = useMNC .AND. PTRACERS_snapshot_mnc
236        PTRACERS_snapshot_mnc     =        PTRACERS_monitor_mnc      = useMNC .AND. PTRACERS_monitor_mnc
237       &     PTRACERS_snapshot_mnc     .AND. useMNC        PTRACERS_pickup_write_mnc = useMNC .AND. PTRACERS_pickup_write_mnc
238        PTRACERS_monitor_mnc      =        PTRACERS_pickup_read_mnc  = useMNC .AND. PTRACERS_pickup_read_mnc
      &     PTRACERS_monitor_mnc      .AND. useMNC .AND. monitor_mnc  
       PTRACERS_pickup_write_mnc =  
      &     PTRACERS_pickup_write_mnc .AND. useMNC  
       PTRACERS_pickup_read_mnc  =  
      &     PTRACERS_pickup_read_mnc  .AND. useMNC  
239    
240        PTRACERS_timeave_mdsio      = (.NOT. PTRACERS_timeave_mnc)        PTRACERS_timeave_mdsio      = (.NOT. PTRACERS_timeave_mnc)
241       &     .OR. outputTypesInclusive       &     .OR. outputTypesInclusive
# Line 211  C     Check that enough parameters were Line 247  C     Check that enough parameters were
247       &     .OR. outputTypesInclusive       &     .OR. outputTypesInclusive
248        PTRACERS_pickup_read_mdsio  = (.NOT. PTRACERS_pickup_read_mnc)        PTRACERS_pickup_read_mdsio  = (.NOT. PTRACERS_pickup_read_mnc)
249       &     .OR. outputTypesInclusive       &     .OR. outputTypesInclusive
   
250  #else  #else
251        PTRACERS_timeave_mnc        = .FALSE.        PTRACERS_timeave_mnc        = .FALSE.
252        PTRACERS_snapshot_mnc       = .FALSE.        PTRACERS_snapshot_mnc       = .FALSE.
# Line 228  C     Check that enough parameters were Line 263  C     Check that enough parameters were
263  C--   Print a summary of pTracer parameter values:  C--   Print a summary of pTracer parameter values:
264        iUnit = standardMessageUnit        iUnit = standardMessageUnit
265        WRITE(msgBuf,'(A)') '// ==================================='        WRITE(msgBuf,'(A)') '// ==================================='
266        CALL PRINT_MESSAGE( msgBuf, iUnit, SQUEEZE_RIGHT , 1)        CALL PRINT_MESSAGE( msgBuf, iUnit, SQUEEZE_RIGHT , myThid )
267        WRITE(msgBuf,'(A)') '// PTRACERS parameters '        WRITE(msgBuf,'(A)') '// PTRACERS parameters '
268        CALL PRINT_MESSAGE( msgBuf, iUnit, SQUEEZE_RIGHT , 1)        CALL PRINT_MESSAGE( msgBuf, iUnit, SQUEEZE_RIGHT , myThid )
269        WRITE(msgBuf,'(A)') '// ==================================='        WRITE(msgBuf,'(A)') '// ==================================='
270        CALL PRINT_MESSAGE( msgBuf, iUnit, SQUEEZE_RIGHT , 1)        CALL PRINT_MESSAGE( msgBuf, iUnit, SQUEEZE_RIGHT , myThid )
271        CALL WRITE_0D_I( PTRACERS_numInUse, INDEX_NONE,        CALL WRITE_0D_I( PTRACERS_numInUse, INDEX_NONE,
272       &   'PTRACERS_numInUse =',       &   'PTRACERS_numInUse =',
273       &   ' /* number of tracers */')       &   ' /* number of tracers */')
# Line 247  C--   Print a summary of pTracer paramet Line 282  C--   Print a summary of pTracer paramet
282       &   ' /* Frequency^-1 for time-Aver. output (s) */')       &   ' /* Frequency^-1 for time-Aver. output (s) */')
283        CALL WRITE_0D_L( PTRACERS_useRecords, INDEX_NONE,        CALL WRITE_0D_L( PTRACERS_useRecords, INDEX_NONE,
284       &   'PTRACERS_useRecords =', ' /* all tracers in 1 file */')       &   'PTRACERS_useRecords =', ' /* all tracers in 1 file */')
285          
286        CALL WRITE_0D_L( PTRACERS_timeave_mnc, INDEX_NONE,        CALL WRITE_0D_L( PTRACERS_timeave_mnc, INDEX_NONE,
287       &     'PTRACERS_timeave_mnc =',       &     'PTRACERS_timeave_mnc =',
288       &     ' /* use MNC for Tave output */')       &     ' /* use MNC for Tave output */')
# Line 255  C--   Print a summary of pTracer paramet Line 290  C--   Print a summary of pTracer paramet
290       &     'PTRACERS_snapshot_mnc =',       &     'PTRACERS_snapshot_mnc =',
291       &     ' /* use MNC for snapshot output */')       &     ' /* use MNC for snapshot output */')
292        CALL WRITE_0D_L( PTRACERS_pickup_write_mnc, INDEX_NONE,        CALL WRITE_0D_L( PTRACERS_pickup_write_mnc, INDEX_NONE,
293       &     'PTRACERS_pickup_write_mnc =',       &     'PTRACERS_pickup_write_mnc =',
294       &     ' /* use MNC for writing pickups */')       &     ' /* use MNC for writing pickups */')
295        CALL WRITE_0D_L( PTRACERS_pickup_read_mnc, INDEX_NONE,        CALL WRITE_0D_L( PTRACERS_pickup_read_mnc, INDEX_NONE,
296       &     'PTRACERS_pickup_read_mnc =',       &     'PTRACERS_pickup_read_mnc =',
297       &     ' /* use MNC for reading pickups */')       &     ' /* use MNC for reading pickups */')
298    
299        DO iTracer=1,PTRACERS_numInUse        DO iTracer=1,PTRACERS_numInUse
300          WRITE(msgBuf,'(A)') ' -----------------------------------'          WRITE(msgBuf,'(A)') ' -----------------------------------'
301          CALL PRINT_MESSAGE( msgBuf, iUnit, SQUEEZE_RIGHT , 1)          CALL PRINT_MESSAGE( msgBuf, iUnit, SQUEEZE_RIGHT, myThid )
302          WRITE(msgBuf,'(A,I4)') ' tracer number : ',iTracer          WRITE(msgBuf,'(A,I4)') ' tracer number : ',iTracer
303          CALL PRINT_MESSAGE( msgBuf, iUnit, SQUEEZE_RIGHT , 1)          CALL PRINT_MESSAGE( msgBuf, iUnit, SQUEEZE_RIGHT, myThid )
304            CALL WRITE_0D_C( PTRACERS_ioLabel(iTracer), 0, INDEX_NONE,
305         &     'PTRACERS_ioLabel =', ' /* tracer IO Label */')
306          CALL WRITE_0D_I( PTRACERS_advScheme(iTracer), INDEX_NONE,          CALL WRITE_0D_I( PTRACERS_advScheme(iTracer), INDEX_NONE,
307       &     'PTRACERS_advScheme =', ' /* Advection Scheme */')       &     'PTRACERS_advScheme =', ' /* Advection Scheme */')
308          CALL WRITE_0D_L( PTRACERS_ImplVertAdv(iTracer), INDEX_NONE,          CALL WRITE_0D_L( PTRACERS_ImplVertAdv(iTracer), INDEX_NONE,
# Line 279  C--   Print a summary of pTracer paramet Line 316  C--   Print a summary of pTracer paramet
316       &     'PTRACERS_diffKrNr =', ' /* Vertical Diffusivity */')       &     'PTRACERS_diffKrNr =', ' /* Vertical Diffusivity */')
317          CALL WRITE_0D_L( PTRACERS_useGMRedi(iTracer), INDEX_NONE,          CALL WRITE_0D_L( PTRACERS_useGMRedi(iTracer), INDEX_NONE,
318       &     'PTRACERS_useGMRedi =', ' /* apply GM-Redi */')       &     'PTRACERS_useGMRedi =', ' /* apply GM-Redi */')
319            CALL WRITE_0D_L( PTRACERS_useDWNSLP(iTracer), INDEX_NONE,
320         &     'PTRACERS_useDWNSLP =', ' /* apply DOWN-SLOPE Flow */')
321          CALL WRITE_0D_L( PTRACERS_useKPP(iTracer), INDEX_NONE,          CALL WRITE_0D_L( PTRACERS_useKPP(iTracer), INDEX_NONE,
322       &     'PTRACERS_useKPP =', ' /* apply KPP scheme */')       &     'PTRACERS_useKPP =', ' /* apply KPP scheme */')
323          CALL WRITE_1D_R8( PTRACERS_ref(1,iTracer), Nr, INDEX_K,          CALL WRITE_1D_R8( PTRACERS_ref(1,iTracer), Nr, INDEX_K,
# Line 288  C--   Print a summary of pTracer paramet Line 327  C--   Print a summary of pTracer paramet
327    
328        ENDDO        ENDDO
329          WRITE(msgBuf,'(A)') ' -----------------------------------'          WRITE(msgBuf,'(A)') ' -----------------------------------'
330          CALL PRINT_MESSAGE( msgBuf, iUnit, SQUEEZE_RIGHT , 1)          CALL PRINT_MESSAGE( msgBuf, iUnit, SQUEEZE_RIGHT, myThid )
331    
332          _END_MASTER(myThid)
333    C     Everyone else must wait for the parameters to be loaded
334          _BARRIER
335    
336  #endif /* ALLOW_PTRACERS */  #endif /* ALLOW_PTRACERS */
337    
338        RETURN        RETURN

Legend:
Removed from v.1.24  
changed lines
  Added in v.1.33

  ViewVC Help
Powered by ViewVC 1.1.22