1 |
c $Header$ |
c $Header$ |
2 |
|
|
3 |
#include "EXF_CPPOPTIONS.h" |
#include "EXF_OPTIONS.h" |
4 |
|
|
5 |
|
|
6 |
subroutine exf_clim_readparms( |
subroutine exf_clim_readparms( |
37 |
c == local variables == |
c == local variables == |
38 |
|
|
39 |
integer i |
integer i |
40 |
|
integer date_array(4), difftime(4) |
41 |
|
|
42 |
c == end of interface == |
c == end of interface == |
43 |
|
|
44 |
c Surface flux data. |
c Surface flux data. |
45 |
namelist /exf_clim_nml/ |
namelist /exf_clim_nml/ |
46 |
|
& climtempfreeze, |
47 |
& climtempstartdate1, climtempstartdate2, climtempperiod, |
& climtempstartdate1, climtempstartdate2, climtempperiod, |
48 |
& climsaltstartdate1, climsaltstartdate2, climsaltperiod, |
& climsaltstartdate1, climsaltstartdate2, climsaltperiod, |
49 |
& climsststartdate1, climsststartdate2, climsstperiod, |
& climsststartdate1, climsststartdate2, climsstperiod, |
87 |
climsstfile = ' ' |
climsstfile = ' ' |
88 |
climsssfile = ' ' |
climsssfile = ' ' |
89 |
|
|
90 |
c Initialise the date arrays. |
c Start dates. |
91 |
do i = 1,4 |
climtempstartdate = 0 |
92 |
climtempstartdate(i) = 0 |
climsaltstartdate = 0 |
93 |
climsaltstartdate(i) = 0 |
climsststartdate = 0 |
94 |
climsststartdate(i) = 0 |
climsssstartdate = 0 |
|
climsssstartdate(i) = 0 |
|
|
enddo |
|
95 |
|
|
96 |
c Initialise constant values for relax. to constant SST, SSS |
c Initialise constant values for relax. to constant SST, SSS |
97 |
climsstconst = 0. _d 0 |
climsstconst = 0. _d 0 |
98 |
climsssconst = 0. _d 0 |
climsssconst = 0. _d 0 |
99 |
|
|
100 |
|
c Initialise freezing temperature of sea water |
101 |
|
climtempfreeze = -1.9 _d 0 |
102 |
|
|
103 |
c Initialise file type and field precision |
c Initialise file type and field precision |
104 |
exf_clim_iprec = 32 |
exf_clim_iprec = 32 |
105 |
exf_clim_yftype = 'RL' |
exf_clim_yftype = 'RL' |
138 |
end if |
end if |
139 |
|
|
140 |
#ifdef ALLOW_CLIMTEMP_RELAXATION |
#ifdef ALLOW_CLIMTEMP_RELAXATION |
141 |
call cal_FullDate( climtempstartdate1, climtempstartdate2, |
if ( climtempfile .NE. ' ' ) then |
142 |
& climtempstartdate, mythid ) |
call cal_FullDate( climtempstartdate1, climtempstartdate2, |
143 |
|
& date_array, mythid ) |
144 |
|
call cal_TimePassed(modelstartdate,date_array,difftime,mythid) |
145 |
|
call cal_ToSeconds (difftime, climtempstartdate ,mythid) |
146 |
|
climtempstartdate=modelstart+climtempstartdate |
147 |
|
endif |
148 |
#endif |
#endif |
149 |
|
|
150 |
#ifdef ALLOW_CLIMSALT_RELAXATION |
#ifdef ALLOW_CLIMSALT_RELAXATION |
151 |
|
if ( climsaltfile .NE. ' ' ) then |
152 |
call cal_FullDate( climsaltstartdate1, climsaltstartdate2, |
call cal_FullDate( climsaltstartdate1, climsaltstartdate2, |
153 |
& climsaltstartdate, mythid ) |
& date_array, mythid ) |
154 |
|
call cal_TimePassed(modelstartdate,date_array,difftime,mythid) |
155 |
|
call cal_ToSeconds (difftime, climsaltstartdate ,mythid) |
156 |
|
climsaltstartdate=modelstart+climsaltstartdate |
157 |
|
endif |
158 |
#endif |
#endif |
159 |
|
|
160 |
#ifdef ALLOW_CLIMSST_RELAXATION |
#ifdef ALLOW_CLIMSST_RELAXATION |
161 |
call cal_FullDate( climsststartdate1, climsststartdate2, |
if ( climsstfile .NE. ' ' ) then |
162 |
& climsststartdate, mythid ) |
call cal_FullDate( climsststartdate1, climsststartdate2, |
163 |
|
& date_array, mythid ) |
164 |
|
call cal_TimePassed(modelstartdate,date_array,difftime,mythid) |
165 |
|
call cal_ToSeconds (difftime, climsststartdate ,mythid) |
166 |
|
climsststartdate=modelstart+climsststartdate |
167 |
|
endif |
168 |
#endif |
#endif |
169 |
|
|
170 |
#ifdef ALLOW_CLIMSSS_RELAXATION |
#ifdef ALLOW_CLIMSSS_RELAXATION |
171 |
call cal_FullDate( climsssstartdate1, climsssstartdate2, |
if ( climsssfile .NE. ' ' ) then |
172 |
& climsssstartdate, mythid ) |
call cal_FullDate( climsssstartdate1, climsssstartdate2, |
173 |
|
& date_array, mythid ) |
174 |
|
call cal_TimePassed(modelstartdate,date_array,difftime,mythid) |
175 |
|
call cal_ToSeconds (difftime, climsssstartdate ,mythid) |
176 |
|
climsssstartdate=modelstart+climsssstartdate |
177 |
|
endif |
178 |
#endif |
#endif |
179 |
|
|
180 |
_END_MASTER( mythid ) |
_END_MASTER( mythid ) |