/[MITgcm]/MITgcm_contrib/plumes/plumes_tendency_apply.F
ViewVC logotype

Annotation of /MITgcm_contrib/plumes/plumes_tendency_apply.F

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


Revision 1.1 - (hide annotations) (download)
Wed May 5 18:19:35 2004 UTC (21 years, 2 months ago) by molod
Branch: MAIN
CVS Tags: HEAD
Code for embedded plume model

1 molod 1.1 subroutine plumes_tendency_apply_u(iMin, iMax, jMin, jMax,
2     . bi,bj,kLev,myTime,myThid)
3     C=======================================================================
4     C Routine: plumes_tendency_apply_u
5     C add plumes tendency terms to U tendency.
6     C
7     C INPUT:
8     C iMin - Working range of tile for applying forcing.
9     C iMax
10     C jMin
11     C jMax
12     C kLev
13     C
14     C Notes: Routine works for one level at a time
15     C Assumes that U and V tendencies are already on C-Grid
16     C=======================================================================
17     implicit none
18    
19     #include "CPP_OPTIONS.h"
20     #include "SIZE.h"
21     #include "GRID.h"
22     #include "EEPARAMS.h"
23     #include "DYNVARS.h"
24     #include "plumes_SIZE.h"
25     #include "plumes_coms.h"
26    
27     integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid
28     _RL myTime
29    
30     integer i, j
31    
32     do j=jMin,jMax
33     do i=iMin,iMax
34     gU(i,j,kLev,bi,bj) = gU(i,j,kLev,bi,bj) +
35     . maskC(i,j,kLev,bi,bj) * guplume(i,j,kLev,bi,bj)
36     enddo
37     enddo
38    
39     return
40     end
41     subroutine plumes_tendency_apply_v(iMin, iMax, jMin, jMax,
42     . bi,bj,kLev,myTime,myThid)
43     C=======================================================================
44     C Routine: plumes_tendency_apply_v
45     C add plumes tendency terms to V tendency.
46     C
47     C INPUT:
48     C iMin - Working range of tile for applying forcing.
49     C iMax
50     C jMin
51     C jMax
52     C kLev
53     C
54     C Notes: Routine works for one level at a time
55     C Assumes that U and V tendencies are already on C-Grid
56     C=======================================================================
57     implicit none
58    
59     #include "CPP_OPTIONS.h"
60     #include "SIZE.h"
61     #include "GRID.h"
62     #include "EEPARAMS.h"
63     #include "DYNVARS.h"
64     #include "plumes_SIZE.h"
65     #include "plumes_coms.h"
66    
67     integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid
68     _RL myTime
69    
70     integer i, j
71    
72     do j=jMin,jMax
73     do i=iMin,iMax
74     gV(i,j,kLev,bi,bj) = gV(i,j,kLev,bi,bj) +
75     . maskC(i,j,kLev,bi,bj) * gvplume(i,j,kLev,bi,bj)
76     enddo
77     enddo
78    
79     return
80     end
81     subroutine plumes_tendency_apply_t(iMin, iMax, jMin, jMax,
82     . bi,bj,kLev,myTime,myThid)
83     C=======================================================================
84     C Routine: plumes_tendency_apply_t
85     C add plumes tendency terms to T (theta) tendency.
86     C
87     C INPUT:
88     C iMin - Working range of tile for applying forcing.
89     C iMax
90     C jMin
91     C jMax
92     C kLev
93     C
94     C Notes: Routine works for one level at a time
95     C=======================================================================
96     implicit none
97    
98     #include "CPP_OPTIONS.h"
99     #include "SIZE.h"
100     #include "GRID.h"
101     #include "EEPARAMS.h"
102     #include "DYNVARS.h"
103     #include "plumes_SIZE.h"
104     #include "plumes_coms.h"
105    
106     integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid
107     _RL myTime
108    
109     integer i, j
110    
111     do j=jMin,jMax
112     do i=iMin,iMax
113     gT(i,j,kLev,bi,bj) = maskC(i,j,kLev,bi,bj)
114     . *( gT(i,j,kLev,bi,bj) + gthplume(i,j,kLev,bi,bj) )
115     enddo
116     enddo
117    
118     return
119     end
120     subroutine plumes_tendency_apply_s(iMin, iMax, jMin, jMax,
121     . bi,bj,kLev,myTime,myThid)
122     C=======================================================================
123     C Routine: plumes_tendency_apply_s
124     C add plumes tendency terms to S tendency.
125     C
126     C INPUT:
127     C iMin - Working range of tile for applying forcing.
128     C iMax
129     C jMin
130     C jMax
131     C kLev
132     C
133     C Notes: Routine works for one level at a time
134     C=======================================================================
135     implicit none
136    
137     #include "CPP_OPTIONS.h"
138     #include "SIZE.h"
139     #include "GRID.h"
140     #include "EEPARAMS.h"
141     #include "DYNVARS.h"
142     #include "plumes_SIZE.h"
143     #include "plumes_coms.h"
144    
145     integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid
146     _RL myTime
147    
148     integer i, j
149    
150     do j=jMin,jMax
151     do i=iMin,iMax
152     gS(i,j,kLev,bi,bj) = maskC(i,j,kLev,bi,bj)
153     . *( gS(i,j,kLev,bi,bj) + gsplume(i,j,kLev,bi,bj) )
154     enddo
155     enddo
156    
157     return
158     end

  ViewVC Help
Powered by ViewVC 1.1.22