C $Header: /home/ubuntu/mnt/e9_copy/MITgcm/pkg/ocn_compon_interf/ocn_cpl_diags.F,v 1.2 2005/04/06 18:44:12 jmc Exp $ C $Name: $ #include "PACKAGES_CONFIG.h" #include "CPP_OPTIONS.h" CStartOfInterFace SUBROUTINE OCN_CPL_DIAGS( bi, bj, myTime, myThid ) C /==========================================================\ C | SUBROUTINE OCN_CPL_DIAGS | C | o Calculate CPL diagnostics | C \==========================================================/ IMPLICIT NONE C === Global variables === #include "SIZE.h" #include "EEPARAMS.h" #include "PARAMS.h" #include "OCNCPL.h" #include "CPL_DIAGS.h" C == Routine arguments == C bi,bj - Tile index C myTime - Current time of simulation ( s ) C myThid - Number of this instance of the routine INTEGER bi, bj _RL myTime INTEGER myThid CEndOfInterface #ifdef COMPONENT_MODULE C == Local variables == INTEGER I,J,K _RL DDTT #ifdef ALLOW_TIMEAVE DDTT = deltaTclock DO J=1,sNy DO I=1,sNx SLPtave(i,j,bi,bj) = SLPtave(i,j,bi,bj) & + DDTT * atmSLPr(i,j,bi,bj) HFtave(i,j,bi,bj) = HFtave(i,j,bi,bj) & + DDTT * HeatFlux(i,j,bi,bj) QSWtave(i,j,bi,bj) = QSWtave(i,j,bi,bj) & + DDTT * qShortWave(i,j,bi,bj) c QLTtave(i,j,bi,bj) = QLTtave(i,j,bi,bj) c & + DDTT * qLatent(i,j,bi,bj) c QSNtave(i,j,bi,bj) = QSNtave(i,j,bi,bj) c & + DDTT * qSensible(i,j,bi,bj) c QLWtave(i,j,bi,bj) = QLWtave(i,j,bi,bj) c & + DDTT * qLongWave(i,j,bi,bj) c UGtave(i,j,bi,bj) = UGtave(i,j,bi,bj) c & + DDTT * uVelGround(i,j,bi,bj) c VGtave(i,j,bi,bj) = VGtave(i,j,bi,bj) c & + DDTT * vVelGround(i,j,bi,bj) TXtave(i,j,bi,bj) = TXtave(i,j,bi,bj) & + DDTT * tauX(i,j,bi,bj) TYtave(i,j,bi,bj) = TYtave(i,j,bi,bj) & + DDTT * tauY(i,j,bi,bj) FWtave(i,j,bi,bj) = FWtave(i,j,bi,bj) & + DDTT * FWFlux(i,j,bi,bj) SFxtave(i,j,bi,bj) = SFxtave(i,j,bi,bj) & + DDTT * iceSaltFlx(i,j,bi,bj) SICtave(i,j,bi,bj) = SICtave(i,j,bi,bj) & + DDTT * seaIceMass(i,j,bi,bj) MXLtave(i,j,bi,bj) = MXLtave(i,j,bi,bj) & + DDTT * ocMxlD2cpl(i,j,bi,bj) SSTtave(i,j,bi,bj) = SSTtave(i,j,bi,bj) & + DDTT * SSTocn2cpl(i,j,bi,bj) SSStave(i,j,bi,bj) = SSStave(i,j,bi,bj) & + DDTT * SSSocn2cpl(i,j,bi,bj) vSqtave(i,j,bi,bj) = vSqtave(i,j,bi,bj) & + DDTT * vSqocn2cpl(i,j,bi,bj) ENDDO ENDDO C- Keep record of how much time has been integrated over DO K=1,1 CPL_TimeAve(k,bi,bj)=CPL_TimeAve(k,bi,bj)+DDTT ENDDO #endif /* ALLOW_TIMEAVE */ #endif /* COMPONENT_MODULE */ RETURN END