Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:44:36 UTC

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
f7eecb8553 Jean*0001 #include "CPP_EEOPTIONS.h"
                0002 
                0003 CBOP 0
                0004 C !ROUTINE: TIMEAVE_NORMALIZE
                0005 
                0006 C !INTERFACE:
                0007       SUBROUTINE TIMEAVE_NORMALIZE(
                0008      U                   fldtave,
                0009      I                   timeave_cumul, Ksize,
                0010      I                   bi, bj, myThid )
                0011 
                0012 C !DESCRIPTION:
                0013 C     *==========================================================*
                0014 C     | SUBROUTINE TIMEAVE_NORMALIZE
                0015 C     | o Get average of field : Normalize by cumulated time
                0016 C     *==========================================================*
                0017 
                0018 C !USES:
                0019       IMPLICIT NONE
                0020 C     == Global variables ===
                0021 #include "SIZE.h"
                0022 #include "EEPARAMS.h"
                0023 
                0024 C !INPUT/OUTPUT PARAMETERS:
                0025 C     fldtave       :: time averaged Field
                0026 C     timeave_cumul :: cumulated time for average
                0027 C     Ksize         :: 3rd dimension of local array (fldtave)
                0028 C     bi, bj        :: indices of tile to process
                0029 C     myThid        :: my Thread Id number
                0030       INTEGER Ksize
                0031       _RL fldtave(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Ksize,nSx,nSy)
                0032       _RL timeave_cumul(nSx,nSy)
                0033       INTEGER bi, bj
                0034       INTEGER myThid
                0035 CEOP
                0036 
                0037 C !LOCAL VARIABLES:
                0038 C     i,j,k    :: Loop counters
                0039       INTEGER i, j, k
                0040 
                0041 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
                0042 
                0043 C     DO bj = myByLo(myThid), myByHi(myThid)
                0044 C      DO bi = myBxLo(myThid), myBxHi(myThid)
                0045         IF ( timeave_cumul(bi,bj) .NE. 0. _d 0 ) THEN
                0046          DO k=1,Ksize
                0047           DO j=1,sNy
                0048            DO i=1,sNx
                0049              fldtave(i,j,k,bi,bj) = fldtave(i,j,k,bi,bj)
                0050      &                            / timeave_cumul(bi,bj)
                0051            ENDDO
                0052           ENDDO
                0053          ENDDO
                0054         ENDIF
                0055 C      ENDDO
                0056 C     ENDDO
                0057 
                0058       RETURN
                0059       END