53 |
|
|
54 |
C-- Generaly only thread 1 does IO here. It can't start until everyone's |
C-- Generaly only thread 1 does IO here. It can't start until everyone's |
55 |
C-- fields are ready. |
C-- fields are ready. |
56 |
IF ( MOD(myIter,1000) .EQ. 0 ) THEN |
IF ( |
57 |
|
& DIFFERENT_MULTIPLE(dumpFreq,myCurrentTime,myCurrentTime-deltaTClock) |
58 |
|
& ) THEN |
59 |
|
|
60 |
_BARRIER |
_BARRIER |
61 |
|
|
62 |
C-- Write "text-plots" of certain fields |
C-- Write "text-plots" of certain fields |
63 |
CALL PLOT_FIELD_XYZR8( uVel , 'uVel ' , Nz, myIter, myThid ) |
CALL PLOT_FIELD_XYZRL( uVel , 'Current uVel ' , Nz, myIter, myThid ) |
64 |
CALL PLOT_FIELD_XYZR8( vVel , 'vVel ' , Nz, myIter, myThid ) |
CALL PLOT_FIELD_XYZRL( vVel , 'Current vVel ' , Nz, myIter, myThid ) |
65 |
CALL PLOT_FIELD_XYZR8( theta, 'Theta ' , Nz, myIter, myThid ) |
CALL PLOT_FIELD_XYZRL( theta, 'Current theta ' , Nz, myIter, myThid ) |
66 |
CALL PLOT_FIELD_XYZR8( rho, 'rho ' , Nz, myIter, myThid ) |
CALL PLOT_FIELD_XYRL( cg2d_x, 'Current cg2d_x ' , myIter, myThid ) |
|
CALL PLOT_FIELD_XYR8( cg2d_x, 'cg2d_x ' , myIter, myThid ) |
|
67 |
|
|
68 |
ENDIF |
ENDIF |
69 |
|
|
70 |
C-- Write model state to binary file |
C-- Write model state to binary file |
71 |
CALL WRITE_STATE( myCurrentTime, myIter, myThid ) |
CALL WRITE_STATE( .FALSE., myCurrentTime, myIter, myThid ) |
72 |
C WRITE(suff,'(I10.10)') myIter |
|
|
C CALL DFILE_SET_RW |
|
|
C CALL DFILE_SET_CONT_ON_ERROR |
|
|
C CALL WRITE_FLD_XYZ( 'U.',suff, uVel) |
|
|
C CALL WRITE_FLD_XYZ( 'V.',suff, vVel) |
|
|
C CALL WRITE_FLD_XYZ( 'T.',suff, theta) |
|
|
C CALL WRITE_FLD_XYZ( 'S.',suff, salt) |
|
|
C CALL WRITE_FLD_XYZ( 'W.',suff, IO_tmp3d) |
|
|
C CALL WRITE_FLD_XYZ('RHO.',suff, IO_tmp3d) |
|
|
C CALL WRITE_FLD_XYZ( 'PH.',suff, IO_tmp3d) |
|
|
C CALL WRITE_FLD_XY ( 'PS.',suff, IO_tmp2d) |
|
|
|
|
|
C-- Write model checkpoint files |
|
|
C nCheck = 1,2,...nCheckLev, 1,2,...nCheckLev, etc... |
|
|
C CALL WRITE_CHECKPOINT( myIter, myThid ) |
|
|
C nCheck = MOD(nCheck,nCheckLev)+1 |
|
|
C suff = checkPtSuff(nCheck) |
|
|
C CALL DFILE_SET_RW |
|
|
C CALL DFILE_SET_CONT_ON_ERROR |
|
|
C CALL WRITE_FLD_XYZ( 'uVel.',suff,uVel ) |
|
|
C CALL WRITE_FLD_XYZ( 'vVel.',suff,vVel ) |
|
|
C CALL WRITE_FLD_XYZ( 'theta.',suff,theta ) |
|
|
C CALL WRITE_FLD_XYZ( 'salt.',suff,salt ) |
|
|
C CALL WRITE_FLD_XY ('cg2d_x.',suff,cg2d_x) |
|
|
C CALL WRITE_FLD_XYZ( 'gu.',suff,gu ) |
|
|
C CALL WRITE_FLD_XYZ( 'gv.',suff,gv ) |
|
|
C CALL WRITE_FLD_XYZ( 'gunm1.',suff,gunm1 ) |
|
|
C CALL WRITE_FLD_XYZ( 'gvnm1.',suff,gvnm1 ) |
|
|
|
|
|
_BARRIER |
|
73 |
C |
C |
74 |
RETURN |
RETURN |
75 |
END |
END |