C $Header: /u/gcmpack/MITgcm/pkg/bulk_force/bulkf_ave.F,v 1.9 2010/01/02 22:46:29 jmc Exp $
C $Name: $
#include "BULK_FORCE_OPTIONS.h"
CBOP
C !ROUTINE: BULKF_AVE
C !INTERFACE:
SUBROUTINE BULKF_AVE(bi,bj,myThid)
C !DESCRIPTION: \bv
C *==========================================================*
C | S/R BULKF_AVE
C | o save values for timeaveraging
C | for sea/ice surface and atmosphere
C *==========================================================*
C \ev
C !USES:
IMPLICIT NONE
C == Global variables ==
#include "SIZE.h"
#include "EEPARAMS.h"
#include "PARAMS.h"
#include "FFIELDS.h"
#include "BULKF.h"
#include "BULKF_INT.h"
#include "BULKF_TAVE.h"
C !INPUT/OUTPUT PARAMETERS:
INTEGER bi,bj
INTEGER myThid
CEOP
#ifdef ALLOW_BULK_FORCE
#ifdef ALLOW_TIMEAVE
INTEGER i,j
C-- Time-average
DO j = 1,sNy
DO i = 1,sNx
BULK_Qnet_Ave(i,j,bi,bj) = BULK_Qnet_Ave(i,j,bi,bj)
& +Qnet(i,j,bi,bj)*deltaTclock
c & +lambdaThetaClimRelax*
c & (theta(i,j,1,bi,bj)-SST(i,j,bi,bj))/
c & (recip_Cp*recip_rhoNil*recip_dRf(1))*deltaTclock
BULK_EmPmR_Ave(i,j,bi,bj) = BULK_EmPmR_Ave(i,j,bi,bj)
& +EmPmR(i,j,bi,bj)*deltaTclock
BULK_fu_Ave(i,j,bi,bj) = BULK_fu_Ave(i,j,bi,bj)
& +fu(i,j,bi,bj)*deltaTclock
BULK_fv_Ave(i,j,bi,bj) = BULK_fv_Ave(i,j,bi,bj)
& +fv(i,j,bi,bj)*deltaTclock
BULK_latent_Ave(i,j,bi,bj) = BULK_latent_Ave(i,j,bi,bj)
& +flh(i,j,bi,bj)*deltaTclock
BULK_sensible_Ave(i,j,bi,bj) = BULK_sensible_Ave(i,j,bi,bj)
& +fsh(i,j,bi,bj)*deltaTclock
BULK_evap_Ave(i,j,bi,bj) = BULK_evap_Ave(i,j,bi,bj)
& +evap(i,j,bi,bj)*deltaTclock
BULK_flwup_Ave(i,j,bi,bj) = BULK_flwup_Ave(i,j,bi,bj)
& +flwup(i,j,bi,bj)*deltaTclock
BULK_flwupnet_Ave(i,j,bi,bj) = BULK_flwupnet_Ave(i,j,bi,bj)
& +flwupnet(i,j,bi,bj)*deltaTclock
BULK_solar_Ave(i,j,bi,bj) = BULK_solar_Ave(i,j,bi,bj)
& +fswnet(i,j,bi,bj)*deltaTclock
BULK_ssq_Ave(i,j,bi,bj) = BULK_ssq_Ave(i,j,bi,bj)
& +savssq(i,j,bi,bj)*deltaTclock
ENDDO
ENDDO
BULK_timeAve(bi,bj) = BULK_timeAve(bi,bj)+deltaTclock
#endif /*ALLOW_TIMEAVE*/
#endif /*ALLOW_BULK_FORCE*/
RETURN
END