1 |
c $Header: /u/gcmpack/MITgcm/pkg/exf/exf_summary.F,v 1.1.4.1 2002/11/07 17:07:57 heimbach Exp $ |
2 |
|
3 |
#include "EXF_CPPOPTIONS.h" |
4 |
|
5 |
|
6 |
subroutine exf_Summary( |
7 |
I mythid |
8 |
& ) |
9 |
|
10 |
c ================================================================== |
11 |
c SUBROUTINE exf_Summary |
12 |
c ================================================================== |
13 |
c |
14 |
c o List all the settings of the external forcing. |
15 |
c |
16 |
c started: Christian Eckert eckert@mit.edu 11-Jan-1999 |
17 |
c |
18 |
c changed: Christian Eckert eckert@mit.edu 12-Feb-2000 |
19 |
c |
20 |
c - Changed Routine names (package prefix: exf_) |
21 |
c |
22 |
c Patrick Heimbach, heimbach@mit.edu 04-May-2000 |
23 |
c |
24 |
c - changed the handling of precip and sflux with respect |
25 |
c to CPP options ALLOW_BULKFORMULAE and ALLOW_ATM_TEMP |
26 |
c |
27 |
c ================================================================== |
28 |
c SUBROUTINE exf_Summary |
29 |
c ================================================================== |
30 |
|
31 |
implicit none |
32 |
|
33 |
c == global variables == |
34 |
|
35 |
#include "EEPARAMS.h" |
36 |
#include "SIZE.h" |
37 |
#include "cal.h" |
38 |
#include "exf.h" |
39 |
#include "exf_param.h" |
40 |
|
41 |
c == routine arguments == |
42 |
|
43 |
c mythid - thread number for this instance of the routine. |
44 |
|
45 |
integer mythid |
46 |
|
47 |
c == local variables == |
48 |
|
49 |
integer i |
50 |
integer il |
51 |
integer timeint(4) |
52 |
|
53 |
character*(max_len_mbuf) msgbuf |
54 |
|
55 |
c == external == |
56 |
|
57 |
integer ilnblnk |
58 |
external ilnblnk |
59 |
|
60 |
c == end of interface == |
61 |
|
62 |
write(msgbuf,'(a)') |
63 |
&' ' |
64 |
call print_message( msgbuf, standardmessageunit, |
65 |
& SQUEEZE_RIGHT , mythid) |
66 |
write(msgbuf,'(a)') |
67 |
&'// =======================================================' |
68 |
call print_message( msgbuf, standardmessageunit, |
69 |
& SQUEEZE_RIGHT , mythid) |
70 |
write(msgbuf,'(a)') |
71 |
&'// External forcing configuration >>> START <<<' |
72 |
call print_message( msgbuf, standardmessageunit, |
73 |
& SQUEEZE_RIGHT , mythid) |
74 |
write(msgbuf,'(a)') |
75 |
&'// =======================================================' |
76 |
call print_message( msgbuf, standardmessageunit, |
77 |
& SQUEEZE_RIGHT , mythid) |
78 |
write(msgbuf,'(a)') |
79 |
&' ' |
80 |
call print_message( msgbuf, standardmessageunit, |
81 |
& SQUEEZE_RIGHT , mythid) |
82 |
write(msgbuf,'(a,a)') |
83 |
&'External forcing version: ',externalforcingversion |
84 |
call print_message( msgbuf, standardmessageunit, |
85 |
& SQUEEZE_RIGHT , mythid) |
86 |
write(msgbuf,'(a,a)') |
87 |
&'Uses Calendar version: ',usescalendarversion |
88 |
call print_message( msgbuf, standardmessageunit, |
89 |
& SQUEEZE_RIGHT , mythid) |
90 |
write(msgbuf,'(a)') |
91 |
&' ' |
92 |
call print_message( msgbuf, standardmessageunit, |
93 |
& SQUEEZE_RIGHT , mythid) |
94 |
|
95 |
c For each data set used the summary prints the calendar data |
96 |
c and the corresponding file from which the data will be read. |
97 |
|
98 |
#ifdef ALLOW_BULKFORMULAE |
99 |
write(msgbuf,'(a)') |
100 |
&'// ALLOW_BULKFORMULAE: defined' |
101 |
call print_message( msgbuf, standardmessageunit, |
102 |
& SQUEEZE_RIGHT , mythid) |
103 |
#ifdef ALLOW_ATM_TEMP |
104 |
write(msgbuf,'(a)') |
105 |
&'// ' |
106 |
call print_message( msgbuf, standardmessageunit, |
107 |
& SQUEEZE_RIGHT , mythid) |
108 |
write(msgbuf,'(a)') |
109 |
&'// ALLOW_ATM_TEMP: defined' |
110 |
call print_message( msgbuf, standardmessageunit, |
111 |
& SQUEEZE_RIGHT , mythid) |
112 |
#else |
113 |
write(msgbuf,'(a)') |
114 |
&'// ' |
115 |
call print_message( msgbuf, standardmessageunit, |
116 |
& SQUEEZE_RIGHT , mythid) |
117 |
write(msgbuf,'(a)') |
118 |
&'// ALLOW_ATM_TEMP: NOT defined' |
119 |
call print_message( msgbuf, standardmessageunit, |
120 |
& SQUEEZE_RIGHT , mythid) |
121 |
#endif |
122 |
#ifdef ALLOW_ATM_WIND |
123 |
write(msgbuf,'(a)') |
124 |
&'// ALLOW_ATM_WIND: defined' |
125 |
call print_message( msgbuf, standardmessageunit, |
126 |
& SQUEEZE_RIGHT , mythid) |
127 |
#else |
128 |
write(msgbuf,'(a)') |
129 |
&'// ALLOW_ATM_WIND: NOT defined' |
130 |
call print_message( msgbuf, standardmessageunit, |
131 |
& SQUEEZE_RIGHT , mythid) |
132 |
#endif |
133 |
#else |
134 |
write(msgbuf,'(a)') |
135 |
&'// ALLOW_BULKFORMULAE: NOT defined' |
136 |
call print_message( msgbuf, standardmessageunit, |
137 |
& SQUEEZE_RIGHT , mythid) |
138 |
#endif |
139 |
|
140 |
#ifdef ALLOW_KPP |
141 |
write(msgbuf,'(a)') |
142 |
&'// ALLOW_KPP: defined' |
143 |
call print_message( msgbuf, standardmessageunit, |
144 |
& SQUEEZE_RIGHT , mythid) |
145 |
#else |
146 |
write(msgbuf,'(a)') |
147 |
&'// ALLOW_KPP: NOT defined' |
148 |
call print_message( msgbuf, standardmessageunit, |
149 |
& SQUEEZE_RIGHT , mythid) |
150 |
#endif |
151 |
|
152 |
#ifdef ALLOW_RUNOFF |
153 |
il = ilnblnk(runofffile) |
154 |
call cal_TimeInterval( runoffperiod, 'secs', timeint, mythid ) |
155 |
|
156 |
write(msgbuf,'(a)') |
157 |
&' ' |
158 |
call print_message( msgbuf, standardmessageunit, |
159 |
& SQUEEZE_RIGHT , mythid) |
160 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
161 |
&' Runnoff starts at ', |
162 |
& (runoffstartdate(i), i=1,2), dayofweek(runoffstartdate(4)), |
163 |
& '.' |
164 |
call print_message( msgbuf, standardmessageunit, |
165 |
& SQUEEZE_RIGHT , mythid) |
166 |
write(msgbuf,'(a,i9.8,i7.6)') |
167 |
&' Runoff period is ', |
168 |
& (timeint(i), i=1,2) |
169 |
call print_message( msgbuf, standardmessageunit, |
170 |
& SQUEEZE_RIGHT , mythid) |
171 |
write(msgbuf,'(a)') |
172 |
&' Runoff is read from file:' |
173 |
call print_message( msgbuf, standardmessageunit, |
174 |
& SQUEEZE_RIGHT , mythid) |
175 |
write(msgbuf,'(a,a,a)') |
176 |
&' >> ',runofffile(1:il),' <<' |
177 |
call print_message( msgbuf, standardmessageunit, |
178 |
& SQUEEZE_RIGHT , mythid) |
179 |
#endif |
180 |
|
181 |
#ifdef ALLOW_BULKFORMULAE |
182 |
|
183 |
#ifdef ALLOW_ATM_TEMP |
184 |
c Atmospheric temperature. |
185 |
il = ilnblnk(atempfile) |
186 |
call cal_TimeInterval( atempperiod, 'secs', timeint, mythid ) |
187 |
|
188 |
write(msgbuf,'(a)') |
189 |
&' ' |
190 |
call print_message( msgbuf, standardmessageunit, |
191 |
& SQUEEZE_RIGHT , mythid) |
192 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
193 |
&' Atmospheric temperature starts at ', |
194 |
& (atempstartdate(i), i=1,2), dayofweek(atempstartdate(4)), |
195 |
& '.' |
196 |
call print_message( msgbuf, standardmessageunit, |
197 |
& SQUEEZE_RIGHT , mythid) |
198 |
write(msgbuf,'(a,i9.8,i7.6)') |
199 |
&' Atmospheric temperature period is ', |
200 |
& (timeint(i), i=1,2) |
201 |
call print_message( msgbuf, standardmessageunit, |
202 |
& SQUEEZE_RIGHT , mythid) |
203 |
write(msgbuf,'(a)') |
204 |
&' Atmospheric temperature is read from file:' |
205 |
call print_message( msgbuf, standardmessageunit, |
206 |
& SQUEEZE_RIGHT , mythid) |
207 |
write(msgbuf,'(a,a,a)') |
208 |
&' >> ',atempfile(1:il),' <<' |
209 |
call print_message( msgbuf, standardmessageunit, |
210 |
& SQUEEZE_RIGHT , mythid) |
211 |
|
212 |
c Atmospheric specific humidity. |
213 |
il = ilnblnk(aqhfile) |
214 |
call cal_TimeInterval( aqhperiod, 'secs', timeint, mythid ) |
215 |
|
216 |
write(msgbuf,'(a)') |
217 |
&' ' |
218 |
call print_message( msgbuf, standardmessageunit, |
219 |
& SQUEEZE_RIGHT , mythid) |
220 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
221 |
&' Atmospheric specific humidity starts at ', |
222 |
& (aqhstartdate(i), i=1,2), dayofweek(aqhstartdate(4)), |
223 |
& '.' |
224 |
call print_message( msgbuf, standardmessageunit, |
225 |
& SQUEEZE_RIGHT , mythid) |
226 |
write(msgbuf,'(a,i9.8,i7.6)') |
227 |
&' Atmospheric specific humidity period is ', |
228 |
& (timeint(i), i=1,2) |
229 |
call print_message( msgbuf, standardmessageunit, |
230 |
& SQUEEZE_RIGHT , mythid) |
231 |
write(msgbuf,'(a)') |
232 |
&' Atmospheric specific humidity is read from file:' |
233 |
call print_message( msgbuf, standardmessageunit, |
234 |
& SQUEEZE_RIGHT , mythid) |
235 |
write(msgbuf,'(a,a,a)') |
236 |
&' >> ',aqhfile(1:il),' <<' |
237 |
call print_message( msgbuf, standardmessageunit, |
238 |
& SQUEEZE_RIGHT , mythid) |
239 |
|
240 |
c Short wave radiative flux. |
241 |
il = ilnblnk(swfluxfile) |
242 |
call cal_TimeInterval( swfluxperiod, 'secs', timeint, mythid ) |
243 |
|
244 |
write(msgbuf,'(a)') |
245 |
&' ' |
246 |
call print_message( msgbuf, standardmessageunit, |
247 |
& SQUEEZE_RIGHT , mythid) |
248 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
249 |
&' Short wave rad. flux forcing starts at ', |
250 |
& (swfluxstartdate(i), i=1,2), dayofweek(swfluxstartdate(4)), |
251 |
& '.' |
252 |
call print_message( msgbuf, standardmessageunit, |
253 |
& SQUEEZE_RIGHT , mythid) |
254 |
write(msgbuf,'(a,i9.8,i7.6)') |
255 |
&' Short wave rad. flux forcing period is ', |
256 |
& (timeint(i), i=1,2) |
257 |
call print_message( msgbuf, standardmessageunit, |
258 |
& SQUEEZE_RIGHT , mythid) |
259 |
write(msgbuf,'(a)') |
260 |
&' Short wave rad. flux forcing is read from file:' |
261 |
call print_message( msgbuf, standardmessageunit, |
262 |
& SQUEEZE_RIGHT , mythid) |
263 |
write(msgbuf,'(a,a,a)') |
264 |
&' >> ',swfluxfile(1:il),' <<' |
265 |
call print_message( msgbuf, standardmessageunit, |
266 |
& SQUEEZE_RIGHT , mythid) |
267 |
|
268 |
c Long wave radiative flux. |
269 |
il = ilnblnk(lwfluxfile) |
270 |
call cal_TimeInterval( lwfluxperiod, 'secs', timeint, mythid ) |
271 |
|
272 |
write(msgbuf,'(a)') |
273 |
&' ' |
274 |
call print_message( msgbuf, standardmessageunit, |
275 |
& SQUEEZE_RIGHT , mythid) |
276 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
277 |
&' Long wave rad. flux forcing starts at ', |
278 |
& (lwfluxstartdate(i), i=1,2), dayofweek(lwfluxstartdate(4)), |
279 |
& '.' |
280 |
call print_message( msgbuf, standardmessageunit, |
281 |
& SQUEEZE_RIGHT , mythid) |
282 |
write(msgbuf,'(a,i9.8,i7.6)') |
283 |
&' Long wave rad. flux forcing period is ', |
284 |
& (timeint(i), i=1,2) |
285 |
call print_message( msgbuf, standardmessageunit, |
286 |
& SQUEEZE_RIGHT , mythid) |
287 |
write(msgbuf,'(a)') |
288 |
&' Long wave rad. flux forcing is read from file:' |
289 |
call print_message( msgbuf, standardmessageunit, |
290 |
& SQUEEZE_RIGHT , mythid) |
291 |
write(msgbuf,'(a,a,a)') |
292 |
&' >> ',lwfluxfile(1:il),' <<' |
293 |
call print_message( msgbuf, standardmessageunit, |
294 |
& SQUEEZE_RIGHT , mythid) |
295 |
|
296 |
c Precipitation. |
297 |
il = ilnblnk(precipfile) |
298 |
call cal_TimeInterval( precipperiod, 'secs', timeint, mythid ) |
299 |
|
300 |
write(msgbuf,'(a)') |
301 |
&' ' |
302 |
call print_message( msgbuf, standardmessageunit, |
303 |
& SQUEEZE_RIGHT , mythid) |
304 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
305 |
&' Precipitation data set starts at ', |
306 |
& (precipstartdate(i), i=1,2), dayofweek(precipstartdate(4)), |
307 |
&'.' |
308 |
call print_message( msgbuf, standardmessageunit, |
309 |
& SQUEEZE_RIGHT , mythid) |
310 |
write(msgbuf,'(a,i9.8,i7.6)') |
311 |
&' Precipitation data period is ', |
312 |
& (timeint(i), i=1,2) |
313 |
call print_message( msgbuf, standardmessageunit, |
314 |
& SQUEEZE_RIGHT , mythid) |
315 |
write(msgbuf,'(a)') |
316 |
&' Precipitation data is read from file: ' |
317 |
call print_message( msgbuf, standardmessageunit, |
318 |
& SQUEEZE_RIGHT , mythid) |
319 |
write(msgbuf,'(a,a,a)') |
320 |
&' >> ',precipfile(1:il),' <<' |
321 |
call print_message( msgbuf, standardmessageunit, |
322 |
& SQUEEZE_RIGHT , mythid) |
323 |
|
324 |
#else |
325 |
c Heat flux. |
326 |
il = ilnblnk(hfluxfile) |
327 |
call cal_TimeInterval( hfluxperiod, 'secs', timeint, mythid ) |
328 |
|
329 |
write(msgbuf,'(a)') |
330 |
&' ' |
331 |
call print_message( msgbuf, standardmessageunit, |
332 |
& SQUEEZE_RIGHT , mythid) |
333 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
334 |
&' Heat flux forcing starts at ', |
335 |
& (hfluxstartdate(i), i=1,2), dayofweek(hfluxstartdate(4)),'.' |
336 |
call print_message( msgbuf, standardmessageunit, |
337 |
& SQUEEZE_RIGHT , mythid) |
338 |
write(msgbuf,'(a,i9.8,i7.6)') |
339 |
&' Heat flux forcing period is ', |
340 |
& (timeint(i), i=1,2) |
341 |
call print_message( msgbuf, standardmessageunit, |
342 |
& SQUEEZE_RIGHT , mythid) |
343 |
write(msgbuf,'(a)') |
344 |
&' Heat flux forcing is read from file: ' |
345 |
call print_message( msgbuf, standardmessageunit, |
346 |
& SQUEEZE_RIGHT , mythid) |
347 |
write(msgbuf,'(a,a,a)') |
348 |
&' >> ',hfluxfile(1:il),' <<' |
349 |
call print_message( msgbuf, standardmessageunit, |
350 |
& SQUEEZE_RIGHT , mythid) |
351 |
|
352 |
c Salt flux. |
353 |
il = ilnblnk(sfluxfile) |
354 |
call cal_TimeInterval( sfluxperiod, 'secs', timeint, mythid ) |
355 |
|
356 |
write(msgbuf,'(a)') |
357 |
&' ' |
358 |
call print_message( msgbuf, standardmessageunit, |
359 |
& SQUEEZE_RIGHT , mythid) |
360 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
361 |
&' Salt flux forcing starts at ', |
362 |
& (sfluxstartdate(i), i=1,2), dayofweek(sfluxstartdate(4)),'.' |
363 |
call print_message( msgbuf, standardmessageunit, |
364 |
& SQUEEZE_RIGHT , mythid) |
365 |
write(msgbuf,'(a,i9.8,i7.6)') |
366 |
&' Salt flux forcing period is ', |
367 |
& (timeint(i), i=1,2) |
368 |
call print_message( msgbuf, standardmessageunit, |
369 |
& SQUEEZE_RIGHT , mythid) |
370 |
write(msgbuf,'(a)') |
371 |
&' Salt flux forcing is read from file: ' |
372 |
call print_message( msgbuf, standardmessageunit, |
373 |
& SQUEEZE_RIGHT , mythid) |
374 |
write(msgbuf,'(a,a,a)') |
375 |
&' >> ',sfluxfile(1:il),' <<' |
376 |
call print_message( msgbuf, standardmessageunit, |
377 |
& SQUEEZE_RIGHT , mythid) |
378 |
|
379 |
#ifdef ALLOW_KPP |
380 |
c Short wave radiative flux. |
381 |
il = ilnblnk(swfluxfile) |
382 |
call cal_TimeInterval( swfluxperiod, 'secs', timeint, mythid ) |
383 |
|
384 |
write(msgbuf,'(a)') |
385 |
&' ' |
386 |
call print_message( msgbuf, standardmessageunit, |
387 |
& SQUEEZE_RIGHT , mythid) |
388 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
389 |
&' Short wave rad. flux forcing starts at ', |
390 |
& (swfluxstartdate(i), i=1,2), dayofweek(swfluxstartdate(4)), |
391 |
& '.' |
392 |
call print_message( msgbuf, standardmessageunit, |
393 |
& SQUEEZE_RIGHT , mythid) |
394 |
write(msgbuf,'(a,i9.8,i7.6)') |
395 |
&' Short wave rad. flux forcing period is ', |
396 |
& (timeint(i), i=1,2) |
397 |
call print_message( msgbuf, standardmessageunit, |
398 |
& SQUEEZE_RIGHT , mythid) |
399 |
write(msgbuf,'(a)') |
400 |
&' Short wave rad. flux forcing is read from file:' |
401 |
call print_message( msgbuf, standardmessageunit, |
402 |
& SQUEEZE_RIGHT , mythid) |
403 |
write(msgbuf,'(a,a,a)') |
404 |
&' >> ',swfluxfile(1:il),' <<' |
405 |
call print_message( msgbuf, standardmessageunit, |
406 |
& SQUEEZE_RIGHT , mythid) |
407 |
#endif |
408 |
#endif |
409 |
|
410 |
#ifdef ALLOW_ATM_WIND |
411 |
c Zonal wind. |
412 |
il = ilnblnk(uwindfile) |
413 |
call cal_TimeInterval( uwindperiod, 'secs', timeint, mythid ) |
414 |
|
415 |
write(msgbuf,'(a)') |
416 |
&' ' |
417 |
call print_message( msgbuf, standardmessageunit, |
418 |
& SQUEEZE_RIGHT , mythid) |
419 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
420 |
&' Zonal wind forcing starts at ', |
421 |
& (uwindstartdate(i), i=1,2), dayofweek(uwindstartdate(4)), |
422 |
& '.' |
423 |
call print_message( msgbuf, standardmessageunit, |
424 |
& SQUEEZE_RIGHT , mythid) |
425 |
write(msgbuf,'(a,i9.8,i7.6)') |
426 |
&' Zonal wind forcing period is ', |
427 |
& (timeint(i), i=1,2) |
428 |
call print_message( msgbuf, standardmessageunit, |
429 |
& SQUEEZE_RIGHT , mythid) |
430 |
write(msgbuf,'(a)') |
431 |
&' Zonal wind forcing is read from file:' |
432 |
call print_message( msgbuf, standardmessageunit, |
433 |
& SQUEEZE_RIGHT , mythid) |
434 |
write(msgbuf,'(a,a,a)') |
435 |
&' >> ',uwindfile(1:il),' <<' |
436 |
call print_message( msgbuf, standardmessageunit, |
437 |
& SQUEEZE_RIGHT , mythid) |
438 |
|
439 |
c Meridional wind. |
440 |
il = ilnblnk(vwindfile) |
441 |
call cal_TimeInterval( vwindperiod, 'secs', timeint, mythid ) |
442 |
|
443 |
write(msgbuf,'(a)') |
444 |
&' ' |
445 |
call print_message( msgbuf, standardmessageunit, |
446 |
& SQUEEZE_RIGHT , mythid) |
447 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
448 |
&' Meridional wind forcing starts at ', |
449 |
& (vwindstartdate(i), i=1,2), dayofweek(vwindstartdate(4)), |
450 |
& '.' |
451 |
call print_message( msgbuf, standardmessageunit, |
452 |
& SQUEEZE_RIGHT , mythid) |
453 |
write(msgbuf,'(a,i9.8,i7.6)') |
454 |
&' Meridional wind forcing period is ', |
455 |
& (timeint(i), i=1,2) |
456 |
call print_message( msgbuf, standardmessageunit, |
457 |
& SQUEEZE_RIGHT , mythid) |
458 |
write(msgbuf,'(a)') |
459 |
&' Meridional wind forcing is read from file:' |
460 |
call print_message( msgbuf, standardmessageunit, |
461 |
& SQUEEZE_RIGHT , mythid) |
462 |
write(msgbuf,'(a,a,a)') |
463 |
&' >> ',vwindfile(1:il),' <<' |
464 |
call print_message( msgbuf, standardmessageunit, |
465 |
& SQUEEZE_RIGHT , mythid) |
466 |
#else |
467 |
c Zonal wind stress. |
468 |
il = ilnblnk(ustressfile) |
469 |
call cal_TimeInterval( ustressperiod, 'secs', timeint, mythid ) |
470 |
|
471 |
write(msgbuf,'(a)') |
472 |
&' ' |
473 |
call print_message( msgbuf, standardmessageunit, |
474 |
& SQUEEZE_RIGHT , mythid) |
475 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
476 |
&' Zonal wind stress forcing starts at ', |
477 |
& (ustressstartdate(i), i=1,2), dayofweek(ustressstartdate(4)), |
478 |
& '.' |
479 |
call print_message( msgbuf, standardmessageunit, |
480 |
& SQUEEZE_RIGHT , mythid) |
481 |
write(msgbuf,'(a,i9.8,i7.6)') |
482 |
&' Zonal wind stress forcing period is ', |
483 |
& (timeint(i), i=1,2) |
484 |
call print_message( msgbuf, standardmessageunit, |
485 |
& SQUEEZE_RIGHT , mythid) |
486 |
write(msgbuf,'(a)') |
487 |
&' Zonal wind stress forcing is read from file:' |
488 |
call print_message( msgbuf, standardmessageunit, |
489 |
& SQUEEZE_RIGHT , mythid) |
490 |
write(msgbuf,'(a,a,a)') |
491 |
&' >> ',ustressfile(1:il),' <<' |
492 |
call print_message( msgbuf, standardmessageunit, |
493 |
& SQUEEZE_RIGHT , mythid) |
494 |
|
495 |
c Meridional wind stress. |
496 |
il = ilnblnk(vstressfile) |
497 |
call cal_TimeInterval( vstressperiod, 'secs', timeint, mythid ) |
498 |
|
499 |
write(msgbuf,'(a)') |
500 |
&' ' |
501 |
call print_message( msgbuf, standardmessageunit, |
502 |
& SQUEEZE_RIGHT , mythid) |
503 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
504 |
&' Meridional wind stress forcing starts at ', |
505 |
& (vstressstartdate(i), i=1,2), dayofweek(vstressstartdate(4)), |
506 |
& '.' |
507 |
call print_message( msgbuf, standardmessageunit, |
508 |
& SQUEEZE_RIGHT , mythid) |
509 |
write(msgbuf,'(a,i9.8,i7.6)') |
510 |
&' Meridional wind stress forcing period is ', |
511 |
& (timeint(i), i=1,2) |
512 |
call print_message( msgbuf, standardmessageunit, |
513 |
& SQUEEZE_RIGHT , mythid) |
514 |
write(msgbuf,'(a)') |
515 |
&' Meridional wind stress forcing is read from file:' |
516 |
call print_message( msgbuf, standardmessageunit, |
517 |
& SQUEEZE_RIGHT , mythid) |
518 |
write(msgbuf,'(a,a,a)') |
519 |
&' >> ',vstressfile(1:il),' <<' |
520 |
call print_message( msgbuf, standardmessageunit, |
521 |
& SQUEEZE_RIGHT , mythid) |
522 |
#endif |
523 |
|
524 |
#else |
525 |
c Heat flux. |
526 |
il = ilnblnk(hfluxfile) |
527 |
call cal_TimeInterval( hfluxperiod, 'secs', timeint, mythid ) |
528 |
|
529 |
write(msgbuf,'(a)') |
530 |
&' ' |
531 |
call print_message( msgbuf, standardmessageunit, |
532 |
& SQUEEZE_RIGHT , mythid) |
533 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
534 |
&' Heat flux forcing starts at ', |
535 |
& (hfluxstartdate(i), i=1,2), dayofweek(hfluxstartdate(4)),'.' |
536 |
call print_message( msgbuf, standardmessageunit, |
537 |
& SQUEEZE_RIGHT , mythid) |
538 |
write(msgbuf,'(a,i9.8,i7.6)') |
539 |
&' Heat flux forcing period is ', |
540 |
& (timeint(i), i=1,2) |
541 |
call print_message( msgbuf, standardmessageunit, |
542 |
& SQUEEZE_RIGHT , mythid) |
543 |
write(msgbuf,'(a)') |
544 |
&' Heat flux forcing is read from file: ' |
545 |
call print_message( msgbuf, standardmessageunit, |
546 |
& SQUEEZE_RIGHT , mythid) |
547 |
write(msgbuf,'(a,a,a)') |
548 |
&' >> ',hfluxfile(1:il),' <<' |
549 |
call print_message( msgbuf, standardmessageunit, |
550 |
& SQUEEZE_RIGHT , mythid) |
551 |
|
552 |
c Salt flux. |
553 |
il = ilnblnk(sfluxfile) |
554 |
call cal_TimeInterval( sfluxperiod, 'secs', timeint, mythid ) |
555 |
|
556 |
write(msgbuf,'(a)') |
557 |
&' ' |
558 |
call print_message( msgbuf, standardmessageunit, |
559 |
& SQUEEZE_RIGHT , mythid) |
560 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
561 |
&' Salt flux forcing starts at ', |
562 |
& (sfluxstartdate(i), i=1,2), dayofweek(sfluxstartdate(4)),'.' |
563 |
call print_message( msgbuf, standardmessageunit, |
564 |
& SQUEEZE_RIGHT , mythid) |
565 |
write(msgbuf,'(a,i9.8,i7.6)') |
566 |
&' Salt flux forcing period is ', |
567 |
& (timeint(i), i=1,2) |
568 |
call print_message( msgbuf, standardmessageunit, |
569 |
& SQUEEZE_RIGHT , mythid) |
570 |
write(msgbuf,'(a)') |
571 |
&' Salt flux forcing is read from file: ' |
572 |
call print_message( msgbuf, standardmessageunit, |
573 |
& SQUEEZE_RIGHT , mythid) |
574 |
write(msgbuf,'(a,a,a)') |
575 |
&' >> ',sfluxfile(1:il),' <<' |
576 |
call print_message( msgbuf, standardmessageunit, |
577 |
& SQUEEZE_RIGHT , mythid) |
578 |
|
579 |
c Zonal wind stress. |
580 |
il = ilnblnk(ustressfile) |
581 |
call cal_TimeInterval( ustressperiod, 'secs', timeint, mythid ) |
582 |
|
583 |
write(msgbuf,'(a)') |
584 |
&' ' |
585 |
call print_message( msgbuf, standardmessageunit, |
586 |
& SQUEEZE_RIGHT , mythid) |
587 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
588 |
&' Zonal wind stress forcing starts at ', |
589 |
& (ustressstartdate(i), i=1,2), dayofweek(ustressstartdate(4)), |
590 |
& '.' |
591 |
call print_message( msgbuf, standardmessageunit, |
592 |
& SQUEEZE_RIGHT , mythid) |
593 |
write(msgbuf,'(a,i9.8,i7.6)') |
594 |
&' Zonal wind stress forcing period is ', |
595 |
& (timeint(i), i=1,2) |
596 |
call print_message( msgbuf, standardmessageunit, |
597 |
& SQUEEZE_RIGHT , mythid) |
598 |
write(msgbuf,'(a)') |
599 |
&' Zonal wind stress forcing is read from file:' |
600 |
call print_message( msgbuf, standardmessageunit, |
601 |
& SQUEEZE_RIGHT , mythid) |
602 |
write(msgbuf,'(a,a,a)') |
603 |
&' >> ',ustressfile(1:il),' <<' |
604 |
call print_message( msgbuf, standardmessageunit, |
605 |
& SQUEEZE_RIGHT , mythid) |
606 |
|
607 |
c Meridional wind stress. |
608 |
il = ilnblnk(vstressfile) |
609 |
call cal_TimeInterval( vstressperiod, 'secs', timeint, mythid ) |
610 |
|
611 |
write(msgbuf,'(a)') |
612 |
&' ' |
613 |
call print_message( msgbuf, standardmessageunit, |
614 |
& SQUEEZE_RIGHT , mythid) |
615 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
616 |
&' Meridional wind stress forcing starts at ', |
617 |
& (vstressstartdate(i), i=1,2), dayofweek(vstressstartdate(4)), |
618 |
& '.' |
619 |
call print_message( msgbuf, standardmessageunit, |
620 |
& SQUEEZE_RIGHT , mythid) |
621 |
write(msgbuf,'(a,i9.8,i7.6)') |
622 |
&' Meridional wind stress forcing period is ', |
623 |
& (timeint(i), i=1,2) |
624 |
call print_message( msgbuf, standardmessageunit, |
625 |
& SQUEEZE_RIGHT , mythid) |
626 |
write(msgbuf,'(a)') |
627 |
&' Meridional wind stress forcing is read from file:' |
628 |
call print_message( msgbuf, standardmessageunit, |
629 |
& SQUEEZE_RIGHT , mythid) |
630 |
write(msgbuf,'(a,a,a)') |
631 |
&' >> ',vstressfile(1:il),' <<' |
632 |
call print_message( msgbuf, standardmessageunit, |
633 |
& SQUEEZE_RIGHT , mythid) |
634 |
|
635 |
#ifdef ALLOW_KPP |
636 |
c Short wave radiative flux. |
637 |
il = ilnblnk(swfluxfile) |
638 |
call cal_TimeInterval( swfluxperiod, 'secs', timeint, mythid ) |
639 |
|
640 |
write(msgbuf,'(a)') |
641 |
&' ' |
642 |
call print_message( msgbuf, standardmessageunit, |
643 |
& SQUEEZE_RIGHT , mythid) |
644 |
write(msgbuf,'(a,i9.8,i7.6,1x,a,a)') |
645 |
&' Short wave rad. flux forcing starts at ', |
646 |
& (swfluxstartdate(i), i=1,2), dayofweek(swfluxstartdate(4)), |
647 |
& '.' |
648 |
call print_message( msgbuf, standardmessageunit, |
649 |
& SQUEEZE_RIGHT , mythid) |
650 |
write(msgbuf,'(a,i9.8,i7.6)') |
651 |
&' Short wave rad. flux forcing period is ', |
652 |
& (timeint(i), i=1,2) |
653 |
call print_message( msgbuf, standardmessageunit, |
654 |
& SQUEEZE_RIGHT , mythid) |
655 |
write(msgbuf,'(a)') |
656 |
&' Short wave rad. flux forcing is read from file:' |
657 |
call print_message( msgbuf, standardmessageunit, |
658 |
& SQUEEZE_RIGHT , mythid) |
659 |
write(msgbuf,'(a,a,a)') |
660 |
&' >> ',swfluxfile(1:il),' <<' |
661 |
call print_message( msgbuf, standardmessageunit, |
662 |
& SQUEEZE_RIGHT , mythid) |
663 |
#endif |
664 |
|
665 |
#endif |
666 |
|
667 |
#ifdef ALLOW_KPP |
668 |
write(msgbuf,'(a)') |
669 |
&'// ALLOW_KPP: defined' |
670 |
call print_message( msgbuf, standardmessageunit, |
671 |
& SQUEEZE_RIGHT , mythid) |
672 |
#else |
673 |
write(msgbuf,'(a)') |
674 |
&'// ALLOW_KPP: NOT defined' |
675 |
call print_message( msgbuf, standardmessageunit, |
676 |
& SQUEEZE_RIGHT , mythid) |
677 |
#endif |
678 |
|
679 |
write(msgbuf,'(a)') |
680 |
&' ' |
681 |
call print_message( msgbuf, standardmessageunit, |
682 |
& SQUEEZE_RIGHT , mythid) |
683 |
write(msgbuf,'(a)') |
684 |
&'// =======================================================' |
685 |
call print_message( msgbuf, standardmessageunit, |
686 |
& SQUEEZE_RIGHT , mythid) |
687 |
write(msgbuf,'(a)') |
688 |
&'// External forcing configuration >>> END <<<' |
689 |
call print_message( msgbuf, standardmessageunit, |
690 |
& SQUEEZE_RIGHT , mythid) |
691 |
write(msgbuf,'(a)') |
692 |
&'// =======================================================' |
693 |
call print_message( msgbuf, standardmessageunit, |
694 |
& SQUEEZE_RIGHT , mythid) |
695 |
write(msgbuf,'(a)') |
696 |
&' ' |
697 |
call print_message( msgbuf, standardmessageunit, |
698 |
& SQUEEZE_RIGHT , mythid) |
699 |
|
700 |
end |