/[MITgcm]/MITgcm/model/src/do_the_model_io.F
ViewVC logotype

Diff of /MITgcm/model/src/do_the_model_io.F

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

revision 1.2 by cnh, Fri Apr 24 02:05:40 1998 UTC revision 1.3 by cnh, Thu May 21 18:25:49 1998 UTC
# Line 2  C $Header$ Line 2  C $Header$
2    
3  #include "CPP_EEOPTIONS.h"  #include "CPP_EEOPTIONS.h"
4    
5        SUBROUTINE DO_THE_MODEL_IO(myIter, myThid)        SUBROUTINE DO_THE_MODEL_IO(myCurrentTime, myIter, myThid)
6  C     /==========================================================\  C     /==========================================================\
7  C     | SUBROUTINE DO_THE_MODEL_IO                               |  C     | SUBROUTINE DO_THE_MODEL_IO                               |
8  C     | o Controlling routine for IO in model main time-stepping |  C     | o Controlling routine for IO in model main time-stepping |
# Line 35  C     == Global variables === Line 35  C     == Global variables ===
35  #include "DYNVARS.h"  #include "DYNVARS.h"
36  #include "CG2D.h"  #include "CG2D.h"
37    
38          LOGICAL  DIFFERENT_MULTIPLE
39          EXTERNAL DIFFERENT_MULTIPLE
40    
41  C     == Routine arguments ==  C     == Routine arguments ==
42  C     myThid - Thread number for this instance of the routine.  C     myThid - Thread number for this instance of the routine.
43  C     myIter - Iteration number  C     myIter - Iteration number
44    C     myCurrentTime - Current time of simulation ( s )
45        INTEGER myThid        INTEGER myThid
46        INTEGER myIter        INTEGER myIter
47          REAL    myCurrentTime
48    
49  C     == Local variables ==  C     == Local variables ==
50    C     suff - Hold suffix part of a filename
51          CHARACTER*(MAX_LEN_FNAM) suff
52          
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,10) .NE. 0 ) RETURN        IF ( MOD(myIter,1000) .EQ. 0 ) THEN    
57        _BARRIER         _BARRIER
58    
59  C--   Write "text-plots" of certain fields  C--    Write "text-plots" of certain fields
60        CALL PLOT_FIELD_XYZR8( uVel , 'uVel  ' , Nz, myIter, myThid )         CALL PLOT_FIELD_XYZR8( uVel , 'uVel  ' , Nz, myIter, myThid )
61        CALL PLOT_FIELD_XYZR8( vVel , 'vVel  ' , Nz, myIter, myThid )         CALL PLOT_FIELD_XYZR8( vVel , 'vVel  ' , Nz, myIter, myThid )
62        CALL PLOT_FIELD_XYZR8( theta, 'Theta ' , Nz, myIter, myThid )         CALL PLOT_FIELD_XYZR8( theta, 'Theta ' , Nz, myIter, myThid )
63        CALL PLOT_FIELD_XYZR8( rho, 'rho ' , Nz, myIter, myThid )         CALL PLOT_FIELD_XYZR8( rho, 'rho ' , Nz, myIter, myThid )
64        CALL PLOT_FIELD_XYR8( cg2d_x, 'cg2d_x ' , myIter, myThid )         CALL PLOT_FIELD_XYR8( cg2d_x, 'cg2d_x ' , myIter, myThid )
65    
66          ENDIF
67    
68    C--   Write model state to binary file
69           CALL WRITE_STATE( myCurrentTime, myIter, myThid )
70    C      WRITE(suff,'(I10.10)') myIter
71    C      CALL DFILE_SET_RW
72    C      CALL DFILE_SET_CONT_ON_ERROR
73    C      CALL WRITE_FLD_XYZ(  'U.',suff,      uVel)
74    C      CALL WRITE_FLD_XYZ(  'V.',suff,      vVel)
75    C      CALL WRITE_FLD_XYZ(  'T.',suff,     theta)
76    C      CALL WRITE_FLD_XYZ(  'S.',suff,      salt)
77    C      CALL WRITE_FLD_XYZ(  'W.',suff,  IO_tmp3d)
78    C      CALL WRITE_FLD_XYZ('RHO.',suff,  IO_tmp3d)
79    C      CALL WRITE_FLD_XYZ( 'PH.',suff,  IO_tmp3d)
80    C      CALL WRITE_FLD_XY ( 'PS.',suff,  IO_tmp2d)
81    
82    C--   Write model checkpoint files
83    C     nCheck = 1,2,...nCheckLev, 1,2,...nCheckLev, etc...
84    C     CALL WRITE_CHECKPOINT( myIter, myThid )
85    C     nCheck = MOD(nCheck,nCheckLev)+1
86    C     suff   = checkPtSuff(nCheck)
87    C     CALL DFILE_SET_RW
88    C     CALL DFILE_SET_CONT_ON_ERROR
89    C     CALL WRITE_FLD_XYZ(  'uVel.',suff,uVel  )
90    C     CALL WRITE_FLD_XYZ(  'vVel.',suff,vVel  )
91    C     CALL WRITE_FLD_XYZ( 'theta.',suff,theta )
92    C     CALL WRITE_FLD_XYZ(  'salt.',suff,salt  )
93    C     CALL WRITE_FLD_XY ('cg2d_x.',suff,cg2d_x)
94    C     CALL WRITE_FLD_XYZ(    'gu.',suff,gu    )
95    C     CALL WRITE_FLD_XYZ(    'gv.',suff,gv    )
96    C     CALL WRITE_FLD_XYZ( 'gunm1.',suff,gunm1 )
97    C     CALL WRITE_FLD_XYZ( 'gvnm1.',suff,gvnm1 )
98    
99        _BARRIER        _BARRIER
100  C  C
101        RETURN        RETURN

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

  ViewVC Help
Powered by ViewVC 1.1.22