/[MITgcm]/MITgcm/pkg/exf/exf_summary.F
ViewVC logotype

Annotation of /MITgcm/pkg/exf/exf_summary.F

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


Revision 1.17 - (hide annotations) (download)
Wed Jun 11 18:55:10 2008 UTC (16 years ago) by gforget
Branch: MAIN
CVS Tags: checkpoint60, checkpoint61, checkpoint61e, checkpoint61d, checkpoint61b, checkpoint61c, checkpoint61a
Changes since 1.16: +27 -1 lines
Adding a capability to exf: read ice area from file.

1 gforget 1.17 C $Header: /u/gcmpack/MITgcm/pkg/exf/exf_summary.F,v 1.16 2008/02/01 20:34:00 mlosch Exp $
2 jmc 1.8 C $Name: $
3 heimbach 1.1
4 edhill 1.6 #include "EXF_OPTIONS.h"
5 heimbach 1.1
6    
7 jmc 1.12 SUBROUTINE EXF_SUMMARY( myThid )
8 heimbach 1.1
9     c ==================================================================
10 heimbach 1.11 c SUBROUTINE exf_summary
11 heimbach 1.1 c ==================================================================
12     c
13     c o List all the settings of the external forcing.
14     c
15 dimitri 1.4 c started: Christian Eckert eckert@mit.edu 11-Jan-1999
16 heimbach 1.1 c
17 dimitri 1.4 c changed: Christian Eckert eckert@mit.edu 12-Feb-2000
18     c - changed routine names (package prefix: exf_)
19 heimbach 1.1 c
20 dimitri 1.4 c changed: Patrick Heimbach heimbach@mit.edu 04-May-2000
21 heimbach 1.1 c - changed the handling of precip and sflux with respect
22     c to CPP options ALLOW_BULKFORMULAE and ALLOW_ATM_TEMP
23     c
24 dimitri 1.4 c changed: Dimitris Menemenlis menemenlis@jpl.nasa.gov 20-Dec-2002
25     c - modifications for using pkg/exf with pkg/seaice
26 dimitri 1.3 c
27 heimbach 1.1 c ==================================================================
28 heimbach 1.11 c SUBROUTINE exf_summary
29 heimbach 1.1 c ==================================================================
30    
31     implicit none
32    
33 jmc 1.12 C == global variables ==
34 heimbach 1.1
35     #include "EEPARAMS.h"
36     #include "SIZE.h"
37     #include "cal.h"
38 jmc 1.12 #include "EXF_CONSTANTS.h"
39 jmc 1.8 #include "EXF_PARAM.h"
40 heimbach 1.1
41 jmc 1.12 C == routine arguments ==
42 heimbach 1.1
43 jmc 1.12 C myThid - thread number for this instance of the routine.
44 heimbach 1.1
45 jmc 1.12 integer myThid
46 heimbach 1.1
47 jmc 1.12 C == local variables ==
48 heimbach 1.1
49     integer il
50    
51     character*(max_len_mbuf) msgbuf
52    
53 jmc 1.12 C == external ==
54 heimbach 1.1
55     integer ilnblnk
56     external ilnblnk
57    
58 jmc 1.12 C == end of interface ==
59 heimbach 1.1
60 jmc 1.12 _BEGIN_MASTER( myThid )
61    
62     write(msgbuf,'(a)') ' '
63 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
64     & SQUEEZE_RIGHT , mythid)
65     write(msgbuf,'(a)')
66     &'// ======================================================='
67     call print_message( msgbuf, standardmessageunit,
68     & SQUEEZE_RIGHT , mythid)
69     write(msgbuf,'(a)')
70     &'// External forcing configuration >>> START <<<'
71     call print_message( msgbuf, standardmessageunit,
72     & SQUEEZE_RIGHT , mythid)
73     write(msgbuf,'(a)')
74     &'// ======================================================='
75     call print_message( msgbuf, standardmessageunit,
76     & SQUEEZE_RIGHT , mythid)
77 jmc 1.12 write(msgbuf,'(a)') ' '
78 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
79     & SQUEEZE_RIGHT , mythid)
80    
81 jmc 1.12 C-- Print general parameters:
82     WRITE(msgBuf,'(A)') ' EXF general parameters:'
83     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
84     & SQUEEZE_RIGHT , myThid )
85     WRITE(msgBuf,'(A)') ' '
86     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
87     & SQUEEZE_RIGHT , myThid )
88     CALL WRITE_0D_C( exf_yftype, 0, INDEX_NONE, 'exf_yftype = ',
89     & ' /* ? */')
90     CALL WRITE_0D_I( exf_iprec, INDEX_NONE, 'exf_iprec =',
91     & ' /* exf file precision */')
92     CALL WRITE_0D_L( useExfYearlyFields, INDEX_NONE,
93     & 'useExfYearlyFields =',
94     & ' /* add extension _YEAR to input file names */')
95     CALL WRITE_0D_L( twoDigitYear, INDEX_NONE, 'twoDigitYear =',
96     & ' /* use 2-digit year extension */')
97     CALL WRITE_0D_L( useExfCheckRange, INDEX_NONE,
98     & 'useExfCheckRange =',
99     & ' /* check for fields range */')
100     CALL WRITE_0D_R8( exf_monFreq, INDEX_NONE, 'exf_monFreq =',
101     & ' /* EXF monitor frequency [ s ] */')
102     CALL WRITE_0D_R8( repeatPeriod, INDEX_NONE, 'repeatPeriod =',
103     & ' /* period for cycling forcing dataset [ s ] */')
104     CALL WRITE_0D_R8( climtempfreeze, INDEX_NONE,'climTempFreeze=',
105     & ' /* Minimum climatological temperature [deg.C] */')
106     CALL WRITE_0D_R8( windStressMax, INDEX_NONE,'windStressMax =',
107     & ' /* Maximum absolute windstress [ Pa ] */')
108 jmc 1.15 CALL WRITE_0D_L( stressIsOnCgrid,INDEX_NONE,'stressIsOnCgrid =',
109     & ' /* set u,v_stress on Arakawa C-grid */')
110 jmc 1.13 CALL WRITE_0D_R8( cen2kel, INDEX_NONE, 'cen2kel =',
111     & ' /* conversion of deg. Centigrade to Kelvin [K] */')
112     CALL WRITE_0D_R8( gravity_mks, INDEX_NONE, 'gravity_mks=',
113     & ' /* gravitational acceleration [m/s^2] */')
114 jmc 1.12 CALL WRITE_0D_R8( atmrho, INDEX_NONE, 'atmrho =',
115     & ' /* mean atmospheric density [kg/m^3] */')
116     CALL WRITE_0D_R8( atmcp, INDEX_NONE, 'atmcp =',
117     & ' /* mean atmospheric specific heat [J/kg/K] */')
118     CALL WRITE_0D_R8( flamb, INDEX_NONE, 'flamb =',
119     & ' /* latent heat of evaporation [J/kg] */')
120     CALL WRITE_0D_R8( flami, INDEX_NONE, 'flami =',
121     & ' /* latent heat of pure-ice melting [J/kg] */')
122     CALL WRITE_0D_R8( cvapor_fac, INDEX_NONE, 'cvapor_fac =',
123     & ' /* const. for Saturation calculation [?] */')
124     CALL WRITE_0D_R8( cvapor_exp, INDEX_NONE, 'cvapor_exp =',
125     & ' /* const. for Saturation calculation [?] */')
126     CALL WRITE_0D_R8( cvapor_fac_ice, INDEX_NONE, 'cvapor_fac_ice=',
127     & ' /* const. for Saturation calculation [?] */')
128     CALL WRITE_0D_R8( cvapor_exp_ice, INDEX_NONE, 'cvapor_exp_ice=',
129     & ' /* const. for Saturation calculation [?] */')
130     CALL WRITE_0D_R8( humid_fac, INDEX_NONE, 'humid_fac =',
131     & ' /* humidity coef. in virtual temp. [(kg/kg)^-1] */')
132     CALL WRITE_0D_R8( gamma_blk, INDEX_NONE, 'gamma_blk =',
133     & ' /* adiabatic lapse rate [?] */')
134     CALL WRITE_0D_R8( saltsat, INDEX_NONE, 'saltsat =',
135     & ' /* reduction of Qsat over salty water [-] */')
136 jmc 1.13 CALL WRITE_0D_R8( cdrag_1, INDEX_NONE, 'cDrag_1 =',
137     & ' /* coef used in drag calculation [?] */')
138     CALL WRITE_0D_R8( cdrag_2, INDEX_NONE, 'cDrag_2 =',
139     & ' /* coef used in drag calculation [?] */')
140     CALL WRITE_0D_R8( cdrag_3, INDEX_NONE, 'cDrag_3 =',
141     & ' /* coef used in drag calculation [?] */')
142     CALL WRITE_0D_R8( cstanton_1, INDEX_NONE, 'cStanton_1 =',
143     & ' /* coef used in Stanton number calculation [?] */')
144     CALL WRITE_0D_R8( cstanton_2, INDEX_NONE, 'cStanton_2 =',
145     & ' /* coef used in Stanton number calculation [?] */')
146     CALL WRITE_0D_R8( cdalton, INDEX_NONE, 'cDalton =',
147     & ' /* coef used in Dalton number calculation [?] */')
148 jmc 1.12 CALL WRITE_0D_R8( exf_scal_BulkCdn, INDEX_NONE,
149     & 'exf_scal_BulkCdn=',
150     & ' /* Drag coefficient scaling factor [-] */')
151 jmc 1.13 CALL WRITE_0D_R8( zolmin, INDEX_NONE, 'zolmin =',
152     & ' /* minimum stability parameter [?] */')
153 jmc 1.12 CALL WRITE_0D_R8( psim_fac, INDEX_NONE, 'psim_fac =',
154     & ' /* coef used in turbulent fluxes calculation [-] */')
155 jmc 1.14 CALL WRITE_0D_R8( zref, INDEX_NONE, 'zref =',
156 jmc 1.12 & ' /* reference height [ m ] */')
157     CALL WRITE_0D_R8( hu, INDEX_NONE, 'hu =',
158     & ' /* height of mean wind [ m ] */')
159 jmc 1.14 CALL WRITE_0D_R8( ht, INDEX_NONE, 'ht =',
160 jmc 1.12 & ' /* height of mean temperature [ m ] */')
161 jmc 1.14 CALL WRITE_0D_R8( hq, INDEX_NONE, 'hq =',
162 jmc 1.12 & ' /* height of mean spec.humidity [ m ] */')
163     CALL WRITE_0D_R8( umin, INDEX_NONE, 'uMin =',
164     & ' /* minimum wind speed [m/s] */')
165 jmc 1.13 CALL WRITE_0D_L( useStabilityFct_overIce, INDEX_NONE,
166     & 'useStabilityFct_overIce=',
167     & ' /* transfert Coeffs over sea-ice depend on stability */')
168     CALL WRITE_0D_R8( exf_iceCd, INDEX_NONE, 'exf_iceCd =',
169     & ' /* drag coefficient over sea-ice (fixed) [-] */')
170     CALL WRITE_0D_R8( exf_iceCe, INDEX_NONE, 'exf_iceCe =',
171     & ' /* transfert coeff. over sea-ice, for Evap (fixed) [-] */')
172 jmc 1.14 CALL WRITE_0D_R8( exf_iceCh, INDEX_NONE, 'exf_iceCh =',
173 jmc 1.13 & ' /* transfert coeff. over sea-ice, Sens.Heat.(fixed)[-] */')
174     CALL WRITE_0D_R8( exf_albedo, INDEX_NONE, 'exf_albedo =',
175     & ' /* Sea-water albedo [-] */')
176     CALL WRITE_0D_R8( ocean_emissivity, INDEX_NONE,
177     & 'ocean_emissivity =',
178     & ' /* longwave ocean-surface emissivity [-] */')
179     CALL WRITE_0D_R8( ice_emissivity, INDEX_NONE,'ice_emissivity =',
180     & ' /* longwave seaice emissivity [-] */')
181     CALL WRITE_0D_R8(snow_emissivity, INDEX_NONE,'snow_emissivity =',
182     & ' /* longwave snow emissivity [-] */')
183 jmc 1.12 WRITE(msgBuf,'(A)') ' '
184     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
185     & SQUEEZE_RIGHT , myThid )
186    
187     C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
188     C-- Print settings of some CPP flags.
189     WRITE(msgBuf,'(A)') ' EXF main CPP flags:'
190     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
191     & SQUEEZE_RIGHT , myThid )
192     WRITE(msgBuf,'(A)') ' '
193     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
194     & SQUEEZE_RIGHT , myThid )
195 heimbach 1.1
196     #ifdef ALLOW_ATM_TEMP
197     write(msgbuf,'(a)')
198 dimitri 1.3 &'// ALLOW_ATM_TEMP: defined'
199 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
200     & SQUEEZE_RIGHT , mythid)
201     #else
202     write(msgbuf,'(a)')
203 dimitri 1.3 &'// ALLOW_ATM_TEMP: NOT defined'
204 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
205     & SQUEEZE_RIGHT , mythid)
206     #endif
207 dimitri 1.4
208 heimbach 1.1 #ifdef ALLOW_ATM_WIND
209     write(msgbuf,'(a)')
210 dimitri 1.3 &'// ALLOW_ATM_WIND: defined'
211     call print_message( msgbuf, standardmessageunit,
212     & SQUEEZE_RIGHT , mythid)
213     #else
214     write(msgbuf,'(a)')
215     &'// ALLOW_ATM_WIND: NOT defined'
216     call print_message( msgbuf, standardmessageunit,
217     & SQUEEZE_RIGHT , mythid)
218     #endif
219 dimitri 1.4
220     #ifdef ALLOW_DOWNWARD_RADIATION
221 dimitri 1.3 write(msgbuf,'(a)')
222 dimitri 1.4 &'// ALLOW_DOWNWARD_RADIATION: defined'
223 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
224     & SQUEEZE_RIGHT , mythid)
225     #else
226     write(msgbuf,'(a)')
227 dimitri 1.5 &'// ALLOW_DOWNWARD_RADIATION: NOT defined'
228 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
229     & SQUEEZE_RIGHT , mythid)
230     #endif
231    
232 dimitri 1.4 #ifdef ALLOW_BULKFORMULAE
233 heimbach 1.1 write(msgbuf,'(a)')
234 dimitri 1.4 &'// ALLOW_BULKFORMULAE: defined'
235 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
236     & SQUEEZE_RIGHT , mythid)
237     #else
238     write(msgbuf,'(a)')
239 dimitri 1.4 &'// ALLOW_BULKFORMULAE: NOT defined'
240 heimbach 1.2 call print_message( msgbuf, standardmessageunit,
241     & SQUEEZE_RIGHT , mythid)
242     #endif
243    
244 jmc 1.12 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
245    
246     C-- For each data set used the summary prints the calendar data
247     C and the corresponding file from which the data will be read.
248 dimitri 1.3
249 dimitri 1.4 #ifndef ALLOW_ATM_WIND
250 jmc 1.12 C-- Zonal wind stress.
251 dimitri 1.4 il = ilnblnk(ustressfile)
252 jmc 1.12 write(msgbuf,'(a)') ' '
253 dimitri 1.3 call print_message( msgbuf, standardmessageunit,
254     & SQUEEZE_RIGHT , mythid)
255 dimitri 1.7 write(msgbuf,'(a,f12.0)')
256 dimitri 1.4 &' Zonal wind stress forcing starts at ',
257 dimitri 1.7 & ustressstartdate
258 dimitri 1.3 call print_message( msgbuf, standardmessageunit,
259     & SQUEEZE_RIGHT , mythid)
260 dimitri 1.7 write(msgbuf,'(a,f12.0)')
261 dimitri 1.4 &' Zonal wind stress forcing period is ',
262 dimitri 1.7 & ustressperiod
263 dimitri 1.3 call print_message( msgbuf, standardmessageunit,
264     & SQUEEZE_RIGHT , mythid)
265     write(msgbuf,'(a)')
266 dimitri 1.4 &' Zonal wind stress forcing is read from file:'
267 dimitri 1.3 call print_message( msgbuf, standardmessageunit,
268     & SQUEEZE_RIGHT , mythid)
269     write(msgbuf,'(a,a,a)')
270 dimitri 1.4 &' >> ',ustressfile(1:il),' <<'
271 dimitri 1.3 call print_message( msgbuf, standardmessageunit,
272     & SQUEEZE_RIGHT , mythid)
273 heimbach 1.2
274 jmc 1.12 C-- Meridional wind stress.
275 dimitri 1.4 il = ilnblnk(vstressfile)
276 jmc 1.12 write(msgbuf,'(a)') ' '
277 heimbach 1.2 call print_message( msgbuf, standardmessageunit,
278     & SQUEEZE_RIGHT , mythid)
279 dimitri 1.7 write(msgbuf,'(a,f12.0)')
280 dimitri 1.4 &' Meridional wind stress forcing starts at ',
281 dimitri 1.7 & vstressstartdate
282 heimbach 1.2 call print_message( msgbuf, standardmessageunit,
283     & SQUEEZE_RIGHT , mythid)
284 dimitri 1.7 write(msgbuf,'(a,f12.0)')
285 dimitri 1.4 &' Meridional wind stress forcing period is ',
286 dimitri 1.7 & vstressperiod
287 heimbach 1.2 call print_message( msgbuf, standardmessageunit,
288     & SQUEEZE_RIGHT , mythid)
289     write(msgbuf,'(a)')
290 dimitri 1.4 &' Meridional wind stress forcing is read from file:'
291 heimbach 1.2 call print_message( msgbuf, standardmessageunit,
292     & SQUEEZE_RIGHT , mythid)
293     write(msgbuf,'(a,a,a)')
294 dimitri 1.4 &' >> ',vstressfile(1:il),' <<'
295 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
296     & SQUEEZE_RIGHT , mythid)
297 dimitri 1.4 #endif
298 heimbach 1.1
299 dimitri 1.4 #ifndef ALLOW_ATM_TEMP
300 jmc 1.12 C-- Heat flux.
301 dimitri 1.4 il = ilnblnk(hfluxfile)
302 jmc 1.12 write(msgbuf,'(a)') ' '
303 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
304     & SQUEEZE_RIGHT , mythid)
305 dimitri 1.7 write(msgbuf,'(a,f12.0)')
306 dimitri 1.4 &' Heat flux forcing starts at ',
307 dimitri 1.7 & hfluxstartdate
308 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
309     & SQUEEZE_RIGHT , mythid)
310 dimitri 1.7 write(msgbuf,'(a,f12.0)')
311 dimitri 1.4 &' Heat flux forcing period is ',
312 dimitri 1.7 & hfluxperiod
313 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
314     & SQUEEZE_RIGHT , mythid)
315     write(msgbuf,'(a)')
316 dimitri 1.4 &' Heat flux forcing is read from file: '
317 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
318     & SQUEEZE_RIGHT , mythid)
319     write(msgbuf,'(a,a,a)')
320 dimitri 1.4 &' >> ',hfluxfile(1:il),' <<'
321 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
322     & SQUEEZE_RIGHT , mythid)
323    
324 jmc 1.12 C-- Salt flux.
325 dimitri 1.4 il = ilnblnk(sfluxfile)
326 jmc 1.12 write(msgbuf,'(a)') ' '
327 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
328     & SQUEEZE_RIGHT , mythid)
329 dimitri 1.7 write(msgbuf,'(a,f12.0)')
330 dimitri 1.4 &' Salt flux forcing starts at ',
331 dimitri 1.7 & sfluxstartdate
332 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
333     & SQUEEZE_RIGHT , mythid)
334 dimitri 1.7 write(msgbuf,'(a,f12.0)')
335 dimitri 1.4 &' Salt flux forcing period is ',
336 dimitri 1.7 & sfluxperiod
337 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
338     & SQUEEZE_RIGHT , mythid)
339     write(msgbuf,'(a)')
340 dimitri 1.4 &' Salt flux forcing is read from file: '
341 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
342     & SQUEEZE_RIGHT , mythid)
343     write(msgbuf,'(a,a,a)')
344 dimitri 1.4 &' >> ',sfluxfile(1:il),' <<'
345 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
346     & SQUEEZE_RIGHT , mythid)
347 dimitri 1.4 #endif
348 heimbach 1.1
349 dimitri 1.4 #if defined(ALLOW_ATM_TEMP) || defined(SHORTWAVE_HEATING)
350 jmc 1.12 C-- Net shortwave.
351 heimbach 1.1 il = ilnblnk(swfluxfile)
352 jmc 1.12 write(msgbuf,'(a)') ' '
353 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
354     & SQUEEZE_RIGHT , mythid)
355 dimitri 1.7 write(msgbuf,'(a,f12.0)')
356 dimitri 1.4 &' Net shortwave flux forcing starts at ',
357 dimitri 1.7 & swfluxstartdate
358 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
359     & SQUEEZE_RIGHT , mythid)
360 dimitri 1.7 write(msgbuf,'(a,f12.0)')
361 dimitri 1.4 &' Net shortwave flux forcing period is ',
362 dimitri 1.7 & swfluxperiod
363 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
364     & SQUEEZE_RIGHT , mythid)
365     write(msgbuf,'(a)')
366 dimitri 1.4 &' Net shortwave flux forcing is read from file:'
367 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
368     & SQUEEZE_RIGHT , mythid)
369     write(msgbuf,'(a,a,a)')
370     &' >> ',swfluxfile(1:il),' <<'
371     call print_message( msgbuf, standardmessageunit,
372     & SQUEEZE_RIGHT , mythid)
373 dimitri 1.4 #endif
374 heimbach 1.1
375 dimitri 1.4 #ifdef ALLOW_ATM_WIND
376 jmc 1.12 C-- Zonal wind.
377 dimitri 1.4 il = ilnblnk(uwindfile)
378 jmc 1.12 write(msgbuf,'(a)') ' '
379 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
380     & SQUEEZE_RIGHT , mythid)
381 dimitri 1.7 write(msgbuf,'(a,f12.0)')
382 dimitri 1.4 &' Zonal wind forcing starts at ',
383 dimitri 1.7 & uwindstartdate
384 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
385     & SQUEEZE_RIGHT , mythid)
386 dimitri 1.7 write(msgbuf,'(a,f12.0)')
387 dimitri 1.4 &' Zonal wind forcing period is ',
388 dimitri 1.7 & uwindperiod
389 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
390     & SQUEEZE_RIGHT , mythid)
391     write(msgbuf,'(a)')
392 dimitri 1.4 &' Zonal wind forcing is read from file:'
393 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
394     & SQUEEZE_RIGHT , mythid)
395     write(msgbuf,'(a,a,a)')
396 dimitri 1.4 &' >> ',uwindfile(1:il),' <<'
397 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
398     & SQUEEZE_RIGHT , mythid)
399    
400 jmc 1.12 C-- Meridional wind.
401 dimitri 1.4 il = ilnblnk(vwindfile)
402 jmc 1.12 write(msgbuf,'(a)') ' '
403 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
404     & SQUEEZE_RIGHT , mythid)
405 dimitri 1.7 write(msgbuf,'(a,f12.0)')
406 dimitri 1.4 &' Meridional wind forcing starts at ',
407 dimitri 1.7 & vwindstartdate
408 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
409     & SQUEEZE_RIGHT , mythid)
410 dimitri 1.7 write(msgbuf,'(a,f12.0)')
411 dimitri 1.4 &' Meridional wind forcing period is ',
412 dimitri 1.7 & vwindperiod
413 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
414     & SQUEEZE_RIGHT , mythid)
415     write(msgbuf,'(a)')
416 dimitri 1.4 &' Meridional wind forcing is read from file:'
417 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
418     & SQUEEZE_RIGHT , mythid)
419     write(msgbuf,'(a,a,a)')
420 dimitri 1.4 &' >> ',vwindfile(1:il),' <<'
421 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
422     & SQUEEZE_RIGHT , mythid)
423 dimitri 1.4 #endif
424 heimbach 1.1
425 dimitri 1.4 #ifdef ALLOW_ATM_TEMP
426 jmc 1.12 C-- Atmospheric temperature.
427 dimitri 1.4 il = ilnblnk(atempfile)
428 jmc 1.12 write(msgbuf,'(a)') ' '
429 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
430     & SQUEEZE_RIGHT , mythid)
431 dimitri 1.7 write(msgbuf,'(a,f12.0)')
432 dimitri 1.4 &' Atmospheric temperature starts at ',
433 dimitri 1.7 & atempstartdate
434 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
435     & SQUEEZE_RIGHT , mythid)
436 dimitri 1.7 write(msgbuf,'(a,f12.0)')
437 dimitri 1.4 &' Atmospheric temperature period is ',
438 dimitri 1.7 & atempperiod
439 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
440     & SQUEEZE_RIGHT , mythid)
441     write(msgbuf,'(a)')
442 dimitri 1.4 &' Atmospheric temperature is read from file:'
443 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
444     & SQUEEZE_RIGHT , mythid)
445     write(msgbuf,'(a,a,a)')
446 dimitri 1.4 &' >> ',atempfile(1:il),' <<'
447 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
448     & SQUEEZE_RIGHT , mythid)
449    
450 jmc 1.12 C-- Atmospheric specific humidity.
451 dimitri 1.4 il = ilnblnk(aqhfile)
452 jmc 1.12 write(msgbuf,'(a)') ' '
453 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
454     & SQUEEZE_RIGHT , mythid)
455 dimitri 1.7 write(msgbuf,'(a,f12.0)')
456 dimitri 1.4 &' Atmospheric specific humidity starts at ',
457 dimitri 1.7 & aqhstartdate
458 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
459     & SQUEEZE_RIGHT , mythid)
460 dimitri 1.7 write(msgbuf,'(a,f12.0)')
461 dimitri 1.4 &' Atmospheric specific humidity period is ',
462 dimitri 1.7 & aqhperiod
463 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
464     & SQUEEZE_RIGHT , mythid)
465     write(msgbuf,'(a)')
466 dimitri 1.4 &' Atmospheric specific humidity is read from file:'
467 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
468     & SQUEEZE_RIGHT , mythid)
469     write(msgbuf,'(a,a,a)')
470 dimitri 1.4 &' >> ',aqhfile(1:il),' <<'
471 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
472     & SQUEEZE_RIGHT , mythid)
473    
474 jmc 1.12 C-- Net longwave.
475 dimitri 1.4 il = ilnblnk(lwfluxfile)
476 jmc 1.12 write(msgbuf,'(a)') ' '
477 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
478     & SQUEEZE_RIGHT , mythid)
479 dimitri 1.7 write(msgbuf,'(a,f12.0)')
480 dimitri 1.4 &' Net longwave flux forcing starts at ',
481 dimitri 1.7 & lwfluxstartdate
482 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
483     & SQUEEZE_RIGHT , mythid)
484 dimitri 1.7 write(msgbuf,'(a,f12.0)')
485 dimitri 1.4 &' Net longwave flux forcing period is ',
486 dimitri 1.7 & lwfluxperiod
487 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
488     & SQUEEZE_RIGHT , mythid)
489     write(msgbuf,'(a)')
490 dimitri 1.4 &' Net longwave flux forcing is read from file:'
491 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
492     & SQUEEZE_RIGHT , mythid)
493     write(msgbuf,'(a,a,a)')
494 dimitri 1.4 &' >> ',lwfluxfile(1:il),' <<'
495 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
496     & SQUEEZE_RIGHT , mythid)
497    
498 jmc 1.12 C-- Precipitation.
499 dimitri 1.4 il = ilnblnk(precipfile)
500 jmc 1.12 write(msgbuf,'(a)') ' '
501 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
502     & SQUEEZE_RIGHT , mythid)
503 dimitri 1.7 write(msgbuf,'(a,f12.0)')
504 dimitri 1.4 &' Precipitation data set starts at ',
505 dimitri 1.7 & precipstartdate
506 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
507     & SQUEEZE_RIGHT , mythid)
508 dimitri 1.7 write(msgbuf,'(a,f12.0)')
509 dimitri 1.4 &' Precipitation data period is ',
510 dimitri 1.7 & precipperiod
511 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
512     & SQUEEZE_RIGHT , mythid)
513     write(msgbuf,'(a)')
514 dimitri 1.4 &' Precipitation data is read from file: '
515 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
516     & SQUEEZE_RIGHT , mythid)
517     write(msgbuf,'(a,a,a)')
518 dimitri 1.4 &' >> ',precipfile(1:il),' <<'
519 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
520     & SQUEEZE_RIGHT , mythid)
521 dimitri 1.4 #endif
522 heimbach 1.1
523 jmc 1.12 C-- Evaporation.
524     write(msgbuf,'(a)') ' '
525     call print_message( msgbuf, standardmessageunit,
526     & SQUEEZE_RIGHT , mythid)
527 dimitri 1.4 #ifdef EXF_READ_EVAP
528 heimbach 1.1 write(msgbuf,'(a)')
529 dimitri 1.4 &'// EXF_READ_EVAP: defined'
530 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
531     & SQUEEZE_RIGHT , mythid)
532 dimitri 1.4 il = ilnblnk(evapfile)
533 dimitri 1.7 write(msgbuf,'(a,f12.0)')
534 dimitri 1.4 &' Evaporation starts at ',
535 dimitri 1.7 & evapstartdate
536 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
537     & SQUEEZE_RIGHT , mythid)
538 dimitri 1.7 write(msgbuf,'(a,f12.0)')
539 dimitri 1.4 &' Evaporation period is ',
540 dimitri 1.7 & evapperiod
541 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
542     & SQUEEZE_RIGHT , mythid)
543     write(msgbuf,'(a)')
544 dimitri 1.4 &' Evaporation is read from file:'
545 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
546     & SQUEEZE_RIGHT , mythid)
547     write(msgbuf,'(a,a,a)')
548 dimitri 1.4 &' >> ',evapfile(1:il),' <<'
549 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
550     & SQUEEZE_RIGHT , mythid)
551 dimitri 1.4 #else
552 heimbach 1.1 write(msgbuf,'(a)')
553 dimitri 1.4 &'// EXF_READ_EVAP: NOT defined'
554 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
555     & SQUEEZE_RIGHT , mythid)
556 dimitri 1.4 #endif
557    
558 jmc 1.12 C-- Runoff.
559     write(msgbuf,'(a)') ' '
560     call print_message( msgbuf, standardmessageunit,
561     & SQUEEZE_RIGHT , mythid)
562 dimitri 1.4 #ifdef ALLOW_RUNOFF
563 heimbach 1.1 write(msgbuf,'(a)')
564 dimitri 1.4 &'// ALLOW_RUNOFF: defined'
565 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
566     & SQUEEZE_RIGHT , mythid)
567 dimitri 1.4 il = ilnblnk(runofffile)
568 dimitri 1.7 write(msgbuf,'(a,f12.0)')
569 mlosch 1.16 &' Runoff starts at ',
570 dimitri 1.7 & runoffstartdate
571 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
572     & SQUEEZE_RIGHT , mythid)
573 dimitri 1.7 write(msgbuf,'(a,f12.0)')
574 dimitri 1.4 &' Runoff period is ',
575 dimitri 1.7 & runoffperiod
576 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
577     & SQUEEZE_RIGHT , mythid)
578     write(msgbuf,'(a)')
579 dimitri 1.4 &' Runoff is read from file:'
580 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
581     & SQUEEZE_RIGHT , mythid)
582     write(msgbuf,'(a,a,a)')
583 dimitri 1.4 &' >> ',runofffile(1:il),' <<'
584 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
585     & SQUEEZE_RIGHT , mythid)
586 dimitri 1.4 #else /* ALLOW_RUNOFF */
587 heimbach 1.1 write(msgbuf,'(a)')
588 dimitri 1.4 &'// ALLOW_RUNOFF: NOT defined'
589 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
590     & SQUEEZE_RIGHT , mythid)
591 dimitri 1.4 #endif /* ALLOW_RUNOFF */
592 heimbach 1.1
593 dimitri 1.4 #ifdef DOWNWARD_RADIATION
594 jmc 1.12 C-- Downward shortwave.
595 dimitri 1.4 il = ilnblnk(swdownfile)
596 jmc 1.12 write(msgbuf,'(a)') ' '
597 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
598     & SQUEEZE_RIGHT , mythid)
599 dimitri 1.7 write(msgbuf,'(a,f12.0)')
600 dimitri 1.4 &' Downward shortwave flux forcing starts at ',
601 dimitri 1.7 & swdownstartdate
602 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
603     & SQUEEZE_RIGHT , mythid)
604 dimitri 1.7 write(msgbuf,'(a,f12.0)')
605 dimitri 1.4 &' Downward shortwave flux forcing period is ',
606 dimitri 1.7 & swdownperiod
607 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
608     & SQUEEZE_RIGHT , mythid)
609     write(msgbuf,'(a)')
610 dimitri 1.4 &' Downward shortwave flux forcing is read from file:'
611 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
612     & SQUEEZE_RIGHT , mythid)
613     write(msgbuf,'(a,a,a)')
614 dimitri 1.4 &' >> ',swdownfile(1:il),' <<'
615 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
616     & SQUEEZE_RIGHT , mythid)
617    
618 jmc 1.12 C-- Downward longwave.
619 dimitri 1.4 il = ilnblnk(lwdownfile)
620 jmc 1.12 write(msgbuf,'(a)') ' '
621 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
622     & SQUEEZE_RIGHT , mythid)
623 dimitri 1.7 write(msgbuf,'(a,f12.0)')
624 dimitri 1.4 &' Downward longwave flux forcing starts at ',
625 dimitri 1.7 & lwdownstartdate
626 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
627     & SQUEEZE_RIGHT , mythid)
628 dimitri 1.7 write(msgbuf,'(a,f12.0)')
629 dimitri 1.4 &' Downward longwave flux forcing period is ',
630 dimitri 1.7 & lwdownperiod
631 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
632     & SQUEEZE_RIGHT , mythid)
633     write(msgbuf,'(a)')
634 dimitri 1.4 &' Downward longwave flux forcing is read from file:'
635 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
636     & SQUEEZE_RIGHT , mythid)
637     write(msgbuf,'(a,a,a)')
638 dimitri 1.4 &' >> ',lwdownfile(1:il),' <<'
639 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
640     & SQUEEZE_RIGHT , mythid)
641 dimitri 1.4 #endif
642 heimbach 1.1
643 dimitri 1.4 #ifdef ATMOSPHERIC_LOADING
644 jmc 1.12 C-- Atmospheric pressure.
645 dimitri 1.4 il = ilnblnk(apressurefile)
646 jmc 1.12 write(msgbuf,'(a)') ' '
647 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
648     & SQUEEZE_RIGHT , mythid)
649 dimitri 1.7 write(msgbuf,'(a,f12.0)')
650 dimitri 1.4 &' Atmospheric pressure forcing starts at ',
651 dimitri 1.7 & apressurestartdate
652 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
653     & SQUEEZE_RIGHT , mythid)
654 dimitri 1.7 write(msgbuf,'(a,f12.0)')
655 dimitri 1.4 &' Atmospheric pressure forcing period is ',
656 dimitri 1.7 & apressureperiod
657 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
658     & SQUEEZE_RIGHT , mythid)
659     write(msgbuf,'(a)')
660 dimitri 1.4 &' Atmospheric pressureforcing is read from file:'
661 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
662     & SQUEEZE_RIGHT , mythid)
663     write(msgbuf,'(a,a,a)')
664 dimitri 1.4 &' >> ',apressurefile(1:il),' <<'
665 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
666     & SQUEEZE_RIGHT , mythid)
667     #endif
668    
669 gforget 1.17 #ifdef ALLOW_ICE_AREAMASK
670     C-- fractional ice-covered area MASK.
671     il = ilnblnk(areamaskfile)
672     write(msgbuf,'(a)') ' '
673     call print_message( msgbuf, standardmessageunit,
674     & SQUEEZE_RIGHT , mythid)
675     write(msgbuf,'(a,f12.0)')
676     &' fractional ice-covered area MASK starts at ',
677     & areamaskstartdate
678     call print_message( msgbuf, standardmessageunit,
679     & SQUEEZE_RIGHT , mythid)
680     write(msgbuf,'(a,f12.0)')
681     &' fractional ice-covered area MASK period is ',
682     & areamaskperiod
683     call print_message( msgbuf, standardmessageunit,
684     & SQUEEZE_RIGHT , mythid)
685     write(msgbuf,'(a)')
686     &' fractional ice-covered area MASK is read from file:'
687     call print_message( msgbuf, standardmessageunit,
688     & SQUEEZE_RIGHT , mythid)
689     write(msgbuf,'(a,a,a)')
690     &' >> ',areamaskfile(1:il),' <<'
691     call print_message( msgbuf, standardmessageunit,
692     & SQUEEZE_RIGHT , mythid)
693     #endif
694    
695 jmc 1.12 write(msgbuf,'(a)') ' '
696 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
697     & SQUEEZE_RIGHT , mythid)
698     write(msgbuf,'(a)')
699     &'// ======================================================='
700     call print_message( msgbuf, standardmessageunit,
701     & SQUEEZE_RIGHT , mythid)
702     write(msgbuf,'(a)')
703     &'// External forcing configuration >>> END <<<'
704     call print_message( msgbuf, standardmessageunit,
705     & SQUEEZE_RIGHT , mythid)
706     write(msgbuf,'(a)')
707     &'// ======================================================='
708     call print_message( msgbuf, standardmessageunit,
709     & SQUEEZE_RIGHT , mythid)
710 jmc 1.12 write(msgbuf,'(a)') ' '
711 heimbach 1.1 call print_message( msgbuf, standardmessageunit,
712     & SQUEEZE_RIGHT , mythid)
713    
714 jmc 1.12 C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
715    
716 heimbach 1.11 call print_message( msgbuf, standardmessageunit,
717     & SQUEEZE_RIGHT , mythid)
718     write(msgbuf,'(a)')
719     &'// ======================================================='
720     call print_message( msgbuf, standardmessageunit,
721     & SQUEEZE_RIGHT , mythid)
722     write(msgbuf,'(a)')
723     &'// External forcing climatology configuration >>> START <<<'
724     call print_message( msgbuf, standardmessageunit,
725     & SQUEEZE_RIGHT , mythid)
726     write(msgbuf,'(a)')
727     &'// ======================================================='
728     call print_message( msgbuf, standardmessageunit,
729     & SQUEEZE_RIGHT , mythid)
730 jmc 1.12 write(msgbuf,'(a)') ' '
731 heimbach 1.11 call print_message( msgbuf, standardmessageunit,
732     & SQUEEZE_RIGHT , mythid)
733    
734 jmc 1.12 C For each data set used the summary prints the calendar data
735     C and the corresponding file from which the data will be read.
736 heimbach 1.11
737     #ifdef ALLOW_CLIMSST_RELAXATION
738     write(msgbuf,'(a)')
739     &'// ALLOW_CLIMSST_RELAXATION: defined'
740     call print_message( msgbuf, standardmessageunit,
741     & SQUEEZE_RIGHT , mythid)
742     #else
743     write(msgbuf,'(a)')
744     &'// ALLOW_CLIMSST_RELAXATION: NOT defined'
745     call print_message( msgbuf, standardmessageunit,
746     & SQUEEZE_RIGHT , mythid)
747     #endif
748    
749     #ifdef ALLOW_CLIMSSS_RELAXATION
750     write(msgbuf,'(a)')
751     &'// ALLOW_CLIMSSS_RELAXATION: defined'
752     call print_message( msgbuf, standardmessageunit,
753     & SQUEEZE_RIGHT , mythid)
754     #else
755     write(msgbuf,'(a)')
756     &'// ALLOW_CLIMSSS_RELAXATION: NOT defined'
757     call print_message( msgbuf, standardmessageunit,
758     & SQUEEZE_RIGHT , mythid)
759     #endif
760    
761 jmc 1.12 C The climatological data sets are assumed to contain monthly
762     C data. This can be changed in a later version to an arbitrary
763     C number of intervals during a given year.
764 heimbach 1.11
765     #ifdef ALLOW_CLIMSST_RELAXATION
766 jmc 1.12 C Relaxation to SST climatology.
767 heimbach 1.11 il = ilnblnk(climsstfile)
768     write(msgbuf,'(a)')
769     &' '
770     call print_message( msgbuf, standardmessageunit,
771     & SQUEEZE_RIGHT , mythid)
772     write(msgbuf,'(a,f12.0)')
773     &' Climatological SST starts at ',
774     & climsststartdate
775     call print_message( msgbuf, standardmessageunit,
776     & SQUEEZE_RIGHT , mythid)
777     write(msgbuf,'(a,f12.0)')
778     &' Climatological SST period is ',
779     & climsstperiod
780     call print_message( msgbuf, standardmessageunit,
781     & SQUEEZE_RIGHT , mythid)
782     write(msgbuf,'(a)')
783     &' Climatological SST is read from file:'
784     call print_message( msgbuf, standardmessageunit,
785     & SQUEEZE_RIGHT , mythid)
786     write(msgbuf,'(a,a,a)')
787     &' >> ',climsstfile(1:il),' <<'
788     call print_message( msgbuf, standardmessageunit,
789     & SQUEEZE_RIGHT , mythid)
790     #endif
791    
792     #ifdef ALLOW_CLIMSSS_RELAXATION
793 jmc 1.12 C Relaxation to SSS climatology.
794 heimbach 1.11 il = ilnblnk(climsssfile)
795     write(msgbuf,'(a)')
796     &' '
797     call print_message( msgbuf, standardmessageunit,
798     & SQUEEZE_RIGHT , mythid)
799     write(msgbuf,'(a,f12.0)')
800     &' Climatological SSS starts at ',
801     & climsssstartdate
802     call print_message( msgbuf, standardmessageunit,
803     & SQUEEZE_RIGHT , mythid)
804     write(msgbuf,'(a,f12.0)')
805     &' Climatological SSS period is ',
806     & climsssperiod
807     call print_message( msgbuf, standardmessageunit,
808     & SQUEEZE_RIGHT , mythid)
809     write(msgbuf,'(a)')
810     &' Climatological SSS is read from file:'
811     call print_message( msgbuf, standardmessageunit,
812     & SQUEEZE_RIGHT , mythid)
813     write(msgbuf,'(a,a,a)')
814     &' >> ',climsssfile(1:il),' <<'
815     call print_message( msgbuf, standardmessageunit,
816     & SQUEEZE_RIGHT , mythid)
817     #endif
818    
819 jmc 1.12 write(msgbuf,'(a)') ' '
820 heimbach 1.11 call print_message( msgbuf, standardmessageunit,
821     & SQUEEZE_RIGHT , mythid)
822     write(msgbuf,'(a)')
823     &'// ======================================================='
824     call print_message( msgbuf, standardmessageunit,
825     & SQUEEZE_RIGHT , mythid)
826     write(msgbuf,'(a)')
827     &'// External forcing climatology configuration >>> END <<<'
828     call print_message( msgbuf, standardmessageunit,
829     & SQUEEZE_RIGHT , mythid)
830     write(msgbuf,'(a)')
831     &'// ======================================================='
832     call print_message( msgbuf, standardmessageunit,
833     & SQUEEZE_RIGHT , mythid)
834 jmc 1.12 write(msgbuf,'(a)') ' '
835 heimbach 1.11 call print_message( msgbuf, standardmessageunit,
836     & SQUEEZE_RIGHT , mythid)
837    
838 jmc 1.12 _END_MASTER( myThid )
839    
840     RETURN
841     END

  ViewVC Help
Powered by ViewVC 1.1.22