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

Annotation of /MITgcm_contrib/plumes/plume_tendency_apply.F

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


Revision 1.1 - (hide annotations) (download)
Tue May 25 18:08:51 2004 UTC (21 years, 2 months ago) by molod
Branch: MAIN
CVS Tags: HEAD
Add (correct) routine plume2dyn, add plume_tendency_apply

1 molod 1.1 C $Header: $
2     C $Name: $
3    
4     subroutine plume_tendency_apply_u(iMin, iMax, jMin, jMax,
5     . bi,bj,kLev,myTime,myThid)
6     C=======================================================================
7     C Routine: plume_tendency_apply_u
8     C Add plume tendency terms to U tendency.
9     C
10     C INPUT:
11     C iMin - Working range of tile for applying forcing.
12     C iMax
13     C jMin
14     C jMax
15     C kLev
16     C
17     C Notes: Routine works for one level at a time
18     C Assumes that U and V tendencies are already on C-Grid
19     C=======================================================================
20     implicit none
21    
22     #include "CPP_OPTIONS.h"
23     #include "SIZE.h"
24     #include "GRID.h"
25     #include "EEPARAMS.h"
26     #include "DYNVARS.h"
27     #include "plume_SIZE.h"
28     #include "plume_coms.h"
29    
30     integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid
31     _RL myTime
32    
33     integer i, j
34    
35     do j=jMin,jMax
36     do i=iMin,iMax
37     gU(i,j,kLev,bi,bj) = gU(i,j,kLev,bi,bj) +
38     . maskC(i,j,kLev,bi,bj) * guplume(i,j,kLev,bi,bj)
39     enddo
40     enddo
41    
42     return
43     end
44     subroutine plume_tendency_apply_v(iMin, iMax, jMin, jMax,
45     . bi,bj,kLev,myTime,myThid)
46     C=======================================================================
47     C Routine: plume_tendency_apply_v
48     C Add plume tendency terms to V tendency.
49     C
50     C INPUT:
51     C iMin - Working range of tile for applying forcing.
52     C iMax
53     C jMin
54     C jMax
55     C kLev
56     C
57     C Notes: Routine works for one level at a time
58     C Assumes that U and V tendencies are already on C-Grid
59     C=======================================================================
60     implicit none
61    
62     #include "CPP_OPTIONS.h"
63     #include "SIZE.h"
64     #include "GRID.h"
65     #include "EEPARAMS.h"
66     #include "DYNVARS.h"
67     #include "plume_SIZE.h"
68     #include "plume_coms.h"
69    
70     integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid
71     _RL myTime
72    
73     integer i, j
74    
75     do j=jMin,jMax
76     do i=iMin,iMax
77     gV(i,j,kLev,bi,bj) = gV(i,j,kLev,bi,bj) +
78     . maskC(i,j,kLev,bi,bj) * gvplume(i,j,kLev,bi,bj)
79     enddo
80     enddo
81    
82     return
83     end
84     subroutine plume_tendency_apply_t(iMin, iMax, jMin, jMax,
85     . bi,bj,kLev,myTime,myThid)
86     C=======================================================================
87     C Routine: plume_tendency_apply_t
88     C Add plume tendency terms to T (theta) tendency.
89     C
90     C INPUT:
91     C iMin - Working range of tile for applying forcing.
92     C iMax
93     C jMin
94     C jMax
95     C kLev
96     C
97     C Notes: Routine works for one level at a time
98     C=======================================================================
99     implicit none
100    
101     #include "CPP_OPTIONS.h"
102     #include "SIZE.h"
103     #include "GRID.h"
104     #include "EEPARAMS.h"
105     #include "DYNVARS.h"
106     #include "plume_SIZE.h"
107     #include "plume_coms.h"
108    
109     integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid
110     _RL myTime
111    
112     integer i, j
113    
114     do j=jMin,jMax
115     do i=iMin,iMax
116     gT(i,j,kLev,bi,bj) = maskC(i,j,kLev,bi,bj)
117     . *( gT(i,j,kLev,bi,bj) + gthplume(i,j,kLev,bi,bj) )
118     enddo
119     enddo
120    
121     return
122     end

  ViewVC Help
Powered by ViewVC 1.1.22