7 |
CBOP |
CBOP |
8 |
C !ROUTINE: WRITE_STATE |
C !ROUTINE: WRITE_STATE |
9 |
C !INTERFACE: |
C !INTERFACE: |
10 |
SUBROUTINE WRITE_STATE ( myCurrentTime, myIter, myThid ) |
SUBROUTINE WRITE_STATE ( myTime, myIter, myThid ) |
11 |
C !DESCRIPTION: \bv |
C !DESCRIPTION: \bv |
12 |
C *==========================================================* |
C *==========================================================* |
13 |
C | SUBROUTINE WRITE_STATE |
C | SUBROUTINE WRITE_STATE |
68 |
C == Routine arguments == |
C == Routine arguments == |
69 |
C myThid - Thread number for this instance of the routine. |
C myThid - Thread number for this instance of the routine. |
70 |
C myIter - Iteration number |
C myIter - Iteration number |
71 |
C myCurrentTime - Current time of simulation ( s ) |
C myTime - Current time of simulation ( s ) |
72 |
_RL myCurrentTime |
_RL myTime |
73 |
INTEGER myThid |
INTEGER myThid |
74 |
INTEGER myIter |
INTEGER myIter |
75 |
|
|
80 |
CEOP |
CEOP |
81 |
|
|
82 |
IF ( |
IF ( |
83 |
& DIFFERENT_MULTIPLE(dumpFreq,myCurrentTime, |
& DIFFERENT_MULTIPLE(dumpFreq,myTime, |
84 |
& myCurrentTime-deltaTClock) .OR. |
& myTime-deltaTClock) .OR. |
85 |
& myCurrentTime.EQ.endTime .OR. |
& myTime.EQ.endTime .OR. |
86 |
& myCurrentTime.EQ.startTime |
& myTime.EQ.startTime |
87 |
& ) THEN |
& ) THEN |
88 |
iRec = int ( (myCurrentTime-startTime) / dumpFreq +1.5 ) |
iRec = int ( (myTime-startTime) / dumpFreq +1.5 ) |
89 |
|
|
90 |
C-- Going to really do some IO. Make everyone except master thread wait. |
C-- Going to really do some IO. Make everyone except master thread wait. |
91 |
_BARRIER |
_BARRIER |
145 |
|
|
146 |
#endif /* MULTIPLE_RECORD_STATE_FILES */ |
#endif /* MULTIPLE_RECORD_STATE_FILES */ |
147 |
|
|
148 |
|
#ifdef ALLOW_PTRACERS |
149 |
|
IF (usePTRACERS) CALL PTRACERS_WRITE_STATE(myIter,myTime,myThid) |
150 |
|
#endif /* ALLOW_PTRACERS */ |
151 |
_END_MASTER( myThid ) |
_END_MASTER( myThid ) |
152 |
_BARRIER |
_BARRIER |
153 |
|
|