/[MITgcm]/MITgcm/model/src/adams_bashforth2.F
ViewVC logotype

Diff of /MITgcm/model/src/adams_bashforth2.F

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

revision 1.1 by adcroft, Wed Sep 19 02:43:27 2001 UTC revision 1.5 by jmc, Fri Dec 3 15:39:11 2004 UTC
# Line 3  C $Name$ Line 3  C $Name$
3    
4  #include "CPP_OPTIONS.h"  #include "CPP_OPTIONS.h"
5    
6    CBOP
7    C     !ROUTINE: ADAMS_BASHFORTH2
8    C     !INTERFACE:
9        SUBROUTINE ADAMS_BASHFORTH2(        SUBROUTINE ADAMS_BASHFORTH2(
10       I                     bi, bj, K,       I                     bi, bj, K,
11       U                     gTracer, gTrNm1,       U                     gTracer, gTrNm1,
12       I                     myIter, myThid )       I                     myIter, myThid )
13  C     /==========================================================\  C     !DESCRIPTION: \bv
14  C     | S/R ADAMS_BASHFORTH2                                     |  C     *==========================================================*
15  C     | o Extrapolate tendancies forward in time using           |  C     | S/R ADAMS_BASHFORTH2                                      
16  C     |   quasi-second order Adams-Bashforth method.             |  C     | o Extrapolate tendancies forward in time using            
17  C     \==========================================================/  C     |   quasi-second order Adams-Bashforth method.              
18        IMPLICIT NONE  C     *==========================================================*
19    C     \ev
20    
21    C     !USES:
22          IMPLICIT NONE
23  C     == Global variables ===  C     == Global variables ===
24  #include "SIZE.h"  #include "SIZE.h"
25  #include "EEPARAMS.h"  #include "EEPARAMS.h"
26  #include "PARAMS.h"  #include "PARAMS.h"
 #include "GAD.h"  
27  #include "GRID.h"  #include "GRID.h"
28  #include "SURFACE.h"  #include "SURFACE.h"
29    
30    C     !INPUT/OUTPUT PARAMETERS:
31  C     == Routine Arguments ==  C     == Routine Arguments ==
32    C     bi,bj,K :: Tile and level indices
33    C     gTracer :: Tendency at current time  ( generally units of quantity/sec )
34    C     gTrNm1  :: Tendency at previous time ( generally units of quantity/sec )
35    C     myIter  :: Current time step number
36    C     myThid  :: Thread number of this thread
37        INTEGER bi,bj,K        INTEGER bi,bj,K
38        _RL  gTracer(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)        _RL  gTracer(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
39        _RL  gTrNm1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)        _RL  gTrNm1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
40        INTEGER myIter, myThid        INTEGER myIter, myThid
41    
42    C     !LOCAL VARIABLES:
43  C     == Local variables ==  C     == Local variables ==
44    C     i,j        :: Loop counters
45    C     ab15, ab05 :: Adams bashforth extrapolation weights.
46        INTEGER i,j        INTEGER i,j
47        _RL ab15,ab05        _RL ab15,ab05
48        _RL gTrtmp        _RL gTrtmp
49    CEOP
50    
51  C     Adams-Bashforth timestepping weights  C     Adams-Bashforth timestepping weights
52        IF (myIter .EQ. 0) THEN        IF ( myIter.EQ.0 .OR.
53         &    (myIter.EQ.1 .AND. staggerTimeStep) ) THEN
54         ab15=1.0         ab15=1.0
55         ab05=0.0         ab05=0.0
56        ELSE        ELSE
# Line 41  C     Adams-Bashforth timestepping weigh Line 58  C     Adams-Bashforth timestepping weigh
58         ab05=-(0.5+abEps)         ab05=-(0.5+abEps)
59        ENDIF        ENDIF
60    
61  C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|  C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----
62    
63  C-    Compute effective G-term with Adams-Bashforth weights:  C-    Compute effective G-term with Adams-Bashforth weights:
64        DO j=1-Oly,sNy+Oly        DO j=1-Oly,sNy+Oly

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.5

  ViewVC Help
Powered by ViewVC 1.1.22