--- MITgcm/pkg/diagnostics/diagnostics_write.F 2005/06/26 16:51:49 1.23 +++ MITgcm/pkg/diagnostics/diagnostics_write.F 2006/03/20 15:15:39 1.28 @@ -1,4 +1,4 @@ -C $Header: /home/ubuntu/mnt/e9_copy/MITgcm/pkg/diagnostics/diagnostics_write.F,v 1.23 2005/06/26 16:51:49 jmc Exp $ +C $Header: /home/ubuntu/mnt/e9_copy/MITgcm/pkg/diagnostics/diagnostics_write.F,v 1.28 2006/03/20 15:15:39 jmc Exp $ C $Name: $ #include "DIAG_OPTIONS.h" @@ -16,11 +16,11 @@ C myThid :: my Thread Id number C*********************************************************************** IMPLICIT NONE +#include "EEPARAMS.h" #include "SIZE.h" #include "DIAGNOSTICS_SIZE.h" -#include "DIAGNOSTICS.h" -#include "EEPARAMS.h" #include "PARAMS.h" +#include "DIAGNOSTICS.h" C !INPUT PARAMETERS: _RL myTime @@ -32,9 +32,6 @@ INTEGER myItM1, wrIter LOGICAL dump2fileNow, write2file _RL phiSec, freqSec, wrTime -#ifdef ALLOW_CAL - INTEGER thisdate(4), prevdate(4) -#endif #ifdef ALLOW_FIZHI logical alarm2 character *9 tagname @@ -50,14 +47,6 @@ C*** Check to see IF its time for Diagnostic Output *** C*********************************************************************** -#ifdef ALLOW_CAL - IF ( calendarDumps ) THEN -C- Determine calendar dates for this and previous time step. - call cal_GetDate(myiter ,mytime ,thisdate,mythid) - call cal_GetDate(myiter-1,mytime-deltaTClock,prevdate,mythid) - ENDIF -#endif - write2file = .FALSE. DO n = 1,nlists freqSec = freq(n) @@ -79,32 +68,22 @@ dump2fileNow = DIFF_PHASE_MULTIPLE( phiSec, freqSec, & wrTime, deltaTclock ) #ifdef ALLOW_FIZHI - if( useFIZHI) then - write(tagname,'(A,I2.2)')'diagtag',n - dump2fileNow = alarm2(tagname) - endif + IF( useFIZHI) THEN + write(tagname,'(A,I2.2)')'diagtag',n + dump2fileNow = alarm2(tagname) + ENDIF #endif - #ifdef ALLOW_CAL - IF ( calendarDumps .AND. ( - & ( freqSec.GE. 2592000 .AND. freqSec.LE. 2678400 ) .OR. - & ( freqSec.GE.31104000 .AND. freqSec.LE.31968000 ))) THEN -C-- Convert approximate months (30-31 days) and years (360-372 days) -C to exact calendar months and years. - dump2fileNow = .FALSE. -C- Monthly freqSec: - IF( freqSec.GE. 2592000 .AND. freqSec.LE. 2678400 .AND. - & (thisdate(1)-prevdate(1)).GT.50 ) dump2fileNow = .TRUE. -C- Yearly freqSec: - IF( freqSec.GE.31104000 .AND. freqSec.LE.31968000 .AND. - & (thisdate(1)-prevdate(1)).GT.5000 ) dump2fileNow = .TRUE. + IF ( useCAL ) THEN + CALL CAL_TIME2DUMP( freqSec, deltaTClock, + U dump2fileNow, + I myTime, myIter, myThid ) ENDIF -#endif - +#endif /* ALLOW_CAL */ IF ( dump2fileNow .OR. & (myTime.EQ.endTime .AND. dumpatlast) ) THEN write2file = .TRUE. - CALL DIAGNOSTICS_OUT(n,wrIter,myTime,myThid) + CALL DIAGNOSTICS_OUT(n,wrIter,wrTime,myThid) ENDIF ENDDO @@ -130,16 +109,15 @@ dump2fileNow = DIFF_PHASE_MULTIPLE( phiSec, freqSec, & wrTime, deltaTclock ) #ifdef ALLOW_FIZHI - if( useFIZHI) then - write(tagname,'(A,I2.2)')'diagStg',n - dump2fileNow = alarm2(tagname) - endif + IF( useFIZHI) THEN + write(tagname,'(A,I2.2)')'diagStg',n + dump2fileNow = alarm2(tagname) + ENDIF #endif - IF ( dump2fileNow .OR. & (myTime.EQ.endTime .AND. dumpatlast) ) THEN write2file = .TRUE. - CALL DIAGSTATS_OUTPUT(n,wrIter,myThid) + CALL DIAGSTATS_OUTPUT(n,wrTime,wrIter,myThid) ENDIF ENDDO @@ -164,28 +142,18 @@ dump2fileNow = DIFF_PHASE_MULTIPLE( phiSec, freqSec, & wrTime, deltaTclock ) #ifdef ALLOW_FIZHI - if( useFIZHI) then + IF( useFIZHI) THEN write(tagname,'(A,I2.2)')'diagtag',n dump2fileNow = alarm2(tagname) - endif + ENDIF #endif - #ifdef ALLOW_CAL - IF ( calendarDumps .AND. ( - & ( freqSec.GE. 2592000 .AND. freqSec.LE. 2678400 ) .OR. - & ( freqSec.GE.31104000 .AND. freqSec.LE.31968000 ))) THEN -C-- Convert approximate months (30-31 days) and years (360-372 days) -C to exact calendar months and years. - dump2fileNow = .FALSE. -C- Monthly freqSec: - IF( freqSec.GE. 2592000 .AND. freqSec.LE. 2678400 .AND. - & (thisdate(1)-prevdate(1)).GT.50 ) dump2fileNow = .TRUE. -C- Yearly freqSec: - IF( freqSec.GE.31104000 .AND. freqSec.LE.31968000 .AND. - & (thisdate(1)-prevdate(1)).GT.5000 ) dump2fileNow = .TRUE. + IF ( useCAL ) THEN + CALL CAL_TIME2DUMP( freqSec, deltaTClock, + U dump2fileNow, + I myTime, myIter, myThid ) ENDIF -#endif - +#endif /* ALLOW_CAL */ IF ( dump2fileNow .OR. & (myTime.EQ.endTime .AND. dumpatlast) & ) CALL DIAGNOSTICS_CLEAR(n,myThid) @@ -199,10 +167,10 @@ dump2fileNow = DIFF_PHASE_MULTIPLE( phiSec, freqSec, & wrTime, deltaTclock ) #ifdef ALLOW_FIZHI - if( useFIZHI) then - write(tagname,'(A,I2.2)')'diagStg',n - dump2fileNow = alarm2(tagname) - endif + IF( useFIZHI) THEN + write(tagname,'(A,I2.2)')'diagStg',n + dump2fileNow = alarm2(tagname) + ENDIF #endif IF ( dump2fileNow .OR. & (myTime.EQ.endTime .AND. dumpatlast)