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

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

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


Revision 1.16 - (show annotations) (download)
Thu Jul 28 13:47:49 2005 UTC (18 years, 10 months ago) by heimbach
Branch: MAIN
Changes since 1.15: +7 -1 lines
Adding precip control

1 C
2 C $Header: /u/gcmpack/MITgcm/pkg/ctrl/ctrl_readparms.F,v 1.15 2005/05/23 19:28:45 heimbach Exp $
3 C $Name: $
4
5 #include "AD_CONFIG.h"
6 #include "CTRL_CPPOPTIONS.h"
7
8
9 subroutine ctrl_readparms( mythid )
10
11 c ==================================================================
12 c SUBROUTINE ctrl_readparms
13 c ==================================================================
14 c
15 c o read ctrl parameters
16 c split from ctrl_init
17 c
18 c started: heimbach@mit.edu 12-Jun-2003
19 c
20 c ==================================================================
21 c SUBROUTINE ctrl_readparms
22 c ==================================================================
23
24 implicit none
25
26 c == global variables ==
27
28 #include "EEPARAMS.h"
29 #include "SIZE.h"
30 #include "PARAMS.h"
31 #include "GRID.h"
32 #include "ctrl.h"
33
34 #ifdef ALLOW_OBCS_CONTROL
35 # include "OBCS.h"
36 #endif
37
38 c == routine arguments ==
39
40 integer mythid
41
42 c == local variables ==
43
44 integer bi,bj
45 integer i,j,k
46 integer ntmp
47 integer ivarindex
48 integer iUnit
49 integer iobcs
50 integer il
51 integer errio
52 integer startrec
53 integer endrec
54 integer difftime(4)
55 _RL diffsecs
56 _RL dummy
57
58 character*(80) ymaskobcs
59 character*(max_len_prec) record
60 character*(max_len_mbuf) msgbuf
61
62 integer nwetc3d
63
64 c == external ==
65
66 integer ilnblnk
67 external ilnblnk
68
69 c == end of interface ==
70
71 c-- Read the namelist input.
72 namelist /ctrl_nml/
73 & xx_theta_file,
74 & xx_salt_file,
75 & xx_hflux_file,
76 & xx_hfluxstartdate1, xx_hfluxstartdate2, xx_hfluxperiod,
77 & xx_sflux_file,
78 & xx_sfluxstartdate1, xx_sfluxstartdate2, xx_sfluxperiod,
79 & xx_tauu_file,
80 & xx_tauustartdate1, xx_tauustartdate2, xx_tauuperiod,
81 & xx_tauv_file,
82 & xx_tauvstartdate1, xx_tauvstartdate2, xx_tauvperiod,
83 & xx_atemp_file,
84 & xx_atempstartdate1, xx_atempstartdate2, xx_atempperiod,
85 & xx_aqh_file,
86 & xx_aqhstartdate1, xx_aqhstartdate2, xx_aqhperiod,
87 & xx_precip_file,
88 & xx_precipstartdate1, xx_precipstartdate2, xx_precipperiod,
89 & xx_uwind_file,
90 & xx_uwindstartdate1, xx_uwindstartdate2, xx_uwindperiod,
91 & xx_vwind_file,
92 & xx_vwindstartdate1, xx_vwindstartdate2, xx_vwindperiod,
93 & xx_obcsn_file,
94 & xx_obcsnstartdate1, xx_obcsnstartdate2, xx_obcsnperiod,
95 & xx_obcss_file,
96 & xx_obcssstartdate1, xx_obcssstartdate2, xx_obcssperiod,
97 & xx_obcsw_file,
98 & xx_obcswstartdate1, xx_obcswstartdate2, xx_obcswperiod,
99 & xx_obcse_file,
100 & xx_obcsestartdate1, xx_obcsestartdate2, xx_obcseperiod,
101 & xx_diffkr_file,
102 & xx_kapgm_file,
103 & xx_tr1_file,
104 & xx_sst_file,
105 & xx_sss_file,
106 & xx_hfacc_file,
107 & xx_efluxy_file,
108 & xx_efluxp_file,
109 & xx_bottomdrag_file,
110 & xx_edtaux_file,
111 & xx_edtauy_file,
112 & xx_uvel_file,
113 & xx_vvel_file,
114 & xx_etan_file,
115 & doInitXX,
116 & doPackDiag,
117 & doZscaleUnpack,
118 & doZscalePack
119
120
121 namelist /ctrl_packnames/
122 & yadmark, yctrlid, yctrlposunpack, yctrlpospack,
123 & ctrlname, costname, scalname, maskname, metaname
124
125 _BEGIN_MASTER( myThid )
126
127 c-- Set default values.
128 doInitXX = .TRUE.
129 #ifdef ALLOW_ADMTLM
130 doAdmTlm = .TRUE.
131 #else
132 doAdmTlm = .FALSE.
133 #endif
134 doPackDiag = .FALSE.
135 doZscaleUnpack = .FALSE.
136 doZscalePack = .FALSE.
137
138 xx_theta_file = 'xx_theta'
139 xx_salt_file = 'xx_salt'
140 xx_hfluxstartdate1 = 0
141 xx_hfluxstartdate2 = 0
142 xx_hfluxperiod = 0. _d 0
143 xx_hflux_file = 'xx_hfl'
144 xx_sfluxstartdate1 = 0
145 xx_sfluxstartdate2 = 0
146 xx_sfluxperiod = 0. _d 0
147 xx_sflux_file = 'xx_sfl'
148 xx_tauustartdate1 = 0
149 xx_tauustartdate2 = 0
150 xx_tauuperiod = 0. _d 0
151 xx_tauu_file = 'xx_tauu'
152 xx_tauvstartdate1 = 0
153 xx_tauvstartdate2 = 0
154 xx_tauvperiod = 0. _d 0
155 xx_tauv_file = 'xx_tauv'
156 xx_atempstartdate1 = 0
157 xx_atempstartdate2 = 0
158 xx_atempperiod = 0. _d 0
159 xx_atemp_file = 'xx_atemp'
160 xx_aqhstartdate1 = 0
161 xx_aqhstartdate2 = 0
162 xx_aqhperiod = 0. _d 0
163 xx_aqh_file = 'xx_aqh'
164 xx_precipstartdate1 = 0
165 xx_precipstartdate2 = 0
166 xx_precipperiod = 0. _d 0
167 xx_precip_file = 'xx_precip'
168 xx_uwindstartdate1 = 0
169 xx_uwindstartdate2 = 0
170 xx_uwindperiod = 0. _d 0
171 xx_uwind_file = 'xx_uwind'
172 xx_vwindstartdate1 = 0
173 xx_vwindstartdate2 = 0
174 xx_vwindperiod = 0. _d 0
175 xx_vwind_file = 'xx_vwind'
176 xx_obcsnstartdate1 = 0
177 xx_obcsnstartdate2 = 0
178 xx_obcsnperiod = 0. _d 0
179 xx_obcsn_file = 'xx_obcsn'
180 xx_obcssstartdate1 = 0
181 xx_obcssstartdate2 = 0
182 xx_obcssperiod = 0. _d 0
183 xx_obcss_file = 'xx_obcss'
184 xx_obcswstartdate1 = 0
185 xx_obcswstartdate2 = 0
186 xx_obcswperiod = 0. _d 0
187 xx_obcsw_file = 'xx_obcsw'
188 xx_obcsestartdate1 = 0
189 xx_obcsestartdate2 = 0
190 xx_obcseperiod = 0. _d 0
191 xx_obcse_file = 'xx_obcse'
192 xx_diffkr_file = 'xx_diffkr'
193 xx_kapgm_file = 'xx_kapgm'
194 xx_tr1_file = 'xx_ptr'
195 xx_sst_file = 'xx_sst'
196 xx_sss_file = 'xx_sss'
197 xx_hfacc_file = 'xx_hfacc'
198 xx_efluxy_file = 'xx_efluxy'
199 xx_efluxp_file = 'xx_efluxp'
200 xx_bottomdrag_file = 'xx_bottomdrag'
201 xx_edtaux_file = 'xx_edtaux'
202 xx_edtauy_file = 'xx_edtauy'
203 xx_uvel_file = 'xx_uvel'
204 xx_vvel_file = 'xx_vvel'
205 xx_etan_file = 'xx_etan'
206
207 #ifdef ALLOW_TANGENTLINEAR_RUN
208 yadprefix = 'g_'
209 yadmark = 'g_'
210 #else
211 yadprefix = 'ad'
212 yadmark = 'ad'
213 #endif
214 yctrlid = 'MIT_CE_000'
215 yctrlposunpack = '.opt'
216 yctrlpospack = '.opt'
217 ctrlname = ' '
218 costname = ' '
219 scalname = ' '
220 maskname = ' '
221 metaname = ' '
222
223 c-- Next, read the cost data file.
224 WRITE(msgBuf,'(A)') 'CTRL_READPARMS: opening data.ctrl'
225 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
226 & SQUEEZE_RIGHT , 1)
227
228 CALL OPEN_COPY_DATA_FILE(
229 I 'data.ctrl', 'CTRL_READPARMS',
230 O iUnit,
231 I myThid )
232
233 READ(unit = iUnit, nml = ctrl_nml)
234 READ(unit = iUnit, nml = ctrl_packnames)
235
236 WRITE(msgBuf,'(A)')
237 & 'CTRL_READPARMS: finished reading data.ctrl'
238 CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
239 & SQUEEZE_RIGHT , 1)
240
241 CLOSE( iUnit )
242
243 _END_MASTER( myThid )
244
245 _BARRIER
246
247 return
248 end
249

  ViewVC Help
Powered by ViewVC 1.1.22