Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:37:53 UTC

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
ac39ebdbf2 Jean*0001 #include "AUTODIFF_OPTIONS.h"
c5f8cc3f02 Gael*0002 
ac39ebdbf2 Jean*0003 CBOP
c5f8cc3f02 Gael*0004 C     !ROUTINE: ADDAMP_ADJ
                0005 C     !INTERFACE:
                0006       SUBROUTINE ADDAMP_ADJ(
ac39ebdbf2 Jean*0007      I       NrIn, minRef, maxRef, timeDamp,
                0008      I       fieldRef,
                0009      U       adfieldDamp,
                0010      I       myThid )
c5f8cc3f02 Gael*0011 C     !DESCRIPTION: \bv
                0012 C     *==========================================================*
                0013 C     | author: Gael Forget
                0014 C     *==========================================================*
ac39ebdbf2 Jean*0015 C     \ev
c5f8cc3f02 Gael*0016 
ac39ebdbf2 Jean*0017 C     !USES:
c5f8cc3f02 Gael*0018       IMPLICIT NONE
ac39ebdbf2 Jean*0019 C     === Global variables ===
c5f8cc3f02 Gael*0020 #include "SIZE.h"
                0021 #include "EEPARAMS.h"
                0022 #include "PARAMS.h"
                0023 
ac39ebdbf2 Jean*0024 C     !INPUT/OUTPUT PARAMETERS:
                0025 C     myThid :: my Thread Id number
                0026       INTEGER NrIn, myThid
                0027       _RL minRef,maxRef,timeDamp
                0028       _RL fieldRef(1-OLx:sNx+OLx,1-OLy:sNy+OLy,NrIn,nSx,nSy)
                0029       _RL adfieldDamp(1-OLx:sNx+OLx,1-OLy:sNy+OLy,NrIn,nSx,nSy)
                0030 
                0031 C     !LOCAL VARIABLES:
                0032       INTEGER bi,bj,i,j,k
                0033       _RL facDamp
                0034 CEOP
c5f8cc3f02 Gael*0035 
                0036       DO bj=myByLo(myThid),myByHi(myThid)
                0037        DO bi=myBxLo(myThid),myBxHi(myThid)
                0038         DO k=1,NrIn
ac39ebdbf2 Jean*0039          DO j=1-OLy,sNy+OLy
                0040           DO i=1-OLx,sNx+OLx
                0041            IF ( (fieldRef(i,j,k,bi,bj).GE.maxRef).OR.
                0042      &          (fieldRef(i,j,k,bi,bj).LE.minRef) ) THEN
c5f8cc3f02 Gael*0043               facDamp=(1. _d 0-deltaTClock/timeDamp)
ac39ebdbf2 Jean*0044            ELSE
c5f8cc3f02 Gael*0045               facDamp=1. _d 0
ac39ebdbf2 Jean*0046            ENDIF
c5f8cc3f02 Gael*0047            adfieldDamp(i,j,k,bi,bj)=facDamp*
                0048      &        adfieldDamp(i,j,k,bi,bj)
                0049           ENDDO
                0050          ENDDO
                0051         ENDDO
                0052        ENDDO
                0053       ENDDO
                0054 
ac39ebdbf2 Jean*0055       RETURN
                0056       END