/[MITgcm]/MITgcm/pkg/fizhi/fizhi_tendency_apply.F
ViewVC logotype

Contents of /MITgcm/pkg/fizhi/fizhi_tendency_apply.F

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


Revision 1.1 - (show annotations) (download)
Thu Jan 29 14:22:24 2004 UTC (20 years, 5 months ago) by molod
Branch: MAIN
CVS Tags: hrcube4, checkpoint52j_post, checkpoint52k_post, checkpoint52j_pre, hrcube_3
Initial check in of fizhi (fake!)

1 subroutine fizhi_tendency_apply_u(iMin, iMax, jMin, jMax,
2 . bi,bj,kLev,myTime,myThid)
3 C=======================================================================
4 C Routine: fizhi_tendency_apply_u
5 C Interpolate tendencies from physics grid to dynamics grid and
6 C add fizhi tendency terms to U tendency.
7 C
8 C INPUT:
9 C iMin - Working range of tile for applying forcing.
10 C iMax
11 C jMin
12 C jMax
13 C kLev
14 C
15 C Notes: Routine works for one level at a time
16 C Assumes that U and V tendencies are already on C-Grid
17 C=======================================================================
18 implicit none
19
20 #include "CPP_OPTIONS.h"
21 #include "SIZE.h"
22 #include "GRID.h"
23 #include "EEPARAMS.h"
24 #include "DYNVARS.h"
25 #include "fizhi_SIZE.h"
26 #include "land_SIZE.h"
27 #include "fizhi_coms.h"
28
29 integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid
30 _RL myTime
31
32 integer i, j
33
34 do j=jMin,jMax
35 do i=iMin,iMax
36 gU(i,j,kLev,bi,bj) = gU(i,j,kLev,bi,bj) +
37 . maskC(i,j,kLev,bi,bj) * guphy(i,j,kLev,bi,bj)
38 enddo
39 enddo
40
41 return
42 end
43 subroutine fizhi_tendency_apply_v(iMin, iMax, jMin, jMax,
44 . bi,bj,kLev,myTime,myThid)
45 C=======================================================================
46 C Routine: fizhi_tendency_apply_v
47 C Interpolate tendencies from physics grid to dynamics grid and
48 C add fizhi 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 "fizhi_SIZE.h"
68 #include "land_SIZE.h"
69 #include "fizhi_coms.h"
70
71 integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid
72 _RL myTime
73
74 integer i, j
75
76 do j=jMin,jMax
77 do i=iMin,iMax
78 gV(i,j,kLev,bi,bj) = gV(i,j,kLev,bi,bj) +
79 . maskC(i,j,kLev,bi,bj) * gvphy(i,j,kLev,bi,bj)
80 enddo
81 enddo
82
83 return
84 end
85 subroutine fizhi_tendency_apply_t(iMin, iMax, jMin, jMax,
86 . bi,bj,kLev,myTime,myThid)
87 C=======================================================================
88 C Routine: fizhi_tendency_apply_t
89 C Interpolate tendencies from physics grid to dynamics grid and
90 C add fizhi tendency terms to T (theta) tendency.
91 C
92 C INPUT:
93 C iMin - Working range of tile for applying forcing.
94 C iMax
95 C jMin
96 C jMax
97 C kLev
98 C
99 C Notes: Routine works for one level at a time
100 C=======================================================================
101 implicit none
102
103 #include "CPP_OPTIONS.h"
104 #include "SIZE.h"
105 #include "GRID.h"
106 #include "EEPARAMS.h"
107 #include "DYNVARS.h"
108 #include "fizhi_SIZE.h"
109 #include "land_SIZE.h"
110 #include "fizhi_coms.h"
111
112 integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid
113 _RL myTime
114
115 integer i, j
116
117 do j=1,sNy
118 do i=1,sNx
119 gT(i,j,kLev,bi,bj) = maskC(i,j,kLev,bi,bj)
120 . *( gT(i,j,kLev,bi,bj) + gthphy(i,j,kLev,bi,bj) )
121 enddo
122 enddo
123
124 return
125 end
126 subroutine fizhi_tendency_apply_s(iMin, iMax, jMin, jMax,
127 . bi,bj,kLev,myTime,myThid)
128 C=======================================================================
129 C Routine: fizhi_tendency_apply_s
130 C Interpolate tendencies from physics grid to dynamics grid and
131 C add fizhi tendency terms to S tendency.
132 C
133 C INPUT:
134 C iMin - Working range of tile for applying forcing.
135 C iMax
136 C jMin
137 C jMax
138 C kLev
139 C
140 C Notes: Routine works for one level at a time
141 C=======================================================================
142 implicit none
143
144 #include "CPP_OPTIONS.h"
145 #include "SIZE.h"
146 #include "GRID.h"
147 #include "EEPARAMS.h"
148 #include "DYNVARS.h"
149 #include "fizhi_SIZE.h"
150 #include "land_SIZE.h"
151 #include "fizhi_coms.h"
152
153 integer iMin, iMax, jMin, jMax, kLev, bi, bj, myThid
154 _RL myTime
155
156 integer i, j
157
158 do j=1,sNy
159 do i=1,sNx
160 gS(i,j,kLev,bi,bj) = maskC(i,j,kLev,bi,bj)
161 . *( gS(i,j,kLev,bi,bj) + gsphy(i,j,kLev,bi,bj) )
162 enddo
163 enddo
164
165 return
166 end

  ViewVC Help
Powered by ViewVC 1.1.22