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

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

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

revision 1.23 by jmc, Thu Aug 24 01:10:35 2006 UTC revision 1.27 by jmc, Fri Oct 19 14:36:47 2007 UTC
# Line 26  C     !USES: Line 26  C     !USES:
26  #include "SIZE.h"  #include "SIZE.h"
27  #include "EEPARAMS.h"  #include "EEPARAMS.h"
28  #include "PARAMS.h"  #include "PARAMS.h"
29    #include "RESTART.h"
30    
31  C     !INPUT/OUTPUT PARAMETERS:  C     !INPUT/OUTPUT PARAMETERS:
32  C     permPickup :: Is or is not a permanent pickup.  C     permPickup :: Is or is not a permanent pickup.
# Line 37  C     myThid     :: Thread number for th Line 38  C     myThid     :: Thread number for th
38        INTEGER myIter        INTEGER myIter
39        INTEGER myThid        INTEGER myThid
40    
 C     == Common blocks ==  
       COMMON /PCKP_GBLFLS/ globalFile  
       LOGICAL globalFile  
   
41  C     !LOCAL VARIABLES:  C     !LOCAL VARIABLES:
42  C     == Local variables ==  C     == Local variables ==
43  C     prec   :: file precision  C     prec   :: file precision
44  C     fn     :: Temp. for building file name string.  C     suffix :: pickup-name suffix
45  C     lgf    :: Flag to indicate whether to use global file mode.  C     lgf    :: Flag to indicate whether to use global file mode.
46        CHARACTER*(MAX_LEN_FNAM) fn        CHARACTER*(10) suffix
47        INTEGER prec        INTEGER prec
48        LOGICAL lgf        LOGICAL lgf
49  CEOP  CEOP
# Line 55  C     Going to really do some IO. Make e Line 52  C     Going to really do some IO. Make e
52        _BARRIER        _BARRIER
53    
54        prec = precFloat64        prec = precFloat64
55        lgf = globalFile        lgf = globalFiles
56    
57  C     Create suffix to pass on to package pickup routines  C     Create suffix to pass on to package pickup routines
58        IF ( permPickup ) THEN        IF ( permPickup ) THEN
59          WRITE(fn,'(I10.10)') myIter          WRITE(suffix,'(I10.10)') myIter
60        ELSE        ELSE
61          WRITE(fn,'(A)') checkPtSuff(nCheckLev)          WRITE(suffix,'(A)') checkPtSuff(nCheckLev)
62          ENDIF
63    
64    #ifdef ALLOW_GENERIC_ADVDIFF
65    C     Write restart file for 2nd-Order moment (active) Tracers
66          IF ( useGAD ) THEN
67            CALL GAD_WRITE_PICKUP(
68         I                 suffix, myTime, myIter, myThid )
69        ENDIF        ENDIF
70    #endif /* ALLOW_GENERIC_ADVDIFF */
71    
72  #ifdef ALLOW_CD_CODE  #ifdef ALLOW_CD_CODE
73        IF (useCDscheme) THEN        IF (useCDscheme) THEN
74          CALL CD_CODE_WRITE_CHECKPOINT(          CALL CD_CODE_WRITE_PICKUP( permPickup,
75       &       prec, lgf, permPickup, myIter, myThid)       I                     suffix, myTime, myIter, myThid )
76        ENDIF        ENDIF
77  #endif /* ALLOW_CD_CODE */  #endif /* ALLOW_CD_CODE */
78    
# Line 81  C     SPK 4/9/01: Open boundary checkpoi Line 86  C     SPK 4/9/01: Open boundary checkpoi
86    
87  #ifdef  ALLOW_SEAICE  #ifdef  ALLOW_SEAICE
88        IF ( useSEAICE ) THEN        IF ( useSEAICE ) THEN
89          CALL SEAICE_WRITE_PICKUP(          CALL SEAICE_WRITE_PICKUP( permPickup,
90       &       prec, lgf, permPickup, myIter, myThid)       I                    suffix, myTime, myIter, myThid )
91        ENDIF        ENDIF
92  #endif  /* ALLOW_SEAICE */  #endif  /* ALLOW_SEAICE */
93    
94  #ifdef ALLOW_THSICE  #ifdef ALLOW_THSICE
95        IF (useThSIce) THEN        IF (useThSIce) THEN
96          CALL THSICE_WRITE_PICKUP(          CALL THSICE_WRITE_PICKUP( permPickup,
97       &       prec, lgf, permPickup, myIter, myThid)       I                    suffix, myTime, myIter, myThid )
98        ENDIF        ENDIF
99  #endif /* ALLOW_THSICE */  #endif /* ALLOW_THSICE */
100    
101  #ifdef  COMPONENT_MODULE  #ifdef  COMPONENT_MODULE
102        IF (useCoupler) THEN        IF (useCoupler) THEN
103          CALL CPL_WRITE_PICKUP(          CALL CPL_WRITE_PICKUP(
104       &       prec, lgf, permPickup, myIter, myThid)       &                 suffix, myTime, myIter, myThid )
105        ENDIF        ENDIF
106  #endif  /* COMPONENT_MODULE */  #endif  /* COMPONENT_MODULE */
107    
# Line 110  C     Write restart file for floats Line 115  C     Write restart file for floats
115  #ifdef ALLOW_LAND  #ifdef ALLOW_LAND
116  C     Write pickup file for Land package:  C     Write pickup file for Land package:
117        IF (useLand) THEN        IF (useLand) THEN
118          CALL LAND_WRITE_PICKUP(permPickup,fn,          CALL LAND_WRITE_PICKUP( permPickup,
119       &       myTime,myIter,myThid)       &                  suffix, myTime, myIter, myThid )
120        ENDIF        ENDIF
121  #endif  #endif
122    
123  #ifdef ALLOW_FIZHI  #ifdef ALLOW_FIZHI
124  C     Write pickup file for fizhi package  C     Write pickup file for fizhi package
125        IF (usefizhi) THEN        IF (usefizhi) THEN
126          CALL FIZHI_WRITE_PICKUP(fn,myTime,myIter,myThid)          CALL FIZHI_WRITE_PICKUP(suffix,myTime,myIter,myThid)
127          CALL FIZHI_WRITE_VEGTILES(fn,0,myTime,myIter,myThid)          CALL FIZHI_WRITE_VEGTILES(suffix,0,myTime,myIter,myThid)
128          CALL FIZHI_WRITE_DATETIME(myTime,myIter,myThid)          CALL FIZHI_WRITE_DATETIME(myTime,myIter,myThid)
129        ENDIF        ENDIF
130  #endif  #endif
# Line 127  C     Write pickup file for fizhi packag Line 132  C     Write pickup file for fizhi packag
132  #ifdef ALLOW_DIAGNOSTICS  #ifdef ALLOW_DIAGNOSTICS
133  C     Write pickup file for diagnostics package  C     Write pickup file for diagnostics package
134        IF (useDiagnostics) THEN        IF (useDiagnostics) THEN
135          CALL DIAGNOSTICS_WRITE_PICKUP(permPickup,          CALL DIAGNOSTICS_WRITE_PICKUP( permPickup,
136       &       fn,myTime,myIter,myThid)       I                         suffix, myTime, myIter, myThid )
137        ENDIF        ENDIF
138  #endif  #endif
139    
140  #ifdef  ALLOW_GGL90  #ifdef  ALLOW_GGL90
141        IF ( useGGL90 ) THEN        IF ( useGGL90 ) THEN
142          CALL GGL90_WRITE_CHECKPOINT(          CALL GGL90_WRITE_PICKUP( permPickup,
143       &       prec, lgf, permPickup, myIter, myThid)       I                   suffix, myIter, myTime, myThid )
144        ENDIF        ENDIF
145  #endif  /* ALLOW_GGL90 */  #endif  /* ALLOW_GGL90 */
146    
147  #ifdef ALLOW_PTRACERS  #ifdef ALLOW_PTRACERS
148  C     Write restart file for passive tracers  C     Write restart file for passive tracers
149        IF (usePTRACERS) THEN        IF (usePTRACERS) THEN
150          CALL PTRACERS_WRITE_CHECKPOINT(permPickup,          CALL PTRACERS_WRITE_PICKUP( permPickup,
151       &       fn,myIter,myTime,myThid)       &                      suffix, myIter, myTime, myThid )
152        ENDIF        ENDIF
153  #endif /* ALLOW_PTRACERS */  #endif /* ALLOW_PTRACERS */
154    

Legend:
Removed from v.1.23  
changed lines
  Added in v.1.27

  ViewVC Help
Powered by ViewVC 1.1.22