C $Header: /u/gcmpack/MITgcm/pkg/timeave/timeave_norma_2v.F,v 1.2 2003/12/05 02:27:58 jmc Exp $
C $Name: $
#include "CPP_EEOPTIONS.h"
CStartofinterface
SUBROUTINE TIMEAVE_NORMA_2V(
U fldtave,
I cumulWeight, Ksize,
I bi, bj, myThid )
C /==========================================================\
C | SUBROUTINE TIMEAVE_NORMA_2V |
C | o Get average of field : Normalize by cumulated weight |
C \==========================================================/
IMPLICIT NONE
C == Global variables ===
#include "SIZE.h"
#include "EEPARAMS.h"
C == Routine arguments ==
C myThid - Thread number for this instance of the routine.
C timeave_cumul - cumulated time for average
C fldtave - time averaged Field
C Ksize - 3rd dimension of local array (fldtave)
INTEGER bi, bj, Ksize, myThid
_RL fldtave(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Ksize,nSx,nSy)
_RL cumulWeight(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Ksize,nSx,nSy)
CEndofinterface
C == Local variables ==
C i,j,k,bi,bj - Loop counters
INTEGER i, j, k
C DO bj = myByLo(myThid), myByHi(myThid)
C DO bi = myBxLo(myThid), myBxHi(myThid)
DO k=1,Ksize
DO j=1,sNy
DO i=1,sNx
IF ( cumulWeight(i,j,k,bi,bj) .GT. 0. _d 0 ) THEN
fldtave(i,j,k,bi,bj) = fldtave(i,j,k,bi,bj)
& / cumulWeight(i,j,k,bi,bj)
ENDIF
ENDDO
ENDDO
ENDDO
C ENDDO
C ENDDO
RETURN
END