Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:41:47 UTC

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
4e66ab0b67 Oliv*0001 #include "LONGSTEP_OPTIONS.h"
                0002 
                0003 CBOP
                0004 C     !ROUTINE: LONGSTEP_FILL_3D
                0005 C     !INTERFACE:
                0006       SUBROUTINE LONGSTEP_FILL_3D(
                0007      U      lsCnt, lsFld,
                0008      I      fld, myNr, myThid)
                0009 
                0010 C     !DESCRIPTION: \bv
                0011 C     *==========================================================*
                0012 C     | SUBROUTINE LONGSTEP_FILL_3D
                0013 C     | o update longstep average for one field (incl. overlap)
                0014 C     *==========================================================*
                0015 C     \ev
                0016 
                0017 C     !USES:
                0018       IMPLICIT NONE
                0019 C     == Global variables ===
                0020 #include "SIZE.h"
                0021 #include "EEPARAMS.h"
                0022 #include "PARAMS.h"
                0023 #include "GRID.h"
                0024 
                0025 C     !INPUT/OUTPUT PARAMETERS:
                0026 C     == Routine arguments ==
                0027 C      lsCnt :: Counter to update
                0028 C      lsFld :: average to update
                0029 C        fld :: field to accumulate
                0030 C       myNr :: number of levels to update
                0031 C     myThid :: my Thread Id number
af5eb09265 Jean*0032       INTEGER myNr
4e66ab0b67 Oliv*0033       _RL lsFld(1-OLx:sNx+OLx,1-OLy:sNy+OLy,myNr,nSx,nSy)
                0034       _RL Fld(1-OLx:sNx+OLx,1-OLy:sNy+OLy,myNr,nSx,nSy)
7b3defa94d Jean*0035       INTEGER lsCnt(nSx,nSy)
4e66ab0b67 Oliv*0036       INTEGER myThid
                0037 
                0038 #ifdef ALLOW_LONGSTEP
                0039 C     !LOCAL VARIABLES:
                0040 C     == Local variables ==
                0041       INTEGER i,j,k,bi,bj
                0042 CEOP
                0043 
                0044       DO bj=myByLo(myThid), myByHi(myThid)
                0045        DO bi=myBxLo(myThid), myBxHi(myThid)
7b3defa94d Jean*0046         lsCnt(bi,bj) = lsCnt(bi,bj) + 1
4e66ab0b67 Oliv*0047         DO k = 1,myNr
                0048          DO j = 1-OLy,sNy+OLy
                0049           DO i = 1-OLx,sNx+OLx
                0050            lsFld(i,j,k,bi,bj) = lsFld(i,j,k,bi,bj) + fld(i,j,k,bi,bj)
                0051           ENDDO
                0052          ENDDO
                0053         ENDDO
                0054        ENDDO
                0055       ENDDO
                0056 #endif /* ALLOW_LONGSTEP */
                0057 
                0058       RETURN
                0059       END
                0060