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

Annotation of /MITgcm/model/src/timestep_wvel.F

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


Revision 1.1 - (hide annotations) (download)
Thu Dec 15 21:09:00 2005 UTC (18 years, 5 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint58, checkpoint58a_post, checkpoint57z_post
isolate forward stepping of wVel in new S/R (previously part of calc_gw)

1 jmc 1.1 C $Header: $
2     C $Name: $
3    
4     #include "PACKAGES_CONFIG.h"
5     #include "CPP_OPTIONS.h"
6    
7     CBOP
8     C !ROUTINE: TIMESTEP_WVEL
9     C !INTERFACE:
10     SUBROUTINE TIMESTEP_WVEL(
11     I myTime, myIter, myThid )
12     C !DESCRIPTION: \bv
13     C *==========================================================*
14     C | S/R TIMESTEP_WVEL
15     C | o Step model vertical velocity forward in time
16     C *==========================================================*
17     C \ev
18    
19     C !USES:
20     IMPLICIT NONE
21     C == Global variables ==
22     #include "SIZE.h"
23     #include "EEPARAMS.h"
24     #include "PARAMS.h"
25     #include "GRID.h"
26     #include "DYNVARS.h"
27     #include "NH_VARS.h"
28     c #include "SURFACE.h"
29    
30     C !INPUT/OUTPUT PARAMETERS:
31     C == Routine Arguments ==
32     _RL myTime
33     INTEGER myIter, myThid
34    
35     #ifdef ALLOW_NONHYDROSTATIC
36     C !LOCAL VARIABLES:
37     C == Local variables ==
38     INTEGER k,bi,bj
39     INTEGER iMin,iMax,jMin,jMax
40     INTEGER i,j
41     _RL gWtmp(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
42     CEOP
43    
44     iMin = 1
45     iMax = sNx
46     jMin = 1
47     jMax = sNy
48    
49     C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
50    
51     C tile loops :
52     DO bj=myByLo(myThid),myByHi(myThid)
53     DO bi=myBxLo(myThid),myBxHi(myThid)
54    
55     DO k=2,Nr
56    
57     DO j=jMin,jMax
58     DO i=iMin,iMax
59     gWtmp(i,j) = gW(i,j,k,bi,bj)
60     & *maskC(i,j,k,bi,bj)*maskC(i,j,k-1,bi,bj)
61     ENDDO
62     ENDDO
63    
64     C Step forward vertical velocity (and keep a copy in gW)
65     DO j=jMin,jMax
66     DO i=iMin,iMax
67     gW(i,j,k,bi,bj) = wVel(i,j,k,bi,bj)
68     wVel(i,j,k,bi,bj) = wVel(i,j,k,bi,bj)
69     & + deltaTmom*nh_Am2*gWtmp(i,j)
70     ENDDO
71     ENDDO
72    
73     C- End of k loop
74     ENDDO
75    
76     C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
77    
78     #ifdef ALLOW_OBCS
79     C-- This call is aesthetic: it makes the W field
80     C consistent with the OBs but this has no algorithmic
81     C impact. This is purely for diagnostic purposes.
82     IF (useOBCS) THEN
83     DO k=1,Nr
84     CALL OBCS_APPLY_W( bi, bj, k, wVel, myThid )
85     ENDDO
86     ENDIF
87     #endif /* ALLOW_OBCS */
88    
89     C- End of bi,bj loops
90     ENDDO
91     ENDDO
92    
93     #endif /* ALLOW_NONHYDROSTATIC */
94    
95     RETURN
96     END

  ViewVC Help
Powered by ViewVC 1.1.22