/[MITgcm]/MITgcm/pkg/thsice/thsice_write_pickup.F
ViewVC logotype

Diff of /MITgcm/pkg/thsice/thsice_write_pickup.F

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

revision 1.4 by jmc, Sat Nov 5 00:57:00 2005 UTC revision 1.5 by jmc, Fri Oct 19 03:21:39 2007 UTC
# Line 5  C $Name$ Line 5  C $Name$
5  CBOP  CBOP
6  C     !ROUTINE: THSICE_WRITE_PICKUP  C     !ROUTINE: THSICE_WRITE_PICKUP
7  C     !INTERFACE:  C     !INTERFACE:
8        SUBROUTINE THSICE_WRITE_PICKUP(        SUBROUTINE THSICE_WRITE_PICKUP( permPickup, suff,
9       I                       prec, lgf, permCheckPoint,       I                                myTime, myIter, myThid )
      I                                  myIter, myThid )  
10    
11  C     !DESCRIPTION: \bv  C     !DESCRIPTION: \bv
12  C     *==========================================================*  C     *==========================================================*
# Line 28  C     === Global variables === Line 27  C     === Global variables ===
27    
28  C     !INPUT/OUTPUT PARAMETERS:  C     !INPUT/OUTPUT PARAMETERS:
29  C     == Routine arguments ==  C     == Routine arguments ==
30        INTEGER prec  C     permPickup :: write a permanent pickup
31        LOGICAL lgf  C     suff    :: suffix for pickup file (eg. ckptA or 0000000010)
32        LOGICAL permCheckPoint  C     myTime  :: Current time in simulation
33    C     myIter  :: Current iteration number in simulation
34    C     myThid  :: My Thread Id number
35          LOGICAL permPickup
36          CHARACTER*(*) suff
37          _RL     myTime
38        INTEGER myIter        INTEGER myIter
39        INTEGER myThid        INTEGER myThid
40  CEOP  CEOP
41    
42  #ifdef ALLOW_THSICE  #ifdef ALLOW_THSICE
43    
44  C     == Local variables ==        C     == Local variables ==
45        CHARACTER*(MAX_LEN_FNAM) fn        CHARACTER*(MAX_LEN_FNAM) fn
46          INTEGER prec
       IF ( permCheckPoint ) THEN  
         WRITE(fn,'(A,I10.10)') 'pickup_ic.',myIter  
       ELSE  
         WRITE(fn,'(A,A)') 'pickup_ic.',checkPtSuff(nCheckLev)  
       ENDIF  
47    
48        IF ( thSIce_pickup_write_mdsio ) THEN        IF ( thSIce_pickup_write_mdsio ) THEN
49          CALL MDSWRITEFIELD(fn,prec,lgf,'RL',1,iceMask,   1,          prec = precFloat64
50       &                                               myIter,myThid)          WRITE(fn,'(A,A)') 'pickup_ic.',suff
51          CALL MDSWRITEFIELD(fn,prec,lgf,'RL',1,iceHeight, 2,  
52       &                                               myIter,myThid)          CALL WRITE_REC_3D_RL( fn,prec, 1, iceMask,  1, myIter,myThid )
53          CALL MDSWRITEFIELD(fn,prec,lgf,'RL',1,snowHeight,3,          CALL WRITE_REC_3D_RL( fn,prec, 1, iceHeight,2, myIter,myThid )
54       &                                               myIter,myThid)          CALL WRITE_REC_3D_RL( fn,prec, 1,snowHeight,3, myIter,myThid )
55          CALL MDSWRITEFIELD(fn,prec,lgf,'RL',1,Tsrf,   4, myIter,myThid)          CALL WRITE_REC_3D_RL( fn,prec, 1, Tsrf,     4, myIter,myThid )
56          CALL MDSWRITEFIELD(fn,prec,lgf,'RL',1,Tice1,  5, myIter,myThid)          CALL WRITE_REC_3D_RL( fn,prec, 1, Tice1,    5, myIter,myThid )
57          CALL MDSWRITEFIELD(fn,prec,lgf,'RL',1,Tice2,  6, myIter,myThid)          CALL WRITE_REC_3D_RL( fn,prec, 1, Tice2,    6, myIter,myThid )
58          CALL MDSWRITEFIELD(fn,prec,lgf,'RL',1,Qice1,  7, myIter,myThid)          CALL WRITE_REC_3D_RL( fn,prec, 1, Qice1,    7, myIter,myThid )
59          CALL MDSWRITEFIELD(fn,prec,lgf,'RL',1,Qice2,  8, myIter,myThid)          CALL WRITE_REC_3D_RL( fn,prec, 1, Qice2,    8, myIter,myThid )
60          CALL MDSWRITEFIELD(fn,prec,lgf,'RL',1,snowAge,9, myIter,myThid)          CALL WRITE_REC_3D_RL( fn,prec, 1, snowAge,  9, myIter,myThid )
61    
62          IF ( stepFwd_oceMxL ) THEN          IF ( stepFwd_oceMxL ) THEN
63          CALL MDSWRITEFIELD(fn,prec,lgf,'RL',1,tOceMxL,10,myIter,myThid)           CALL WRITE_REC_3D_RL( fn,prec,1, tOceMxL, 10, myIter,myThid )
64          CALL MDSWRITEFIELD(fn,prec,lgf,'RL',1,sOceMxL,11,myIter,myThid)           CALL WRITE_REC_3D_RL( fn,prec,1, sOceMxL, 11, myIter,myThid )
65          ENDIF          ENDIF
66        ENDIF        ENDIF
67    
68  #ifdef ALLOW_MNC  #ifdef ALLOW_MNC
69        IF ( thSIce_pickup_write_mnc ) THEN        IF ( thSIce_pickup_write_mnc ) THEN
70          IF ( permCheckPoint ) THEN          IF ( permPickup ) THEN
71            WRITE(fn,'(A)') 'pickup_ic'            WRITE(fn,'(A)') 'pickup_ic'
72          ELSE          ELSE
73            WRITE(fn,'(A,A)') 'pickup_ic.',checkPtSuff(nCheckLev)            WRITE(fn,'(A,A)') 'pickup_ic.',suff
74          ENDIF          ENDIF
75  C       First ***define*** the file group name  C       First ***define*** the file group name
76          CALL MNC_CW_SET_UDIM(fn, 0, myThid)          CALL MNC_CW_SET_UDIM(fn, 0, myThid)
77          IF ( permCheckPoint ) THEN          IF ( permPickup ) THEN
78            CALL MNC_CW_SET_CITER(fn, 3, 3, myIter, 0, myThid)            CALL MNC_CW_SET_CITER(fn, 3, 3, myIter, 0, myThid)
79          ELSE          ELSE
80            CALL MNC_CW_SET_CITER(fn, 2, -1, -1, -1, myThid)            CALL MNC_CW_SET_CITER(fn, 2, -1, -1, -1, myThid)

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.5

  ViewVC Help
Powered by ViewVC 1.1.22