/[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.13 - (show annotations) (download)
Wed Mar 30 18:40:40 2005 UTC (19 years, 2 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint57f_pre, checkpoint57f_post
Changes since 1.12: +26 -26 lines
Assign default file names to xx_ files.

1 C
2 C $Header: /u/gcmpack/MITgcm/pkg/ctrl/ctrl_readparms.F,v 1.12 2005/02/28 17:29:38 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
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_uwind_file,
88 & xx_uwindstartdate1, xx_uwindstartdate2, xx_uwindperiod,
89 & xx_vwind_file,
90 & xx_vwindstartdate1, xx_vwindstartdate2, xx_vwindperiod,
91 & xx_obcsn_file,
92 & xx_obcsnstartdate1, xx_obcsnstartdate2, xx_obcsnperiod,
93 & xx_obcss_file,
94 & xx_obcssstartdate1, xx_obcssstartdate2, xx_obcssperiod,
95 & xx_obcsw_file,
96 & xx_obcswstartdate1, xx_obcswstartdate2, xx_obcswperiod,
97 & xx_obcse_file,
98 & xx_obcsestartdate1, xx_obcsestartdate2, xx_obcseperiod,
99 & xx_diffkr_file,
100 & xx_kapgm_file,
101 & xx_tr1_file,
102 & xx_sst_file,
103 & xx_sss_file,
104 & xx_hfacc_file,
105 & xx_efluxy_file,
106 & xx_efluxp_file,
107 & xx_bottomdrag_file,
108 & xx_edtaux_file,
109 & xx_edtauy_file,
110 & doInitXX,
111 & doPackDiag,
112 & doZscaleUnpack,
113 & doZscalePack
114
115
116 namelist /ctrl_packnames/
117 & yadmark, yctrlid, yctrlposunpack, yctrlpospack,
118 & ctrlname, costname, scalname, maskname, metaname
119
120 _BEGIN_MASTER( myThid )
121
122 c-- Set default values.
123 doInitXX = .TRUE.
124 #ifdef ALLOW_ADMTLM
125 doAdmTlm = .TRUE.
126 #else
127 doAdmTlm = .FALSE.
128 #endif
129 doPackDiag = .FALSE.
130 doZscaleUnpack = .FALSE.
131 doZscalePack = .FALSE.
132
133 xx_theta_file = 'xx_theta'
134 xx_salt_file = 'xx_salt'
135 xx_hfluxstartdate1 = 0
136 xx_hfluxstartdate2 = 0
137 xx_hfluxperiod = 0. _d 0
138 xx_hflux_file = 'xx_hfl'
139 xx_sfluxstartdate1 = 0
140 xx_sfluxstartdate2 = 0
141 xx_sfluxperiod = 0. _d 0
142 xx_sflux_file = 'xx_sfl'
143 xx_tauustartdate1 = 0
144 xx_tauustartdate2 = 0
145 xx_tauuperiod = 0. _d 0
146 xx_tauu_file = 'xx_tauu'
147 xx_tauvstartdate1 = 0
148 xx_tauvstartdate2 = 0
149 xx_tauvperiod = 0. _d 0
150 xx_tauv_file = 'xx_tauv'
151 xx_atempstartdate1 = 0
152 xx_atempstartdate2 = 0
153 xx_atempperiod = 0. _d 0
154 xx_atemp_file = 'xx_atemp'
155 xx_aqhstartdate1 = 0
156 xx_aqhstartdate2 = 0
157 xx_aqhperiod = 0. _d 0
158 xx_aqh_file = 'xx_aqh'
159 xx_uwindstartdate1 = 0
160 xx_uwindstartdate2 = 0
161 xx_uwindperiod = 0. _d 0
162 xx_uwind_file = 'xx_uwind'
163 xx_vwindstartdate1 = 0
164 xx_vwindstartdate2 = 0
165 xx_vwindperiod = 0. _d 0
166 xx_vwind_file = 'xx_vwind'
167 xx_obcsnstartdate1 = 0
168 xx_obcsnstartdate2 = 0
169 xx_obcsnperiod = 0. _d 0
170 xx_obcsn_file = 'xx_obcsn'
171 xx_obcssstartdate1 = 0
172 xx_obcssstartdate2 = 0
173 xx_obcssperiod = 0. _d 0
174 xx_obcss_file = 'xx_obcss'
175 xx_obcswstartdate1 = 0
176 xx_obcswstartdate2 = 0
177 xx_obcswperiod = 0. _d 0
178 xx_obcsw_file = 'xx_obcsw'
179 xx_obcsestartdate1 = 0
180 xx_obcsestartdate2 = 0
181 xx_obcseperiod = 0. _d 0
182 xx_obcse_file = 'xx_obcse'
183 xx_diffkr_file = 'xx_diffkr'
184 xx_kapgm_file = 'xx_kapgm'
185 xx_tr1_file = 'xx_ptr'
186 xx_sst_file = 'xx_sst'
187 xx_sss_file = 'xx_sss'
188 xx_hfacc_file = 'xx_hfacc'
189 xx_efluxy_file = 'xx_efluxy'
190 xx_efluxp_file = 'xx_efluxp'
191 xx_bottomdrag_file = 'xx_bottomdrag'
192 xx_edtaux_file = 'xx_edtaux'
193 xx_edtauy_file = 'xx_edtauy'
194
195 #ifdef ALLOW_TANGENTLINEAR_RUN
196 yadprefix = 'g_'
197 yadmark = 'g_'
198 #else
199 yadprefix = 'ad'
200 yadmark = 'ad'
201 #endif
202 yctrlid = 'MIT_CE_000'
203 yctrlposunpack = '.opt'
204 yctrlpospack = '.opt'
205 ctrlname = ' '
206 costname = ' '
207 scalname = ' '
208 maskname = ' '
209 metaname = ' '
210
211 c-- Check versions.
212
213 open(unit=scrunit1,status='scratch')
214
215 c-- Next, read the ecco data file.
216 open(unit = modeldataunit,file = 'data.ctrl',
217 & status = 'old', iostat = errio)
218 if ( errio .lt. 0 ) then
219 stop ' stopped in ctrl_readparms'
220 endif
221
222 do while ( .true. )
223 read(modeldataunit, fmt='(a)', end=1001) record
224 il = max(ilnblnk(record),1)
225 if ( record(1:1) .ne. commentcharacter )
226 & write(unit=scrunit1, fmt='(a)') record(:il)
227 enddo
228 1001 continue
229 close( modeldataunit )
230
231 rewind( scrunit1 )
232 read(unit = scrunit1, nml = ctrl_nml)
233 read(unit = scrunit1, nml = ctrl_packnames)
234 close( scrunit1 )
235
236 _END_MASTER( myThid )
237
238 _BARRIER
239
240 return
241 end
242

  ViewVC Help
Powered by ViewVC 1.1.22