** Warning **

Issuing rollback() due to DESTROY without explicit disconnect() of DBD::mysql::db handle dbname=MITgcm at /usr/local/share/lxr/lib/LXR/Common.pm line 1224.

Last-Modified: Thu, 23 Oct 2024 05:11:55 GMT Content-Type: text/html; charset=utf-8 MITgcm/MITgcm/pkg/flt/flt_down.F
Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:40:46 UTC

view on githubraw file Latest commit add29e06 on 2018-01-31 20:35:05 UTC
0a3ae49bfc Jean*0001 #include "FLT_OPTIONS.h"
c806179eb4 Alis*0002 
eacecc7041 Jean*0003       SUBROUTINE FLT_DOWN (
                0004      I                      myTime, myIter, myThid )
                0005 
                0006 C     ==================================================================
a11169c200 Jean*0007 C     SUBROUTINE FLT_DOWN
eacecc7041 Jean*0008 C     ==================================================================
                0009 C     o This routine moves particles vertical from the surface to
                0010 C       the target depth
                0011 C     ==================================================================
                0012 
a11169c200 Jean*0013 C     !USES:
                0014       IMPLICIT NONE
c806179eb4 Alis*0015 
a11169c200 Jean*0016 C     == global variables ==
c806179eb4 Alis*0017 #include "EEPARAMS.h"
                0018 #include "SIZE.h"
730d8469b1 Oliv*0019 #include "FLT_SIZE.h"
c806179eb4 Alis*0020 #include "FLT.h"
                0021 
eacecc7041 Jean*0022 C     == routine arguments ==
                0023       _RL myTime
                0024       INTEGER myIter, myThid
c806179eb4 Alis*0025 
eacecc7041 Jean*0026 C     == local variables ==
                0027       INTEGER bi, bj
                0028       INTEGER ip
c806179eb4 Alis*0029 
eacecc7041 Jean*0030 C     == end of interface ==
c806179eb4 Alis*0031 
                0032       DO bj=myByLo(myThid),myByHi(myThid)
a11169c200 Jean*0033        DO bi=myBxLo(myThid),myBxHi(myThid)
c806179eb4 Alis*0034 
a11169c200 Jean*0035         DO ip=1,npart_tile(bi,bj)
eacecc7041 Jean*0036 
                0037          IF (
                0038      &  (                             myTime.GE.tstart(ip,bi,bj))
                0039      &   .AND.
                0040      &  (  tend(ip,bi,bj).EQ.-1. .OR. myTime.LE.  tend(ip,bi,bj))
                0041      &   .AND.
                0042      &  (kpart(ip,bi,bj) .LE. flt_surf)
                0043      &   .AND.
                0044      &  (iup(ip,bi,bj)   .GT. 0.)
                0045      &      ) THEN
                0046 
                0047 c         IF (tstart(ip,bi,bj) .NE. -1.              .AND.
                0048 c     &      myTime    .GE. tstart(ip,bi,bj) .AND.
                0049 c     &      myTime    .LE.   tend(ip,bi,bj) .AND.
                0050 c     &      kpart(ip,bi,bj) .EQ. flt_surf .AND.
                0051 c     &      iup(ip,bi,bj)   .GT. 0.) THEN
                0052 
                0053 C     move float to the target depth
                0054 
a11169c200 Jean*0055            IF (mod(myTime,iup(ip,bi,bj)).EQ.itop(ip,bi,bj))
c806179eb4 Alis*0056      &      kpart(ip,bi,bj) = kfloat(ip,bi,bj)
                0057 
eacecc7041 Jean*0058          ENDIF
a11169c200 Jean*0059         ENDDO
c806179eb4 Alis*0060 
a11169c200 Jean*0061        ENDDO
c806179eb4 Alis*0062       ENDDO
                0063 
eacecc7041 Jean*0064       RETURN
                0065       END
c806179eb4 Alis*0066