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

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

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


Revision 1.17 - (hide annotations) (download)
Thu Jul 28 19:51:22 2005 UTC (18 years, 9 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint57o_post, checkpoint57n_post, checkpoint57p_post
Changes since 1.16: +7 -1 lines
Adding swflux control

1 edhill 1.5 C
2 heimbach 1.17 C $Header: /u/gcmpack/MITgcm/pkg/ctrl/ctrl_readparms.F,v 1.16 2005/07/28 13:47:49 heimbach Exp $
3 heimbach 1.10 C $Name: $
4 heimbach 1.2
5 edhill 1.5 #include "AD_CONFIG.h"
6 heimbach 1.2 #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 heimbach 1.15 integer iUnit
49 heimbach 1.2 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 heimbach 1.16 & xx_precip_file,
88     & xx_precipstartdate1, xx_precipstartdate2, xx_precipperiod,
89 heimbach 1.17 & xx_swflux_file,
90     & xx_swfluxstartdate1, xx_swfluxstartdate2, xx_swfluxperiod,
91 heimbach 1.2 & xx_uwind_file,
92     & xx_uwindstartdate1, xx_uwindstartdate2, xx_uwindperiod,
93     & xx_vwind_file,
94     & xx_vwindstartdate1, xx_vwindstartdate2, xx_vwindperiod,
95     & xx_obcsn_file,
96     & xx_obcsnstartdate1, xx_obcsnstartdate2, xx_obcsnperiod,
97     & xx_obcss_file,
98     & xx_obcssstartdate1, xx_obcssstartdate2, xx_obcssperiod,
99     & xx_obcsw_file,
100     & xx_obcswstartdate1, xx_obcswstartdate2, xx_obcswperiod,
101     & xx_obcse_file,
102     & xx_obcsestartdate1, xx_obcsestartdate2, xx_obcseperiod,
103     & xx_diffkr_file,
104     & xx_kapgm_file,
105     & xx_tr1_file,
106     & xx_sst_file,
107     & xx_sss_file,
108     & xx_hfacc_file,
109     & xx_efluxy_file,
110     & xx_efluxp_file,
111 heimbach 1.7 & xx_bottomdrag_file,
112 heimbach 1.12 & xx_edtaux_file,
113     & xx_edtauy_file,
114 heimbach 1.14 & xx_uvel_file,
115     & xx_vvel_file,
116     & xx_etan_file,
117 heimbach 1.10 & doInitXX,
118 heimbach 1.11 & doPackDiag,
119     & doZscaleUnpack,
120     & doZscalePack
121    
122 heimbach 1.2
123     namelist /ctrl_packnames/
124 heimbach 1.6 & yadmark, yctrlid, yctrlposunpack, yctrlpospack,
125 heimbach 1.2 & ctrlname, costname, scalname, maskname, metaname
126    
127     _BEGIN_MASTER( myThid )
128    
129     c-- Set default values.
130 heimbach 1.8 doInitXX = .TRUE.
131     #ifdef ALLOW_ADMTLM
132     doAdmTlm = .TRUE.
133     #else
134     doAdmTlm = .FALSE.
135     #endif
136 heimbach 1.10 doPackDiag = .FALSE.
137 heimbach 1.11 doZscaleUnpack = .FALSE.
138     doZscalePack = .FALSE.
139 heimbach 1.8
140 heimbach 1.13 xx_theta_file = 'xx_theta'
141     xx_salt_file = 'xx_salt'
142 heimbach 1.2 xx_hfluxstartdate1 = 0
143     xx_hfluxstartdate2 = 0
144     xx_hfluxperiod = 0. _d 0
145 heimbach 1.13 xx_hflux_file = 'xx_hfl'
146 heimbach 1.2 xx_sfluxstartdate1 = 0
147     xx_sfluxstartdate2 = 0
148     xx_sfluxperiod = 0. _d 0
149 heimbach 1.13 xx_sflux_file = 'xx_sfl'
150 heimbach 1.2 xx_tauustartdate1 = 0
151     xx_tauustartdate2 = 0
152     xx_tauuperiod = 0. _d 0
153 heimbach 1.13 xx_tauu_file = 'xx_tauu'
154 heimbach 1.2 xx_tauvstartdate1 = 0
155     xx_tauvstartdate2 = 0
156     xx_tauvperiod = 0. _d 0
157 heimbach 1.13 xx_tauv_file = 'xx_tauv'
158 heimbach 1.2 xx_atempstartdate1 = 0
159     xx_atempstartdate2 = 0
160     xx_atempperiod = 0. _d 0
161 heimbach 1.13 xx_atemp_file = 'xx_atemp'
162 heimbach 1.2 xx_aqhstartdate1 = 0
163     xx_aqhstartdate2 = 0
164     xx_aqhperiod = 0. _d 0
165 heimbach 1.13 xx_aqh_file = 'xx_aqh'
166 heimbach 1.16 xx_precipstartdate1 = 0
167     xx_precipstartdate2 = 0
168     xx_precipperiod = 0. _d 0
169     xx_precip_file = 'xx_precip'
170 heimbach 1.17 xx_swfluxstartdate1 = 0
171     xx_swfluxstartdate2 = 0
172     xx_swfluxperiod = 0. _d 0
173     xx_swflux_file = 'xx_swflux'
174 heimbach 1.2 xx_uwindstartdate1 = 0
175     xx_uwindstartdate2 = 0
176     xx_uwindperiod = 0. _d 0
177 heimbach 1.13 xx_uwind_file = 'xx_uwind'
178 heimbach 1.2 xx_vwindstartdate1 = 0
179     xx_vwindstartdate2 = 0
180     xx_vwindperiod = 0. _d 0
181 heimbach 1.13 xx_vwind_file = 'xx_vwind'
182 heimbach 1.2 xx_obcsnstartdate1 = 0
183     xx_obcsnstartdate2 = 0
184     xx_obcsnperiod = 0. _d 0
185 heimbach 1.13 xx_obcsn_file = 'xx_obcsn'
186 heimbach 1.2 xx_obcssstartdate1 = 0
187     xx_obcssstartdate2 = 0
188     xx_obcssperiod = 0. _d 0
189 heimbach 1.13 xx_obcss_file = 'xx_obcss'
190 heimbach 1.2 xx_obcswstartdate1 = 0
191     xx_obcswstartdate2 = 0
192     xx_obcswperiod = 0. _d 0
193 heimbach 1.13 xx_obcsw_file = 'xx_obcsw'
194 heimbach 1.2 xx_obcsestartdate1 = 0
195     xx_obcsestartdate2 = 0
196     xx_obcseperiod = 0. _d 0
197 heimbach 1.13 xx_obcse_file = 'xx_obcse'
198     xx_diffkr_file = 'xx_diffkr'
199     xx_kapgm_file = 'xx_kapgm'
200     xx_tr1_file = 'xx_ptr'
201     xx_sst_file = 'xx_sst'
202     xx_sss_file = 'xx_sss'
203     xx_hfacc_file = 'xx_hfacc'
204     xx_efluxy_file = 'xx_efluxy'
205     xx_efluxp_file = 'xx_efluxp'
206     xx_bottomdrag_file = 'xx_bottomdrag'
207     xx_edtaux_file = 'xx_edtaux'
208     xx_edtauy_file = 'xx_edtauy'
209 heimbach 1.14 xx_uvel_file = 'xx_uvel'
210     xx_vvel_file = 'xx_vvel'
211     xx_etan_file = 'xx_etan'
212 heimbach 1.2
213 heimbach 1.4 #ifdef ALLOW_TANGENTLINEAR_RUN
214     yadprefix = 'g_'
215     yadmark = 'g_'
216     #else
217     yadprefix = 'ad'
218 heimbach 1.2 yadmark = 'ad'
219     #endif
220     yctrlid = 'MIT_CE_000'
221 heimbach 1.6 yctrlposunpack = '.opt'
222     yctrlpospack = '.opt'
223 heimbach 1.2 ctrlname = ' '
224     costname = ' '
225     scalname = ' '
226     maskname = ' '
227     metaname = ' '
228    
229 heimbach 1.15 c-- Next, read the cost data file.
230     WRITE(msgBuf,'(A)') 'CTRL_READPARMS: opening data.ctrl'
231     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
232     & SQUEEZE_RIGHT , 1)
233    
234     CALL OPEN_COPY_DATA_FILE(
235     I 'data.ctrl', 'CTRL_READPARMS',
236     O iUnit,
237     I myThid )
238    
239     READ(unit = iUnit, nml = ctrl_nml)
240     READ(unit = iUnit, nml = ctrl_packnames)
241    
242     WRITE(msgBuf,'(A)')
243     & 'CTRL_READPARMS: finished reading data.ctrl'
244     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
245     & SQUEEZE_RIGHT , 1)
246 heimbach 1.2
247 heimbach 1.15 CLOSE( iUnit )
248 heimbach 1.2
249     _END_MASTER( myThid )
250    
251     _BARRIER
252    
253     return
254     end
255    

  ViewVC Help
Powered by ViewVC 1.1.22