/[MITgcm]/MITgcm/pkg/flt/flt_down.F
ViewVC logotype

Diff of /MITgcm/pkg/flt/flt_down.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.2 by jmc, Wed Dec 3 01:32:35 2008 UTC revision 1.3 by jmc, Sun Jan 4 00:58:23 2009 UTC
# Line 3  C $Name$ Line 3  C $Name$
3    
4  #include "FLT_OPTIONS.h"  #include "FLT_OPTIONS.h"
5    
6        subroutine flt_down (        SUBROUTINE FLT_DOWN (
7       I                      myCurrentIter,       I                      myTime, myIter, myThid )
      I                      myCurrentTime,  
      I                      myThid  
      &                     )    
   
 c     ==================================================================  
 c     SUBROUTINE flt_down  
 c     ==================================================================  
 c  
 c     o This routine moves particles vertical from the surface to  
 c       the target depth  
 c  
 c     ==================================================================  
 c     SUBROUTINE flt_down  
 c     ==================================================================  
8    
9  c     == global variables ==  C     ==================================================================
10    C     SUBROUTINE flt_down
11    C     ==================================================================
12    C
13    C     o This routine moves particles vertical from the surface to
14    C       the target depth
15    C
16    C     ==================================================================
17    C     SUBROUTINE flt_down
18    C     ==================================================================
19    
20    C     == global variables ==
21    
22  #include "EEPARAMS.h"  #include "EEPARAMS.h"
23  #include "SIZE.h"  #include "SIZE.h"
24  #include "FLT.h"  #include "FLT.h"
25    
26  c     == routine arguments ==  C     == routine arguments ==
27    
28        INTEGER myCurrentIter, myThid        _RL myTime
29        _RL myCurrentTime        INTEGER myIter, myThid
       INTEGER bi, bj  
30    
31  c     == local variables ==  C     == local variables ==
32    
33        integer ip        INTEGER bi, bj
34          INTEGER ip
35    
36  c     == end of interface ==  C     == end of interface ==
37    
38    
39        DO bj=myByLo(myThid),myByHi(myThid)        DO bj=myByLo(myThid),myByHi(myThid)
40        DO bi=myBxLo(myThid),myBxHi(myThid)        DO bi=myBxLo(myThid),myBxHi(myThid)
41    
42        do ip=1,npart_tile(bi,bj)        DO ip=1,npart_tile(bi,bj)
43    
44           if(           IF (
45       &  (                             myCurrentTime.ge.tstart(ip,bi,bj))       &  (                             myTime.GE.tstart(ip,bi,bj))
46       &   .and.       &   .AND.
47       &  (  tend(ip,bi,bj).eq.-1. .or. myCurrentTime.le.  tend(ip,bi,bj))       &  (  tend(ip,bi,bj).EQ.-1. .OR. myTime.LE.  tend(ip,bi,bj))
48       &   .and.       &   .AND.
49       &  (kpart(ip,bi,bj) .le. flt_surf)       &  (kpart(ip,bi,bj) .LE. flt_surf)
50       &   .and.       &   .AND.
51       &  (iup(ip,bi,bj)   .gt. 0.)       &  (iup(ip,bi,bj)   .GT. 0.)
52       &      ) then       &      ) THEN
53    
54  c         if(tstart(ip,bi,bj) .ne. -1.              .and.  c         IF (tstart(ip,bi,bj) .NE. -1.              .AND.
55  c     &      myCurrentTime    .ge. tstart(ip,bi,bj) .and.  c     &      myTime    .GE. tstart(ip,bi,bj) .AND.
56  c     &      myCurrentTime    .le.   tend(ip,bi,bj) .and.  c     &      myTime    .LE.   tend(ip,bi,bj) .AND.
57  c     &      kpart(ip,bi,bj) .eq. flt_surf .and.  c     &      kpart(ip,bi,bj) .EQ. flt_surf .AND.
58  c     &      iup(ip,bi,bj)   .gt. 0.) then  c     &      iup(ip,bi,bj)   .GT. 0.) THEN
59    
60  c     move float to the target depth  C     move float to the target depth
61  c  
62              if(mod(myCurrentTime,iup(ip,bi,bj)).eq.itop(ip,bi,bj))              IF (mod(myTime,iup(ip,bi,bj)).EQ.itop(ip,bi,bj))
63       &      kpart(ip,bi,bj) = kfloat(ip,bi,bj)       &      kpart(ip,bi,bj) = kfloat(ip,bi,bj)
64    
65           endif           ENDIF
66        enddo        ENDDO
67    
68        ENDDO        ENDDO
69        ENDDO        ENDDO
70    
71        return        RETURN
72        end        END
73    

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

  ViewVC Help
Powered by ViewVC 1.1.22