C $Header: /u/gcmpack/MITgcm/pkg/ocn_compon_interf/cpl_write_pickup.F,v 1.5 2009/01/05 15:21:36 dfer Exp $
C $Name: $
#include "CPP_OPTIONS.h"
CBOP
C !ROUTINE: CPL_WRITE_PICKUP
C !INTERFACE:
SUBROUTINE CPL_WRITE_PICKUP(
I suff, myTime, myIter, myThid )
C !DESCRIPTION: \bv
C *==========================================================*
C | SUBROUTINE CPL_WRITE_PICKUP |
C | o Store coupling state for restart. |
C | - Oceanic version - |
C *==========================================================*
C | Presently, the atmospheric compon. is in charge of the |
C | writing of coupling fields ; nothing done here for now. |
C *==========================================================*
C \ev
C !USES:
IMPLICIT NONE
C == Global variables ==
#include "SIZE.h"
#include "EEPARAMS.h"
#include "PARAMS.h"
#include "CPL_PARAMS.h"
#include "OCNIDS.h"
#include "OCNCPL.h"
C !INPUT/OUTPUT PARAMETERS:
C == Routine arguments ==
C permPickup :: write a permanent pickup
C suff :: suffix for pickup file (eg. ckptA or 0000000010)
C myTime :: Current time in simulation
C myIter :: Current iteration number in simulation
C myThid :: My Thread Id number
LOGICAL permPickup
CHARACTER*(*) suff
_RL myTime
INTEGER myIter
INTEGER myThid
CEOP
#ifdef COMPONENT_MODULE
C == Local variables ==
C fn :: Workspace for building file name
C rec_ind :: index of the record in pickup file
CHARACTER*(MAX_LEN_FNAM) fn
INTEGER prec, rec_ind
WRITE(fn,'(A,A)') 'pickup_cpl.',suff
prec = precFloat64
rec_ind=0
IF ( .NOT. cpl_earlyExpImpCall ) THEN
CALL WRITE_REC_3D_RL( fn,prec,1, atmSLPr , 1, myIter, myThid )
CALL WRITE_REC_3D_RL( fn,prec,1, HeatFlux , 2, myIter, myThid )
CALL WRITE_REC_3D_RL( fn,prec,1, qShortWave, 3, myIter, myThid )
c CALL WRITE_REC_3D_RL( fn,prec,1, qLatent , 3, myIter, myThid )
c CALL WRITE_REC_3D_RL( fn,prec,1, qSensible , 3, myIter, myThid )
c CALL WRITE_REC_3D_RL( fn,prec,1, qLongWave , 3, myIter, myThid )
c CALL WRITE_REC_3D_RL( fn,prec,1, uVelGround, 3, myIter, myThid )
c CALL WRITE_REC_3D_RL( fn,prec,1, vVelGround, 3, myIter, myThid )
CALL WRITE_REC_3D_RL( fn,prec,1, tauX , 4, myIter, myThid )
CALL WRITE_REC_3D_RL( fn,prec,1, tauY , 5, myIter, myThid )
CALL WRITE_REC_3D_RL( fn,prec,1, FWFlux , 6, myIter, myThid )
CALL WRITE_REC_3D_RL( fn,prec,1, iceSaltFlx, 7, myIter, myThid )
CALL WRITE_REC_3D_RL( fn,prec,1, seaIceMass, 8, myIter, myThid )
rec_ind=8
ENDIF
IF ( ocnCpl_exchange_DIC ) THEN
c CALL WRITE_REC_3D_RL( fn,prec,1,
c & airCO2 , 9,myIter,myThid)
c CALL WRITE_REC_3D_RL( fn,prec,1,
c & surfWSpeed, 10,myIter,myThid)
c CALL WRITE_REC_3D_RL( fn,prec,1,
c & fracIce , 11,myIter,myThid)
CALL WRITE_REC_3D_RL( fn,prec,1,
& fluxCO2cpl, rec_ind+1,myIter,myThid)
ENDIF
c CALL WRITE_REC_3D_RL( fn,prec,1, ocMxlD2cpl,
c & 9+caroffset, myIter, myThid )
c CALL WRITE_REC_3D_RL( fn,prec,1, SSTocn2cpl,
c & 10+caroffset, myIter, myThid )
c CALL WRITE_REC_3D_RL( fn,prec,1, SSSocn2cpl,
c & 11+caroffset, myIter, myThid )
c CALL WRITE_REC_3D_RL( fn,prec,1, vSqocn2cpl,
c & 12+caroffset, myIter, myThid )
#endif /* COMPONENT_MODULE */
RETURN
END