/[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.18 - (hide annotations) (download)
Sat Aug 6 11:02:01 2005 UTC (18 years, 9 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint57q_post
Changes since 1.17: +7 -1 lines
Adding swdown control.

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

  ViewVC Help
Powered by ViewVC 1.1.22