/[MITgcm]/MITgcm/pkg/ctrl/ctrl_init_variables.F
ViewVC logotype

Contents of /MITgcm/pkg/ctrl/ctrl_init_variables.F

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


Revision 1.8 - (show annotations) (download)
Fri Oct 27 05:16:54 2006 UTC (17 years, 7 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint59, checkpoint58y_post, checkpoint58t_post, checkpoint58w_post, checkpoint58r_post, checkpoint59e, checkpoint59d, checkpoint59g, checkpoint59f, checkpoint59a, checkpoint59c, checkpoint59b, checkpoint59h, checkpoint58v_post, checkpoint58x_post, checkpoint58u_post, checkpoint58s_post
Changes since 1.7: +78 -0 lines
Adding new control variables:
lwflux, lwdown, evap, snowprecip, apressure, runoff.

1
2 #include "CTRL_CPPOPTIONS.h"
3
4 subroutine ctrl_init_variables( mythid )
5
6 c ==================================================================
7 c SUBROUTINE ctrl_init_variables
8 c ==================================================================
9 c
10 c o Set parts of the vector of control variables and initialize the
11 c rest to zero.
12 c
13 c started: heimbach@mit.edu 25-Mar-2002
14 c
15 c ==================================================================
16 c SUBROUTINE ctrl_init_variables
17 c ==================================================================
18
19 implicit none
20
21 c == global variables ==
22
23 #include "EEPARAMS.h"
24 #include "SIZE.h"
25 #include "PARAMS.h"
26 #include "GRID.h"
27 #include "ctrl.h"
28
29 c == routine arguments ==
30
31 integer mythid
32
33 c == local variables ==
34
35 integer bi,bj
36 integer i,j,k
37 integer itlo,ithi
38 integer jtlo,jthi
39 integer jmin,jmax
40 integer imin,imax
41 integer ntmp
42 integer ivarindex
43
44 c == end of interface ==
45
46 jtlo = mybylo(mythid)
47 jthi = mybyhi(mythid)
48 itlo = mybxlo(mythid)
49 ithi = mybxhi(mythid)
50 jmin = 1-oly
51 jmax = sny+oly
52 imin = 1-olx
53 imax = snx+olx
54
55 #ifdef ALLOW_HFLUX_CONTROL
56 do bj = jtlo,jthi
57 do bi = itlo,ithi
58 do j = jmin,jmax
59 do i = imin,imax
60 xx_hflux0(i,j,bi,bj) = 0. _d 0
61 xx_hflux1(i,j,bi,bj) = 0. _d 0
62 enddo
63 enddo
64 enddo
65 enddo
66 #endif
67
68 #ifdef ALLOW_SFLUX_CONTROL
69 do bj = jtlo,jthi
70 do bi = itlo,ithi
71 do j = jmin,jmax
72 do i = imin,imax
73 xx_sflux0(i,j,bi,bj) = 0. _d 0
74 xx_sflux1(i,j,bi,bj) = 0. _d 0
75 enddo
76 enddo
77 enddo
78 enddo
79 #endif
80
81 #ifdef ALLOW_USTRESS_CONTROL
82 do bj = jtlo,jthi
83 do bi = itlo,ithi
84 do j = jmin,jmax
85 do i = imin,imax
86 xx_tauu0(i,j,bi,bj) = 0. _d 0
87 xx_tauu1(i,j,bi,bj) = 0. _d 0
88 enddo
89 enddo
90 enddo
91 enddo
92 #endif
93
94 #ifdef ALLOW_VSTRESS_CONTROL
95 do bj = jtlo,jthi
96 do bi = itlo,ithi
97 do j = jmin,jmax
98 do i = imin,imax
99 xx_tauv0(i,j,bi,bj) = 0. _d 0
100 xx_tauv1(i,j,bi,bj) = 0. _d 0
101 enddo
102 enddo
103 enddo
104 enddo
105 #endif
106
107 #ifdef ALLOW_UWIND_CONTROL
108 do bj = jtlo,jthi
109 do bi = itlo,ithi
110 do j = jmin,jmax
111 do i = imin,imax
112 xx_uwind0(i,j,bi,bj) = 0. _d 0
113 xx_uwind1(i,j,bi,bj) = 0. _d 0
114 enddo
115 enddo
116 enddo
117 enddo
118 #endif
119
120 #ifdef ALLOW_VWIND_CONTROL
121 do bj = jtlo,jthi
122 do bi = itlo,ithi
123 do j = jmin,jmax
124 do i = imin,imax
125 xx_vwind0(i,j,bi,bj) = 0. _d 0
126 xx_vwind1(i,j,bi,bj) = 0. _d 0
127 enddo
128 enddo
129 enddo
130 enddo
131 #endif
132
133 #ifdef ALLOW_ATEMP_CONTROL
134 do bj = jtlo,jthi
135 do bi = itlo,ithi
136 do j = jmin,jmax
137 do i = imin,imax
138 xx_atemp0(i,j,bi,bj) = 0. _d 0
139 xx_atemp1(i,j,bi,bj) = 0. _d 0
140 enddo
141 enddo
142 enddo
143 enddo
144 #endif
145
146 #ifdef ALLOW_AQH_CONTROL
147 do bj = jtlo,jthi
148 do bi = itlo,ithi
149 do j = jmin,jmax
150 do i = imin,imax
151 xx_aqh0(i,j,bi,bj) = 0. _d 0
152 xx_aqh1(i,j,bi,bj) = 0. _d 0
153 enddo
154 enddo
155 enddo
156 enddo
157 #endif
158
159 #ifdef ALLOW_PRECIP_CONTROL
160 do bj = jtlo,jthi
161 do bi = itlo,ithi
162 do j = jmin,jmax
163 do i = imin,imax
164 xx_precip0(i,j,bi,bj) = 0. _d 0
165 xx_precip1(i,j,bi,bj) = 0. _d 0
166 enddo
167 enddo
168 enddo
169 enddo
170 #endif
171
172 #ifdef ALLOW_SWFLUX_CONTROL
173 do bj = jtlo,jthi
174 do bi = itlo,ithi
175 do j = jmin,jmax
176 do i = imin,imax
177 xx_swflux0(i,j,bi,bj) = 0. _d 0
178 xx_swflux1(i,j,bi,bj) = 0. _d 0
179 enddo
180 enddo
181 enddo
182 enddo
183 #endif
184
185 #ifdef ALLOW_SWDOWN_CONTROL
186 do bj = jtlo,jthi
187 do bi = itlo,ithi
188 do j = jmin,jmax
189 do i = imin,imax
190 xx_swdown0(i,j,bi,bj) = 0. _d 0
191 xx_swdown1(i,j,bi,bj) = 0. _d 0
192 enddo
193 enddo
194 enddo
195 enddo
196 #endif
197
198 #ifdef ALLOW_LWFLUX_CONTROL
199 do bj = jtlo,jthi
200 do bi = itlo,ithi
201 do j = jmin,jmax
202 do i = imin,imax
203 xx_lwflux0(i,j,bi,bj) = 0. _d 0
204 xx_lwflux1(i,j,bi,bj) = 0. _d 0
205 enddo
206 enddo
207 enddo
208 enddo
209 #endif
210
211 #ifdef ALLOW_LWDOWN_CONTROL
212 do bj = jtlo,jthi
213 do bi = itlo,ithi
214 do j = jmin,jmax
215 do i = imin,imax
216 xx_lwdown0(i,j,bi,bj) = 0. _d 0
217 xx_lwdown1(i,j,bi,bj) = 0. _d 0
218 enddo
219 enddo
220 enddo
221 enddo
222 #endif
223
224 #ifdef ALLOW_EVAP_CONTROL
225 do bj = jtlo,jthi
226 do bi = itlo,ithi
227 do j = jmin,jmax
228 do i = imin,imax
229 xx_evap0(i,j,bi,bj) = 0. _d 0
230 xx_evap1(i,j,bi,bj) = 0. _d 0
231 enddo
232 enddo
233 enddo
234 enddo
235 #endif
236
237 #ifdef ALLOW_SNOWPRECIP_CONTROL
238 do bj = jtlo,jthi
239 do bi = itlo,ithi
240 do j = jmin,jmax
241 do i = imin,imax
242 xx_snowprecip0(i,j,bi,bj) = 0. _d 0
243 xx_snowprecip1(i,j,bi,bj) = 0. _d 0
244 enddo
245 enddo
246 enddo
247 enddo
248 #endif
249
250 #ifdef ALLOW_APRESSURE_CONTROL
251 do bj = jtlo,jthi
252 do bi = itlo,ithi
253 do j = jmin,jmax
254 do i = imin,imax
255 xx_apressure0(i,j,bi,bj) = 0. _d 0
256 xx_apressure1(i,j,bi,bj) = 0. _d 0
257 enddo
258 enddo
259 enddo
260 enddo
261 #endif
262
263 #ifdef ALLOW_RUNOFF_CONTROL
264 do bj = jtlo,jthi
265 do bi = itlo,ithi
266 do j = jmin,jmax
267 do i = imin,imax
268 xx_runoff0(i,j,bi,bj) = 0. _d 0
269 xx_runoff1(i,j,bi,bj) = 0. _d 0
270 enddo
271 enddo
272 enddo
273 enddo
274 #endif
275
276 #ifdef ALLOW_SST_CONTROL
277 do bj = jtlo,jthi
278 do bi = itlo,ithi
279 do j = jmin,jmax
280 do i = imin,imax
281 xx_sst0(i,j,bi,bj) = 0. _d 0
282 xx_sst1(i,j,bi,bj) = 0. _d 0
283 enddo
284 enddo
285 enddo
286 enddo
287 #endif
288
289 #ifdef ALLOW_SSS_CONTROL
290 do bj = jtlo,jthi
291 do bi = itlo,ithi
292 do j = jmin,jmax
293 do i = imin,imax
294 xx_sss0(i,j,bi,bj) = 0. _d 0
295 xx_sss1(i,j,bi,bj) = 0. _d 0
296 enddo
297 enddo
298 enddo
299 enddo
300 #endif
301
302 #ifdef ALLOW_OBCS_CONTROL
303 IF (useOBCS) CALL CTRL_INIT_OBCS_VARIABLES( mythid )
304 #endif
305
306 return
307 end
308

  ViewVC Help
Powered by ViewVC 1.1.22