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

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

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


Revision 1.43 - (hide annotations) (download)
Wed Apr 18 19:55:34 2007 UTC (17 years, 1 month ago) by heimbach
Branch: MAIN
Changes since 1.42: +135 -31 lines
o Remove exf_clim code.
o Split exf namelist

1 heimbach 1.43 C $Header: /u/gcmpack/MITgcm/pkg/exf/exf_readparms.F,v 1.42 2007/04/18 05:02:11 heimbach Exp $
2 jmc 1.11 C $Name: $
3 heimbach 1.1
4 edhill 1.12 #include "EXF_OPTIONS.h"
5 heimbach 1.3 #ifdef ALLOW_OBCS
6     # include "OBCS_OPTIONS.h"
7     #endif
8 heimbach 1.1
9 heimbach 1.3 subroutine exf_readparms( mythid )
10 heimbach 1.1
11     c ==================================================================
12     c SUBROUTINE exf_readparms
13     c ==================================================================
14     c
15     c o This routine initialises the package that calculates external
16     c forcing fields for a given timestep of the MITgcmUV. Parameters
17     c for this package are set in "data.externalforcing". Some additional
18 edhill 1.12 c precompiler switches have to be specified in "EXF_OPTIONS.h".
19 heimbach 1.1 c
20     c started: Christian Eckert eckert@mit.edu 30-Jun-1999
21     c
22     c changed: Christian Eckert eckert@mit.edu 11-Jan-2000
23     c - Restructured the code in order to create a package
24     c for the MITgcmUV.
25     c Christian Eckert eckert@mit.edu 12-Feb-2000
26     c - Changed Routine names (package prefix: exf_)
27 heimbach 1.2 c changed: Patrick Heimbach, heimbach@mit.edu 04-May-2000
28 heimbach 1.1 c - changed the handling of precip and sflux with respect
29     c to CPP options ALLOW_BULKFORMULAE and ALLOW_ATM_TEMP
30     c changed: Ralf.Giering@FastOpt.de 25-Mai-20000
31 heimbach 1.2 c - moved relaxation and climatology to extra routines
32 heimbach 1.1 c Patrick Heimbach, heimbach@mit.edu 04-May-2000
33     c - added obcs parameters
34 heimbach 1.2 c changed: Virginie Thierry, vthierry@ucsd.edu 04-June-2001
35     c - added new obcs parameters (for each boundaries)
36 heimbach 1.3 c included runoff D. Stammer, Nov. 25, 2001
37     c included pressure forcing. heimbach@mit.edu 05-Nov-2002
38 dimitri 1.5 c added "repeatPeriod" for cycling of forcing datasets 19-Dec-2002
39 dimitri 1.6 c mods for pkg/seaice: menemenlis@jpl.nasa.gov 20-Dec-2002
40 heimbach 1.1 c
41     c ==================================================================
42     c SUBROUTINE exf_readparms
43     c ==================================================================
44    
45     implicit none
46    
47     c == global variables ==
48    
49     #include "EEPARAMS.h"
50     #include "SIZE.h"
51 heimbach 1.15 #include "PARAMS.h"
52 heimbach 1.1 #include "cal.h"
53 jmc 1.40 #include "EXF_PARAM.h"
54     #include "EXF_CONSTANTS.h"
55 heimbach 1.1
56     c == routine arguments ==
57    
58     integer mythid
59    
60     c == local variables ==
61    
62 heimbach 1.43 integer i, idummy
63 dimitri 1.13 integer date_array(4), difftime(4)
64 heimbach 1.26 integer iUnit
65    
66     character*(max_len_mbuf) msgbuf
67 heimbach 1.1
68     c == end of interface ==
69    
70     c Surface flux data.
71 heimbach 1.43 NAMELIST /EXF_NML_01/
72 jmc 1.32 & windstressmax, repeatPeriod, exf_albedo,
73 mlosch 1.31 & ocean_emissivity, ice_emissivity, snow_emissivity,
74 heimbach 1.43 & exf_scal_BulkCdn, climtempfreeze,
75     & exf_iprec, exf_yftype,
76     & useExfYearlyFields, twoDigitYear, useExfCheckRange
77    
78     NAMELIST /EXF_NML_02/
79     & hfluxfile, atempfile, aqhfile,
80     & sfluxfile, precipfile, runofffile,
81     & ustressfile, vstressfile, evapfile,
82     & snowprecipfile, uwindfile, vwindfile,
83     & wspeedfile, swfluxfile, lwfluxfile,
84     & apressurefile, swdownfile, lwdownfile,
85     & climsstfile, climsssfile,
86 heimbach 1.1 & hfluxstartdate1, hfluxstartdate2, hfluxperiod,
87     & atempstartdate1, atempstartdate2, atempperiod,
88     & aqhstartdate1, aqhstartdate2, aqhperiod,
89     & sfluxstartdate1, sfluxstartdate2, sfluxperiod,
90 dimitri 1.5 & evapstartdate1, evapstartdate2, evapperiod,
91 heimbach 1.1 & precipstartdate1, precipstartdate2, precipperiod,
92 heimbach 1.30 & snowprecipstartdate1, snowprecipstartdate2, snowprecipperiod,
93 heimbach 1.3 & runoffstartdate1, runoffstartdate2, runoffperiod,
94 heimbach 1.1 & ustressstartdate1, ustressstartdate2, ustressperiod,
95     & vstressstartdate1, vstressstartdate2, vstressperiod,
96     & uwindstartdate1, uwindstartdate2, uwindperiod,
97     & vwindstartdate1, vwindstartdate2, vwindperiod,
98 heimbach 1.30 & wspeedstartdate1, wspeedstartdate2, wspeedperiod,
99 heimbach 1.1 & swfluxstartdate1, swfluxstartdate2, swfluxperiod,
100     & lwfluxstartdate1, lwfluxstartdate2, lwfluxperiod,
101 dimitri 1.6 & swdownstartdate1, swdownstartdate2, swdownperiod,
102     & lwdownstartdate1, lwdownstartdate2, lwdownperiod,
103 heimbach 1.3 &apressurestartdate1,apressurestartdate2,apressureperiod,
104 heimbach 1.43 & climsststartdate1, climsststartdate2, climsstperiod,
105     & climsssstartdate1, climsssstartdate2, climsssperiod
106    
107     NAMELIST /EXF_NML_03/
108 heimbach 1.30 & exf_inscal_hflux, exf_inscal_sflux, exf_inscal_evap,
109 dimitri 1.14 & exf_inscal_ustress, exf_inscal_vstress,
110 heimbach 1.30 & exf_inscal_uwind, exf_inscal_vwind, exf_inscal_wspeed,
111     & exf_inscal_atemp, exf_offset_atemp, exf_inscal_aqh,
112 dimitri 1.14 & exf_inscal_sst, exf_inscal_sss,
113     & exf_inscal_swflux, exf_inscal_lwflux, exf_inscal_precip,
114 heimbach 1.30 & exf_inscal_runoff, exf_inscal_apressure, exf_inscal_snowprecip,
115 heimbach 1.8 & exf_inscal_swdown, exf_inscal_lwdown,
116 heimbach 1.43 & exf_inscal_climsst, exf_inscal_climsss,
117 heimbach 1.8 & exf_outscal_hflux, exf_outscal_ustress, exf_outscal_vstress,
118 dimitri 1.14 & exf_outscal_swflux, exf_outscal_sst, exf_outscal_sss,
119 heimbach 1.8 & exf_outscal_sflux, exf_outscal_apressure,
120 jmc 1.32 & hfluxconst, atempconst, aqhconst, sfluxconst, evapconst,
121     & precipconst, snowprecipconst, runoffconst, ustressconst,
122     & vstressconst, uwindconst, vwindconst, wspeedconst, swfluxconst,
123     & lwfluxconst, swdownconst, lwdownconst, apressureconst,
124 heimbach 1.43 & climsstconst, climsssconst,
125 heimbach 1.29 & hflux_exfremo_intercept, hflux_exfremo_slope,
126 heimbach 1.28 & atemp_exfremo_intercept, atemp_exfremo_slope,
127     & aqh_exfremo_intercept, aqh_exfremo_slope,
128     & sflux_exfremo_intercept, sflux_exfremo_slope,
129     & evap_exfremo_intercept, evap_exfremo_slope,
130     & precip_exfremo_intercept, precip_exfremo_slope,
131 heimbach 1.30 & snowprecip_exfremo_intercept, snowprecip_exfremo_slope,
132 heimbach 1.28 & runoff_exfremo_intercept, runoff_exfremo_slope,
133     & ustress_exfremo_intercept, ustress_exfremo_slope,
134     & vstress_exfremo_intercept, vstress_exfremo_slope,
135     & uwind_exfremo_intercept, uwind_exfremo_slope,
136     & vwind_exfremo_intercept, vwind_exfremo_slope,
137 heimbach 1.30 & wspeed_exfremo_intercept, wspeed_exfremo_slope,
138 heimbach 1.28 & swflux_exfremo_intercept, swflux_exfremo_slope,
139     & lwflux_exfremo_intercept, lwflux_exfremo_slope,
140     & swdown_exfremo_intercept, swdown_exfremo_slope,
141     & lwdown_exfremo_intercept, lwdown_exfremo_slope,
142 heimbach 1.43 & apressure_exfremo_intercept, apressure_exfremo_slope,
143     & climsst_exfremo_intercept, climsst_exfremo_slope,
144     & climsss_exfremo_intercept, climsss_exfremo_slope
145    
146     NAMELIST /EXF_NML_04/
147     & idummy
148 dimitri 1.9 #ifdef USE_EXF_INTERPOLATION
149 heimbach 1.43 & , ustress_lon0, ustress_lon_inc, ustress_lat0, ustress_lat_inc,
150 jmc 1.11 & vstress_lon0, vstress_lon_inc, vstress_lat0, vstress_lat_inc,
151 heimbach 1.35 & ustress_nlon, ustress_nlat, vstress_nlon, vstress_nlat,
152 jmc 1.11 & hflux_lon0, hflux_lon_inc, hflux_lat0, hflux_lat_inc,
153     & sflux_lon0, sflux_lon_inc, sflux_lat0, sflux_lat_inc,
154 heimbach 1.35 & hflux_nlon, hflux_nlat, sflux_nlon, sflux_nlat,
155 jmc 1.11 & swflux_lon0, swflux_lon_inc, swflux_lat0, swflux_lat_inc,
156 heimbach 1.35 & lwflux_lon0, lwflux_lon_inc, lwflux_lat0, lwflux_lat_inc,
157     & swflux_nlon, swflux_nlat, lwflux_nlon, lwflux_nlat,
158 jmc 1.11 & atemp_lon0, atemp_lon_inc, atemp_lat0, atemp_lat_inc,
159 dimitri 1.9 & atemp_nlon, atemp_nlat,
160 jmc 1.32 & aqh_lon0, aqh_lon_inc, aqh_lat0, aqh_lat_inc, aqh_nlon, aqh_nlat,
161     &evap_lon0,evap_lon_inc,evap_lat0,evap_lat_inc,evap_nlon,evap_nlat,
162     & precip_lon0, precip_lon_inc, precip_lat0, precip_lat_inc,
163 heimbach 1.35 & runoff_lon0, runoff_lon_inc, runoff_lat0, runoff_lat_inc,
164     & precip_nlon, precip_nlat, runoff_nlon, runoff_nlat,
165 jmc 1.32 & snowprecip_lon0, snowprecip_lon_inc, snowprecip_nlon,
166     & snowprecip_lat0, snowprecip_lat_inc, snowprecip_nlat,
167 jmc 1.11 & uwind_lon0, uwind_lon_inc, uwind_lat0, uwind_lat_inc,
168     & vwind_lon0, vwind_lon_inc, vwind_lat0, vwind_lat_inc,
169 heimbach 1.35 & uwind_nlon, uwind_nlat, vwind_nlon, vwind_nlat,
170 heimbach 1.30 & wspeed_lon0, wspeed_lon_inc, wspeed_lat0, wspeed_lat_inc,
171     & wspeed_nlon, wspeed_nlat,
172 jmc 1.11 & swdown_lon0, swdown_lon_inc, swdown_lat0, swdown_lat_inc,
173     & lwdown_lon0, lwdown_lon_inc, lwdown_lat0, lwdown_lat_inc,
174 heimbach 1.35 & swdown_nlon, swdown_nlat, lwdown_nlon, lwdown_nlat,
175 heimbach 1.28 & apressure_lon0,apressure_lon_inc,apressure_nlon,
176 heimbach 1.43 & apressure_lat0,apressure_lat_inc,apressure_nlat,
177     & climsst_lon0, climsst_lon_inc, climsst_nlon,
178     & climsst_lat0, climsst_lat_inc, climsst_nlat,
179     & climsss_lon0, climsss_lon_inc, climsss_nlon,
180     & climsss_lat0, climsss_lat_inc, climsss_nlat
181 dimitri 1.9 #endif
182 heimbach 1.1
183 heimbach 1.43 NAMELIST /EXF_NML_OBCS/
184     & obcsNstartdate1, obcsNstartdate2, obcsNperiod,
185     & obcsSstartdate1, obcsSstartdate2, obcsSperiod,
186     & obcsEstartdate1, obcsEstartdate2, obcsEperiod,
187     & obcsWstartdate1, obcsWstartdate2, obcsWperiod
188    
189 heimbach 1.1 _BEGIN_MASTER(mythid)
190    
191     c Set default values.
192    
193 heimbach 1.21 year2sec = 365.*86400.
194 jmc 1.33 exf_monFreq = monitorFreq
195 heimbach 1.21
196 heimbach 1.1 c Calendar data.
197     hfluxstartdate1 = 0
198     hfluxstartdate2 = 0
199     hfluxperiod = 0.0 _d 0
200 heimbach 1.7 hfluxconst = 0.0 _d 0
201 heimbach 1.27 hflux_exfremo_intercept = 0.0 _d 0
202     hflux_exfremo_slope = 0.0 _d 0
203 heimbach 1.1
204     atempstartdate1 = 0
205     atempstartdate2 = 0
206     atempperiod = 0.0 _d 0
207 heimbach 1.15 atempconst = celsius2K
208 heimbach 1.27 atemp_exfremo_intercept = 0.0 _d 0
209     atemp_exfremo_slope = 0.0 _d 0
210 heimbach 1.1
211     aqhstartdate1 = 0
212     aqhstartdate2 = 0
213     aqhperiod = 0.0 _d 0
214 heimbach 1.7 aqhconst = 0.0 _d 0
215 heimbach 1.27 aqh_exfremo_intercept = 0.0 _d 0
216     aqh_exfremo_slope = 0.0 _d 0
217 heimbach 1.1
218     sfluxstartdate1 = 0
219     sfluxstartdate2 = 0
220     sfluxperiod = 0.0 _d 0
221 heimbach 1.7 sfluxconst = 0.0 _d 0
222 heimbach 1.27 sflux_exfremo_intercept = 0.0 _d 0
223     sflux_exfremo_slope = 0.0 _d 0
224 heimbach 1.1
225 dimitri 1.5 evapstartdate1 = 0
226     evapstartdate2 = 0
227     evapperiod = 0.0 _d 0
228 heimbach 1.7 evapconst = 0.0 _d 0
229 heimbach 1.27 evap_exfremo_intercept = 0.0 _d 0
230     evap_exfremo_slope = 0.0 _d 0
231 dimitri 1.5
232 heimbach 1.1 precipstartdate1 = 0
233     precipstartdate2 = 0
234     precipperiod = 0.0 _d 0
235 heimbach 1.7 precipconst = 0.0 _d 0
236 heimbach 1.27 precip_exfremo_intercept = 0.0 _d 0
237     precip_exfremo_slope = 0.0 _d 0
238 heimbach 1.1
239 heimbach 1.30 snowprecipstartdate1 = 0
240     snowprecipstartdate2 = 0
241     snowprecipperiod = 0.0 _d 0
242     snowprecipconst = 0.0 _d 0
243     snowprecip_exfremo_intercept = 0.0 _d 0
244     snowprecip_exfremo_slope = 0.0 _d 0
245    
246 heimbach 1.3 runoffstartdate1 = 0
247     runoffstartdate2 = 0
248     runoffperiod = 0.0 _d 0
249 heimbach 1.7 runoffconst = 0.0 _d 0
250 heimbach 1.27 runoff_exfremo_intercept = 0.0 _d 0
251     runoff_exfremo_slope = 0.0 _d 0
252 heimbach 1.3
253 heimbach 1.1 ustressstartdate1 = 0
254     ustressstartdate2 = 0
255     ustressperiod = 0.0 _d 0
256 heimbach 1.7 ustressconst = 0.0 _d 0
257 heimbach 1.27 ustress_exfremo_intercept = 0.0 _d 0
258     ustress_exfremo_slope = 0.0 _d 0
259 heimbach 1.1
260     vstressstartdate1 = 0
261     vstressstartdate2 = 0
262     vstressperiod = 0.0 _d 0
263 heimbach 1.7 vstressconst = 0.0 _d 0
264 heimbach 1.27 vstress_exfremo_intercept = 0.0 _d 0
265     vstress_exfremo_slope = 0.0 _d 0
266 heimbach 1.1
267     uwindstartdate1 = 0
268     uwindstartdate2 = 0
269     uwindperiod = 0.0 _d 0
270 heimbach 1.7 uwindconst = 0.0 _d 0
271 heimbach 1.27 uwind_exfremo_intercept = 0.0 _d 0
272     uwind_exfremo_slope = 0.0 _d 0
273 heimbach 1.1
274     vwindstartdate1 = 0
275     vwindstartdate2 = 0
276     vwindperiod = 0.0 _d 0
277 heimbach 1.7 vwindconst = 0.0 _d 0
278 heimbach 1.27 vwind_exfremo_intercept = 0.0 _d 0
279     vwind_exfremo_slope = 0.0 _d 0
280 heimbach 1.1
281 heimbach 1.30 wspeedstartdate1 = 0
282     wspeedstartdate2 = 0
283     wspeedperiod = 0.0 _d 0
284     wspeedconst = 0.0 _d 0
285     wspeed_exfremo_intercept = 0.0 _d 0
286     wspeed_exfremo_slope = 0.0 _d 0
287    
288 heimbach 1.1 swfluxstartdate1 = 0
289     swfluxstartdate2 = 0
290     swfluxperiod = 0.0 _d 0
291 heimbach 1.7 swfluxconst = 0.0 _d 0
292 heimbach 1.27 swflux_exfremo_intercept = 0.0 _d 0
293     swflux_exfremo_slope = 0.0 _d 0
294 heimbach 1.1
295     lwfluxstartdate1 = 0
296     lwfluxstartdate2 = 0
297     lwfluxperiod = 0.0 _d 0
298 heimbach 1.7 lwfluxconst = 0.0 _d 0
299 heimbach 1.27 lwflux_exfremo_intercept = 0.0 _d 0
300     lwflux_exfremo_slope = 0.0 _d 0
301 heimbach 1.1
302 dimitri 1.6 swdownstartdate1 = 0
303     swdownstartdate2 = 0
304     swdownperiod = 0.0 _d 0
305 heimbach 1.7 swdownconst = 0.0 _d 0
306 heimbach 1.27 swdown_exfremo_intercept = 0.0 _d 0
307     swdown_exfremo_slope = 0.0 _d 0
308 dimitri 1.6
309     lwdownstartdate1 = 0
310     lwdownstartdate2 = 0
311     lwdownperiod = 0.0 _d 0
312 heimbach 1.7 lwdownconst = 0.0 _d 0
313 heimbach 1.27 lwdown_exfremo_intercept = 0.0 _d 0
314     lwdown_exfremo_slope = 0.0 _d 0
315    
316     apressurestartdate1 = 0
317     apressurestartdate2 = 0
318     apressureperiod = 0.0 _d 0
319     apressureconst = 0.0 _d 0
320     apressure_exfremo_intercept = 0.0 _d 0
321     apressure_exfremo_slope = 0.0 _d 0
322 dimitri 1.6
323 heimbach 1.43 climsststartdate1 = 0
324     climsststartdate2 = 0
325     climsstperiod = 0
326     climsstconst = 0.0 _d 0
327     climsst_exfremo_intercept = 0.0 _d 0
328     climsst_exfremo_slope = 0.0 _d 0
329    
330     climsssstartdate1 = 0
331     climsssstartdate2 = 0
332     climsssperiod = 0
333     climsssconst = 0.0 _d 0
334     climsss_exfremo_intercept = 0.0 _d 0
335     climsss_exfremo_slope = 0.0 _d 0
336    
337 heimbach 1.2 obcsNstartdate1 = 0
338     obcsNstartdate2 = 0
339     obcsNperiod = 0.0 _d 0
340    
341     obcsSstartdate1 = 0
342     obcsSstartdate2 = 0
343     obcsSperiod = 0.0 _d 0
344    
345     obcsEstartdate1 = 0
346     obcsEstartdate2 = 0
347     obcsEperiod = 0.0 _d 0
348    
349     obcsWstartdate1 = 0
350     obcsWstartdate2 = 0
351     obcsWperiod = 0.0 _d 0
352 heimbach 1.1
353 heimbach 1.30 repeatPeriod = 0.0 _d 0
354     exf_albedo = 0.1 _d 0
355     windstressmax = 2.0 _d 0
356     c-- this default is chosen to be backward compatible with
357 mlosch 1.31 c-- an earlier setting of 5.5 = ocean_emissivity*stefanBoltzmann
358     ocean_emissivity = 5.50D-8/5.670D-8
359     ice_emissivity = 0.98 _d 0
360     snow_emissivity = 0.98 _d 0
361 cheisey 1.4
362 heimbach 1.43 exf_scal_BulkCdn = 1.0 _d 0
363    
364     c Initialise freezing temperature of sea water
365     climtempfreeze = -1.9 _d 0
366 dimitri 1.36
367 heimbach 1.1 c Data files.
368     hfluxfile = ' '
369     atempfile = ' '
370     aqhfile = ' '
371 dimitri 1.5 evapfile = ' '
372 heimbach 1.1 precipfile = ' '
373 heimbach 1.30 snowprecipfile = ' '
374 heimbach 1.1 sfluxfile = ' '
375 heimbach 1.3 runofffile = ' '
376 heimbach 1.1 ustressfile = ' '
377     vstressfile = ' '
378     uwindfile = ' '
379     vwindfile = ' '
380 heimbach 1.30 wspeedfile = ' '
381 heimbach 1.1 swfluxfile = ' '
382     lwfluxfile = ' '
383 dimitri 1.6 swdownfile = ' '
384     lwdownfile = ' '
385 heimbach 1.3 apressurefile = ' '
386 heimbach 1.43 climsstfile = ' '
387     climsssfile = ' '
388 heimbach 1.1
389 dimitri 1.13 c Start dates.
390 dimitri 1.24 hfluxstartdate = 0.
391     atempstartdate = 0.
392     aqhstartdate = 0.
393     evapstartdate = 0.
394     precipstartdate = 0.
395 heimbach 1.30 snowprecipstartdate = 0.
396 dimitri 1.24 sfluxstartdate = 0.
397     runoffstartdate = 0.
398     ustressstartdate = 0.
399     vstressstartdate = 0.
400     uwindstartdate = 0.
401     vwindstartdate = 0.
402 heimbach 1.30 wspeedstartdate = 0.
403 dimitri 1.24 swfluxstartdate = 0.
404     lwfluxstartdate = 0.
405     swdownstartdate = 0.
406     lwdownstartdate = 0.
407     obcsNstartdate = 0.
408     obcsSstartdate = 0.
409     obcsEstartdate = 0.
410     obcsWstartdate = 0.
411     apressurestartdate = 0.
412 heimbach 1.43 climsststartdate = 0.
413     climsssstartdate = 0.
414 heimbach 1.1
415     c Initialise file type and field precision
416 heimbach 1.20 exf_iprec = 32
417     exf_yftype = 'RL'
418     useExfYearlyFields = .FALSE.
419 dimitri 1.25 twoDigitYear = .FALSE.
420 heimbach 1.22 useExfCheckRange = .TRUE.
421 heimbach 1.1
422 dimitri 1.6 c Input scaling factors.
423 heimbach 1.8 exf_inscal_hflux = 1. _d 0
424     exf_inscal_sflux = 1. _d 0
425     exf_inscal_ustress = 1. _d 0
426     exf_inscal_vstress = 1. _d 0
427     exf_inscal_uwind = 1. _d 0
428     exf_inscal_vwind = 1. _d 0
429 heimbach 1.30 exf_inscal_wspeed = 1. _d 0
430 heimbach 1.8 exf_inscal_swflux = 1. _d 0
431     exf_inscal_lwflux = 1. _d 0
432     exf_inscal_precip = 1. _d 0
433 heimbach 1.30 exf_inscal_snowprecip = 1. _d 0
434 dimitri 1.6 exf_inscal_sst = 1. _d 0
435     exf_inscal_sss = 1. _d 0
436 heimbach 1.8 exf_inscal_atemp = 1. _d 0
437 dimitri 1.14 exf_offset_atemp = 0. _d 0
438 heimbach 1.8 exf_inscal_aqh = 1. _d 0
439     exf_inscal_evap = 1. _d 0
440 dimitri 1.6 exf_inscal_apressure = 1. _d 0
441 heimbach 1.21 exf_inscal_runoff = 1. _d 0
442 heimbach 1.8 exf_inscal_swdown = 1. _d 0
443     exf_inscal_lwdown = 1. _d 0
444 heimbach 1.43 exf_inscal_climsst = 1. _d 0
445     exf_inscal_climsss = 1. _d 0
446 dimitri 1.6
447     c Output scaling factors.
448 heimbach 1.8 exf_outscal_hflux = 1. _d 0
449     exf_outscal_sflux = 1. _d 0
450     exf_outscal_ustress = 1. _d 0
451     exf_outscal_vstress = 1. _d 0
452     exf_outscal_swflux = 1. _d 0
453 dimitri 1.6 exf_outscal_sst = 1. _d 0
454     exf_outscal_sss = 1. _d 0
455     exf_outscal_apressure= 1. _d 0
456 heimbach 1.3
457 dimitri 1.19 #ifdef USE_EXF_INTERPOLATION
458     ustress_lon0 = thetaMin
459     uwind_lon0 = thetaMin
460     vstress_lon0 = thetaMin + delX(1) / 2
461     hflux_lon0 = thetaMin + delX(1) / 2
462     sflux_lon0 = thetaMin + delX(1) / 2
463     swflux_lon0 = thetaMin + delX(1) / 2
464     runoff_lon0 = thetaMin + delX(1) / 2
465     atemp_lon0 = thetaMin + delX(1) / 2
466     aqh_lon0 = thetaMin + delX(1) / 2
467     evap_lon0 = thetaMin + delX(1) / 2
468     precip_lon0 = thetaMin + delX(1) / 2
469 heimbach 1.30 snowprecip_lon0 = thetaMin + delX(1) / 2
470 dimitri 1.19 vwind_lon0 = thetaMin + delX(1) / 2
471 heimbach 1.30 wspeed_lon0 = thetaMin + delX(1) / 2
472 dimitri 1.19 lwflux_lon0 = thetaMin + delX(1) / 2
473     swdown_lon0 = thetaMin + delX(1) / 2
474     lwdown_lon0 = thetaMin + delX(1) / 2
475     apressure_lon0 = thetaMin + delX(1) / 2
476     vstress_lat0 = phimin
477     vwind_lat0 = phimin
478 heimbach 1.30 wspeed_lat0 = phimin
479 dimitri 1.19 ustress_lat0 = phimin + delY(1) / 2
480     hflux_lat0 = phimin + delY(1) / 2
481     sflux_lat0 = phimin + delY(1) / 2
482     runoff_lat0 = phimin + delY(1) / 2
483     swflux_lat0 = phimin + delY(1) / 2
484     atemp_lat0 = phimin + delY(1) / 2
485     aqh_lat0 = phimin + delY(1) / 2
486     evap_lat0 = phimin + delY(1) / 2
487     precip_lat0 = phimin + delY(1) / 2
488 heimbach 1.30 snowprecip_lat0 = phimin + delY(1) / 2
489 dimitri 1.19 uwind_lat0 = phimin + delY(1) / 2
490     lwflux_lat0 = phimin + delY(1) / 2
491     swdown_lat0 = phimin + delY(1) / 2
492     lwdown_lat0 = phimin + delY(1) / 2
493     apressure_lat0 = phimin + delY(1) / 2
494     ustress_nlon = Nx
495     ustress_nlat = Ny
496     vstress_nlon = Nx
497     vstress_nlat = Ny
498     hflux_nlon = Nx
499     hflux_nlat = Ny
500     sflux_nlon = Nx
501     sflux_nlat = Ny
502     swflux_nlon = Nx
503     swflux_nlat = Ny
504     runoff_nlon = Nx
505     runoff_nlat = Ny
506     atemp_nlon = Nx
507     atemp_nlat = Ny
508     aqh_nlon = Nx
509     aqh_nlat = Ny
510     evap_nlon = Nx
511     evap_nlat = Ny
512     precip_nlon = Nx
513 heimbach 1.30 snowprecip_nlon = Nx
514 dimitri 1.19 precip_nlat = Ny
515 heimbach 1.30 snowprecip_nlat = Ny
516 dimitri 1.19 uwind_nlon = Nx
517     uwind_nlat = Ny
518     vwind_nlon = Nx
519     vwind_nlat = Ny
520 heimbach 1.30 wspeed_nlon = Nx
521     wspeed_nlat = Ny
522 dimitri 1.19 lwflux_nlon = Nx
523     lwflux_nlat = Ny
524     swdown_nlon = Nx
525     swdown_nlat = Ny
526     lwdown_nlon = Nx
527     lwdown_nlat = Ny
528     apressure_nlon = Nx
529     apressure_nlat = Ny
530     Ustress_lon_inc = delX(1)
531     vstress_lon_inc = delX(1)
532     hflux_lon_inc = delX(1)
533     sflux_lon_inc = delX(1)
534     swflux_lon_inc = delX(1)
535     runoff_lon_inc = delX(1)
536     atemp_lon_inc = delX(1)
537     aqh_lon_inc = delX(1)
538     evap_lon_inc = delX(1)
539     precip_lon_inc = delX(1)
540 heimbach 1.30 snowprecip_lon_inc = delX(1)
541 dimitri 1.19 uwind_lon_inc = delX(1)
542     vwind_lon_inc = delX(1)
543 heimbach 1.30 wspeed_lon_inc = delX(1)
544 dimitri 1.19 lwflux_lon_inc = delX(1)
545     swdown_lon_inc = delX(1)
546     lwdown_lon_inc = delX(1)
547     apressure_lon_inc = delX(1)
548 heimbach 1.43 climsst_lon0 = thetaMin + delX(1) / 2
549     climsss_lon0 = thetaMin + delX(1) / 2
550     climsst_lat0 = phimin + delY(1) / 2
551     climsss_lat0 = phimin + delY(1) / 2
552     climsst_nlon = Nx
553     climsst_nlat = Ny
554     climsss_nlon = Nx
555     climsss_nlat = Ny
556     climsst_lon_inc = delX(1)
557     climsss_lon_inc = delX(1)
558 dimitri 1.19 DO i=1,MAX_LAT_INC
559     IF (i.LT.Ny) THEN
560     vstress_lat_inc(i) = delY(i)
561     vwind_lat_inc(i) = delY(i)
562 heimbach 1.30 wspeed_lat_inc(i) = delY(i)
563 dimitri 1.19 ustress_lat_inc(i) = (delY(i) + delY(i)) / 2.
564     hflux_lat_inc(i) = (delY(i) + delY(i)) / 2.
565     sflux_lat_inc(i) = (delY(i) + delY(i)) / 2.
566     swflux_lat_inc(i) = (delY(i) + delY(i)) / 2.
567     runoff_lat_inc(i) = (delY(i) + delY(i)) / 2.
568     atemp_lat_inc(i) = (delY(i) + delY(i)) / 2.
569     aqh_lat_inc(i) = (delY(i) + delY(i)) / 2.
570     evap_lat_inc(i) = (delY(i) + delY(i)) / 2.
571     precip_lat_inc(i) = (delY(i) + delY(i)) / 2.
572 heimbach 1.30 snowprecip_lat_inc(i) = (delY(i) + delY(i)) / 2.
573 dimitri 1.19 uwind_lat_inc(i) = (delY(i) + delY(i)) / 2.
574     lwflux_lat_inc(i) = (delY(i) + delY(i)) / 2.
575     swdown_lat_inc(i) = (delY(i) + delY(i)) / 2.
576     lwdown_lat_inc(i) = (delY(i) + delY(i)) / 2.
577     apressure_lat_inc(i) = (delY(i) + delY(i)) / 2.
578 heimbach 1.43 climsst_lat_inc(i) = (delY(i) + delY(i)) / 2.
579     climsss_lat_inc(i) = (delY(i) + delY(i)) / 2.
580 dimitri 1.19 ELSE
581     ustress_lat_inc(i) = 0.
582     vstress_lat_inc(i) = 0.
583     hflux_lat_inc(i) = 0.
584     sflux_lat_inc(i) = 0.
585     swflux_lat_inc(i) = 0.
586     runoff_lat_inc(i) = 0.
587     atemp_lat_inc(i) = 0.
588     aqh_lat_inc(i) = 0.
589     evap_lat_inc(i) = 0.
590     precip_lat_inc(i) = 0.
591 heimbach 1.30 snowprecip_lat_inc(i) = 0.
592 dimitri 1.19 uwind_lat_inc(i) = 0.
593     vwind_lat_inc(i) = 0.
594 heimbach 1.30 wspeed_lat_inc(i) = 0.
595 dimitri 1.19 lwflux_lat_inc(i) = 0.
596     swdown_lat_inc(i) = 0.
597     lwdown_lat_inc(i) = 0.
598     apressure_lat_inc(i) = 0.
599 heimbach 1.43 climsst_lat_inc(i) = 0.
600     climsss_lat_inc(i) = 0.
601 dimitri 1.19 ENDIF
602     ENDDO
603     #endif /* USE_EXF_INTERPOLATION */
604    
605 heimbach 1.1 c Next, read the forcing data file.
606 heimbach 1.43 WRITE(msgBuf,'(A)') 'EXF_READPARMS: opening data.exf'
607     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
608     & SQUEEZE_RIGHT , 1)
609 heimbach 1.26
610 heimbach 1.43 CALL OPEN_COPY_DATA_FILE(
611 heimbach 1.26 I 'data.exf', 'EXF_READPARMS',
612     O iUnit,
613     I myThid )
614    
615 heimbach 1.43 WRITE(msgBuf,'(A)')
616     & 'EXF_READPARMS: reading EXF_NML_01'
617     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
618     & SQUEEZE_RIGHT , 1)
619     READ( iUnit, nml = EXF_NML_01 )
620     WRITE(msgBuf,'(A)')
621     & 'EXF_READPARMS: reading EXF_NML_02'
622     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
623     & SQUEEZE_RIGHT , 1)
624     READ( iUnit, nml = EXF_NML_02 )
625     WRITE(msgBuf,'(A)')
626     & 'EXF_READPARMS: reading EXF_NML_03'
627     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
628     & SQUEEZE_RIGHT , 1)
629     READ( iUnit, nml = EXF_NML_03 )
630     WRITE(msgBuf,'(A)')
631     & 'EXF_READPARMS: reading EXF_NML_04'
632     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
633     & SQUEEZE_RIGHT , 1)
634     READ( iUnit, nml = EXF_NML_04 )
635     #ifdef ALLOW_OBCS
636     WRITE(msgBuf,'(A)')
637     & 'EXF_READPARMS: reading EXF_NML_OBCS'
638     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
639     & SQUEEZE_RIGHT , 1)
640     READ( iUnit, nml = EXF_NML_OBCS )
641     #endif
642 heimbach 1.26
643     WRITE(msgBuf,'(A)')
644     & 'EXF_READPARMS: finished reading data.exf'
645     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
646     & SQUEEZE_RIGHT , 1)
647    
648     CLOSE( iUnit )
649 heimbach 1.1
650 heimbach 1.20 call exf_check( mythid )
651    
652 heimbach 1.1 c Complete the start date specifications for the forcing
653     c fields to get a complete calendar date array.
654    
655 dimitri 1.6 #ifdef ALLOW_ATM_WIND
656 dimitri 1.38 if ( uwindfile .NE. ' ' .and. uwindperiod .gt. 0. ) then
657 heimbach 1.18 call cal_FullDate ( uwindstartdate1 , uwindstartdate2,
658     & date_array ,mythid )
659     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
660     call cal_ToSeconds ( difftime, uwindstartdate ,mythid )
661     uwindstartdate = modelstart + uwindstartdate
662     endif
663 dimitri 1.38 if ( vwindfile .NE. ' ' .and. vwindperiod .gt. 0. ) then
664 heimbach 1.18 call cal_FullDate ( vwindstartdate1 , vwindstartdate2,
665     & date_array ,mythid )
666     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
667     call cal_ToSeconds ( difftime, vwindstartdate ,mythid )
668     vwindstartdate = modelstart + vwindstartdate
669     endif
670 dimitri 1.38 if ( wspeedfile .NE. ' ' .and. wspeedperiod .gt. 0. ) then
671 heimbach 1.30 call cal_FullDate ( wspeedstartdate1, wspeedstartdate2,
672     & date_array ,mythid )
673     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
674     call cal_ToSeconds ( difftime, wspeedstartdate ,mythid )
675     wspeedstartdate = modelstart + wspeedstartdate
676     endif
677 dimitri 1.6 #else
678 dimitri 1.38 if ( ustressfile .NE. ' ' .and. ustressperiod .gt. 0. ) then
679 heimbach 1.18 call cal_FullDate ( ustressstartdate1 , ustressstartdate2,
680     & date_array ,mythid )
681     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
682     call cal_ToSeconds ( difftime, ustressstartdate ,mythid )
683     ustressstartdate = modelstart + ustressstartdate
684     endif
685 dimitri 1.38 if ( vstressfile .NE. ' ' .and. vstressperiod .gt. 0. ) then
686 heimbach 1.18 call cal_FullDate ( vstressstartdate1 , vstressstartdate2,
687     & date_array ,mythid )
688     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
689     call cal_ToSeconds ( difftime, vstressstartdate ,mythid )
690     vstressstartdate = modelstart + vstressstartdate
691     endif
692 heimbach 1.3 #endif
693    
694 heimbach 1.1 #ifdef ALLOW_ATM_TEMP
695 dimitri 1.38 if ( atempfile .NE. ' ' .and. atempperiod .gt. 0. ) then
696 heimbach 1.18 call cal_FullDate ( atempstartdate1 , atempstartdate2,
697     & date_array ,mythid )
698     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
699     call cal_ToSeconds ( difftime, atempstartdate ,mythid )
700     atempstartdate = modelstart + atempstartdate
701     endif
702 dimitri 1.38 if ( aqhfile .NE. ' ' .and. aqhperiod .gt. 0. ) then
703 heimbach 1.18 call cal_FullDate ( aqhstartdate1 , aqhstartdate2,
704     & date_array ,mythid )
705     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
706     call cal_ToSeconds ( difftime, aqhstartdate ,mythid )
707     aqhstartdate = modelstart + aqhstartdate
708     endif
709 dimitri 1.38 if ( lwfluxfile .NE. ' ' .and. lwfluxperiod .gt. 0. ) then
710 heimbach 1.18 call cal_FullDate ( lwfluxstartdate1 , lwfluxstartdate2,
711     & date_array ,mythid )
712     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
713     call cal_ToSeconds ( difftime, lwfluxstartdate ,mythid )
714     lwfluxstartdate = modelstart + lwfluxstartdate
715     endif
716 dimitri 1.38 if ( precipfile .NE. ' ' .and. precipperiod .gt. 0. ) then
717 heimbach 1.18 call cal_FullDate ( precipstartdate1 , precipstartdate2,
718     & date_array ,mythid )
719     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
720     call cal_ToSeconds ( difftime, precipstartdate ,mythid )
721     precipstartdate = modelstart + precipstartdate
722     endif
723 dimitri 1.39 if ( snowprecipfile .NE. ' ' .and. snowprecipperiod .gt. 0. ) then
724 heimbach 1.30 call cal_FullDate( snowprecipstartdate1, snowprecipstartdate2,
725     & date_array ,mythid )
726     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
727     call cal_ToSeconds ( difftime, snowprecipstartdate, mythid )
728     snowprecipstartdate = modelstart + snowprecipstartdate
729     endif
730 heimbach 1.1 #else
731 dimitri 1.38 if ( hfluxfile .NE. ' ' .and. hfluxperiod .gt. 0. ) then
732 heimbach 1.18 call cal_FullDate ( hfluxstartdate1 , hfluxstartdate2,
733     & date_array ,mythid )
734     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
735     call cal_ToSeconds ( difftime, hfluxstartdate ,mythid )
736     hfluxstartdate = modelstart + hfluxstartdate
737     endif
738 dimitri 1.38 if ( sfluxfile .NE. ' ' .and. sfluxperiod .gt. 0. ) then
739 heimbach 1.18 call cal_FullDate ( sfluxstartdate1 , sfluxstartdate2,
740     & date_array ,mythid )
741     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
742     call cal_ToSeconds ( difftime, sfluxstartdate ,mythid )
743     sfluxstartdate = modelstart + sfluxstartdate
744     endif
745 heimbach 1.1 #endif
746    
747 dimitri 1.6 #if defined(ALLOW_ATM_TEMP) || defined(SHORTWAVE_HEATING)
748 dimitri 1.38 if ( swfluxfile .NE. ' ' .and. swfluxperiod .gt. 0. ) then
749 heimbach 1.18 call cal_FullDate ( swfluxstartdate1 , swfluxstartdate2,
750     & date_array ,mythid )
751     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
752     call cal_ToSeconds ( difftime, swfluxstartdate ,mythid )
753     swfluxstartdate = modelstart + swfluxstartdate
754     endif
755 heimbach 1.1 #endif
756    
757 dimitri 1.6 #ifdef EXF_READ_EVAP
758 dimitri 1.38 if ( evapfile .NE. ' ' .and. evapperiod .gt. 0. ) then
759 heimbach 1.18 call cal_FullDate ( evapstartdate1 , evapstartdate2,
760     & date_array ,mythid )
761     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
762     call cal_ToSeconds ( difftime, evapstartdate ,mythid )
763     evapstartdate = modelstart + evapstartdate
764     endif
765 heimbach 1.1 #endif
766    
767 dimitri 1.6 #ifdef ALLOW_RUNOFF
768 dimitri 1.38 if ( runofffile .NE. ' ' .AND. runoffperiod .gt. 0. ) then
769 heimbach 1.18 call cal_FullDate ( runoffstartdate1 , runoffstartdate2,
770     & date_array ,mythid )
771     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
772     call cal_ToSeconds ( difftime, runoffstartdate ,mythid )
773     runoffstartdate = modelstart + runoffstartdate
774     endif
775 heimbach 1.1 #endif
776    
777 dimitri 1.6 #ifdef ALLOW_DOWNWARD_RADIATION
778 dimitri 1.38 if ( swdownfile .NE. ' ' .and. swdownperiod .gt. 0. ) then
779 heimbach 1.18 call cal_FullDate ( swdownstartdate1 , swdownstartdate2,
780     & date_array ,mythid )
781     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
782     call cal_ToSeconds ( difftime, swdownstartdate ,mythid )
783     swdownstartdate = modelstart + swdownstartdate
784     endif
785 dimitri 1.38 if ( lwdownfile .NE. ' ' .and. lwdownperiod .gt. 0. ) then
786 heimbach 1.18 call cal_FullDate ( lwdownstartdate1 , lwdownstartdate2,
787     & date_array ,mythid )
788     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
789     call cal_ToSeconds ( difftime, lwdownstartdate ,mythid )
790     lwdownstartdate = modelstart + lwdownstartdate
791     endif
792     #endif
793    
794     #ifdef ATMOSPHERIC_LOADING
795 dimitri 1.38 if ( apressurefile .NE. ' ' .and. apressureperiod .gt. 0. ) then
796 heimbach 1.18 call cal_FullDate ( apressurestartdate1, apressurestartdate2,
797     & date_array ,mythid )
798     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
799     call cal_ToSeconds ( difftime, apressurestartdate ,mythid )
800     apressurestartdate = modelstart + apressurestartdate
801     endif
802 heimbach 1.1 #endif
803    
804     #ifdef ALLOW_OBCS
805 heimbach 1.2 #ifdef ALLOW_OBCS_NORTH
806 dimitri 1.38 if ( obcsNperiod .gt. 0 ) then
807 heimbach 1.18 call cal_FullDate ( obcsNstartdate1 , obcsNstartdate2,
808     & date_array ,mythid )
809     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
810     call cal_ToSeconds ( difftime, obcsNstartdate ,mythid )
811     obcsNstartdate = modelstart + obcsNstartdate
812     endif
813 heimbach 1.2 #endif
814     #ifdef ALLOW_OBCS_SOUTH
815 dimitri 1.38 if ( obcsSperiod .gt. 0 ) then
816 heimbach 1.18 call cal_FullDate ( obcsSstartdate1 , obcsSstartdate2,
817     & date_array ,mythid )
818     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
819     call cal_ToSeconds ( difftime, obcsSstartdate ,mythid )
820     obcsSstartdate = modelstart + obcsSstartdate
821     endif
822 heimbach 1.2 #endif
823     #ifdef ALLOW_OBCS_EAST
824 dimitri 1.38 if ( obcsEperiod .gt. 0 ) then
825 heimbach 1.18 call cal_FullDate ( obcsEstartdate1 , obcsEstartdate2,
826     & date_array ,mythid )
827     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
828     call cal_ToSeconds ( difftime, obcsEstartdate ,mythid )
829     obcsEstartdate = modelstart + obcsEstartdate
830     endif
831 heimbach 1.2 #endif
832     #ifdef ALLOW_OBCS_WEST
833 dimitri 1.38 if ( obcsNperiod .gt. 0 ) then
834 heimbach 1.18 call cal_FullDate ( obcsWstartdate1 , obcsWstartdate2,
835     & date_array ,mythid )
836     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
837     call cal_ToSeconds ( difftime, obcsWstartdate ,mythid )
838     obcsWstartdate = modelstart + obcsWstartdate
839     endif
840 heimbach 1.3 #endif
841 dimitri 1.6 #endif /* ALLOW_OBCS */
842 heimbach 1.3
843 heimbach 1.43 #ifdef USE_EXF_INTERPOLATION
844     if ( climsst_nlat .GT. MAX_LAT_INC )
845     & stop 'stopped in exf_clim_readparms: climsst_nlat > MAX_LAT_INC'
846     if ( climsss_nlat .GT. MAX_LAT_INC )
847     & stop 'stopped in exf_clim_readparms: climsss_nlat > MAX_LAT_INC'
848     #endif
849    
850     #ifdef ALLOW_CLIMSST_RELAXATION
851     if ( climsstfile .NE. ' ' .AND. climsstperiod .NE. 0. ) then
852     call cal_FullDate( climsststartdate1, climsststartdate2,
853     & date_array, mythid )
854     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
855     call cal_ToSeconds (difftime, climsststartdate ,mythid)
856     climsststartdate=modelstart+climsststartdate
857     endif
858     #endif
859    
860     #ifdef ALLOW_CLIMSSS_RELAXATION
861     if ( climsssfile .NE. ' ' .AND. climsssperiod .NE. 0. ) then
862     call cal_FullDate( climsssstartdate1, climsssstartdate2,
863     & date_array, mythid )
864     call cal_TimePassed(modelstartdate,date_array,difftime,mythid)
865     call cal_ToSeconds (difftime, climsssstartdate ,mythid)
866     climsssstartdate=modelstart+climsssstartdate
867     endif
868     #endif
869    
870 heimbach 1.1 _END_MASTER( mythid )
871    
872     _BARRIER
873    
874     c-- Summarize the External forcing's setup.
875     call exf_summary( mythid )
876    
877     end

  ViewVC Help
Powered by ViewVC 1.1.22