Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:40:35 UTC

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
a456aa407c Andr*0001 #include "FIZHI_OPTIONS.h"
de2a7cda99 Andr*0002 CBOP
9f24b0ff20 Jean*0003 C     !ROUTINE: FIZHI_WRITE_STATE
de2a7cda99 Andr*0004 C     !INTERFACE:
                0005       SUBROUTINE FIZHI_WRITE_STATE( myTime, myIter, myThid )
                0006 
                0007 C     !DESCRIPTION: \bv
                0008 C     *==========================================================*
                0009 C     | S/R FIZHI_WRITE_STATE
                0010 C     | o Writes current state of fizhi package to an output file
                0011 C     | o     Called from do_the_model_io
                0012 C     *==========================================================*
                0013 C     \ev
                0014 
                0015 C     !USES:
                0016 CEOP
                0017       IMPLICIT NONE
                0018 
                0019 C     == Global variables ===
                0020 #include "SIZE.h"
                0021 #include "fizhi_SIZE.h"
f4a0368053 Andr*0022 #include "fizhi_land_SIZE.h"
de2a7cda99 Andr*0023 #include "fizhi_coms.h"
f4a0368053 Andr*0024 #include "fizhi_land_coms.h"
de2a7cda99 Andr*0025 #include "EEPARAMS.h"
                0026 #include "PARAMS.h"
                0027 
                0028 C     !INPUT/OUTPUT PARAMETERS:
                0029 C     == Routine Arguments ==
                0030 C     myTime  :: current time
                0031 C     myIter  :: time-step number
                0032 C     myThid  :: Number of this instance
                0033       _RL myTime
                0034       INTEGER myIter
                0035       INTEGER myThid
                0036 
9f24b0ff20 Jean*0037 C     !FUNCTIONS:
94a46dfe0d Jean*0038       LOGICAL  DIFFERENT_MULTIPLE
                0039       EXTERNAL DIFFERENT_MULTIPLE
180c245802 Andr*0040 
9f24b0ff20 Jean*0041 C     !LOCAL VARIABLES:
                0042 C     fn      :: character buffer for creating filename
                0043       CHARACTER*(MAX_LEN_FNAM) fn
                0044       INTEGER prec
                0045 
                0046 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
                0047 
180c245802 Andr*0048       IF (
b17871c70b Jean*0049      &     DIFFERENT_MULTIPLE(dumpFreq,myTime,deltaTClock)
                0050      &  .OR. dumpInitAndLast.AND.( myTime.EQ.endTime .OR.
                0051      &                             myTime.EQ.startTime  )
                0052      &   ) THEN
180c245802 Andr*0053 
9f24b0ff20 Jean*0054 C--   Write fields:
                0055        prec = writeBinaryPrec
                0056        WRITE( fn, '(A,I10.10)' ) 'fizhi_U.', myIter
                0057        CALL WRITE_REC_3D_RL( fn,prec, Nrphys, uphy, 1, myIter,myThid )
                0058        WRITE( fn, '(A,I10.10)' ) 'fizhi_V.', myIter
                0059        CALL WRITE_REC_3D_RL( fn,prec, Nrphys, vphy, 1, myIter,myThid )
                0060        WRITE( fn, '(A,I10.10)' ) 'fizhi_T.', myIter
                0061        CALL WRITE_REC_3D_RL( fn,prec, Nrphys, thphy, 1, myIter,myThid )
                0062        WRITE( fn, '(A,I10.10)' ) 'fizhi_S.', myIter
                0063        CALL WRITE_REC_3D_RL( fn,prec, Nrphys, sphy, 1, myIter,myThid )
180c245802 Andr*0064 
                0065       ENDIF
de2a7cda99 Andr*0066 
                0067       RETURN
                0068       END