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

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

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

revision 1.14 by heimbach, Thu Apr 7 23:38:43 2005 UTC revision 1.29 by gforget, Sat Feb 2 02:34:50 2008 UTC
# Line 45  c     == local variables == Line 45  c     == local variables ==
45        integer i,j,k        integer i,j,k
46        integer ntmp        integer ntmp
47        integer ivarindex        integer ivarindex
48          integer iUnit
49        integer iobcs        integer iobcs
50        integer il        integer il
51        integer errio        integer errio
# Line 70  c     == end of interface == Line 70  c     == end of interface ==
70    
71  c--   Read the namelist input.  c--   Read the namelist input.
72        namelist /ctrl_nml/        namelist /ctrl_nml/
73       &  xx_theta_file,       &  xx_theta_file, xx_salt_file,
74       &  xx_salt_file,       &  xx_hflux_file, xx_hflux_remo_intercept, xx_hflux_remo_slope,
      &  xx_hflux_file,  
75       &  xx_hfluxstartdate1, xx_hfluxstartdate2, xx_hfluxperiod,       &  xx_hfluxstartdate1, xx_hfluxstartdate2, xx_hfluxperiod,
76       &  xx_sflux_file,       &  xx_sflux_file, xx_sflux_remo_intercept, xx_sflux_remo_slope,
77       &  xx_sfluxstartdate1, xx_sfluxstartdate2, xx_sfluxperiod,       &  xx_sfluxstartdate1, xx_sfluxstartdate2, xx_sfluxperiod,
78       &  xx_tauu_file,       &  xx_tauu_file, xx_tauu_remo_intercept, xx_tauu_remo_slope,
79       &  xx_tauustartdate1,  xx_tauustartdate2,  xx_tauuperiod,       &  xx_tauustartdate1,  xx_tauustartdate2,  xx_tauuperiod,
80       &  xx_tauv_file,       &  xx_tauv_file, xx_tauv_remo_intercept, xx_tauv_remo_slope,
81       &  xx_tauvstartdate1,  xx_tauvstartdate2,  xx_tauvperiod,       &  xx_tauvstartdate1,  xx_tauvstartdate2,  xx_tauvperiod,
82       &  xx_atemp_file,       &  xx_atemp_file, xx_atemp_remo_intercept, xx_atemp_remo_slope,
83       &  xx_atempstartdate1, xx_atempstartdate2, xx_atempperiod,       &  xx_atempstartdate1, xx_atempstartdate2, xx_atempperiod,
84       &  xx_aqh_file,       &  xx_aqh_file, xx_aqh_remo_intercept, xx_aqh_remo_slope,
85       &  xx_aqhstartdate1, xx_aqhstartdate2, xx_aqhperiod,       &  xx_aqhstartdate1, xx_aqhstartdate2, xx_aqhperiod,
86       &  xx_uwind_file,       &  xx_precip_file, xx_precip_remo_intercept, xx_precip_remo_slope,
87         &  xx_precipstartdate1, xx_precipstartdate2, xx_precipperiod,
88         &  xx_swflux_file, xx_swflux_remo_intercept, xx_swflux_remo_slope,
89         &  xx_swfluxstartdate1, xx_swfluxstartdate2, xx_swfluxperiod,
90         &  xx_swdown_file, xx_swdown_remo_intercept, xx_swdown_remo_slope,
91         &  xx_swdownstartdate1, xx_swdownstartdate2, xx_swdownperiod,
92         &  xx_lwflux_file, xx_lwflux_remo_intercept, xx_lwflux_remo_slope,
93         &  xx_lwfluxstartdate1, xx_lwfluxstartdate2, xx_lwfluxperiod,
94         &  xx_lwdown_file, xx_lwdown_remo_intercept, xx_lwdown_remo_slope,
95         &  xx_lwdownstartdate1, xx_lwdownstartdate2, xx_lwdownperiod,
96         &  xx_evap_file, xx_evap_remo_intercept, xx_evap_remo_slope,
97         &  xx_evapstartdate1, xx_evapstartdate2, xx_evapperiod,
98         &  xx_snowprecip_file, xx_snowprecip_remo_intercept,
99         &  xx_snowprecip_remo_slope,  xx_snowprecipperiod,
100         &  xx_snowprecipstartdate1, xx_snowprecipstartdate2,
101         &  xx_apressure_file, xx_apressure_remo_intercept,
102         &  xx_apressure_remo_slope, xx_apressureperiod,
103         &  xx_apressurestartdate1, xx_apressurestartdate2,
104         &  xx_runoff_file, xx_runoff_remo_intercept, xx_runoff_remo_slope,
105         &  xx_runoffstartdate1, xx_runoffstartdate2, xx_runoffperiod,
106         &  xx_uwind_file, xx_uwind_remo_intercept, xx_uwind_remo_slope,
107       &  xx_uwindstartdate1, xx_uwindstartdate2, xx_uwindperiod,       &  xx_uwindstartdate1, xx_uwindstartdate2, xx_uwindperiod,
108       &  xx_vwind_file,       &  xx_vwind_file, xx_vwind_remo_intercept, xx_vwind_remo_slope,
109       &  xx_vwindstartdate1, xx_vwindstartdate2, xx_vwindperiod,       &  xx_vwindstartdate1, xx_vwindstartdate2, xx_vwindperiod,
110       &  xx_obcsn_file,       &  xx_obcsn_file,
111       &  xx_obcsnstartdate1,  xx_obcsnstartdate2,  xx_obcsnperiod,       &  xx_obcsnstartdate1,  xx_obcsnstartdate2,  xx_obcsnperiod,
# Line 96  c--   Read the namelist input. Line 115  c--   Read the namelist input.
115       &  xx_obcswstartdate1,  xx_obcswstartdate2,  xx_obcswperiod,       &  xx_obcswstartdate1,  xx_obcswstartdate2,  xx_obcswperiod,
116       &  xx_obcse_file,       &  xx_obcse_file,
117       &  xx_obcsestartdate1,  xx_obcsestartdate2,  xx_obcseperiod,       &  xx_obcsestartdate1,  xx_obcsestartdate2,  xx_obcseperiod,
118       &  xx_diffkr_file,       &  xx_diffkr_file, xx_kapgm_file, xx_kapredi_file, xx_tr1_file,
119       &  xx_kapgm_file,       &  xx_sst_file, xx_sss_file,
120       &  xx_tr1_file,       &  xx_sststartdate1, xx_sststartdate2, xx_sstperiod,
121       &  xx_sst_file,       &  xx_sssstartdate1, xx_sssstartdate2, xx_sssperiod,
122       &  xx_sss_file,       &  xx_depth_file,
123       &  xx_hfacc_file,       &  xx_efluxy_file, xx_efluxp_file,
      &  xx_efluxy_file,  
      &  xx_efluxp_file,  
124       &  xx_bottomdrag_file,       &  xx_bottomdrag_file,
125       &  xx_edtaux_file,       &  xx_edtaux_file, xx_edtauy_file,
126       &  xx_edtauy_file,       &  xx_uvel_file, xx_vvel_file, xx_etan_file,
127       &  xx_uvel_file,       &  xx_siarea_file, xx_siheff_file, xx_sihsnow_file,
      &  xx_vvel_file,  
      &  xx_etan_file,  
128       &  doInitXX,       &  doInitXX,
129       &  doPackDiag,       &  doPackDiag,
130       &  doZscaleUnpack,       &  doZscaleUnpack, doZscalePack,
131       &  doZscalePack       &  doMainUnpack, doMainPack,
132         &  doAdmtlmBypassAD,
133         &  delZexp, forcingPrecond
134    cHFLUXM_CONTROL
135         &  ,xx_hfluxm_file
136    cHFLUXM_CONTROL
137    
138        namelist /ctrl_packnames/        namelist /ctrl_packnames/
139       &  yadmark, yctrlid, yctrlposunpack, yctrlpospack,       &  yadmark, yctrlid, yctrlposunpack, yctrlpospack,
# Line 132  c--     Set default values. Line 151  c--     Set default values.
151          doPackDiag          = .FALSE.          doPackDiag          = .FALSE.
152          doZscaleUnpack      = .FALSE.          doZscaleUnpack      = .FALSE.
153          doZscalePack        = .FALSE.          doZscalePack        = .FALSE.
154            doMainUnpack        = .TRUE.
155            doMainPack          = .TRUE.
156            doAdmtlmBypassAD    = .FALSE.
157    
158            delZexp = 0.
159            forcingPrecond = 1. _d 0
160    
161          xx_theta_file      = 'xx_theta'          xx_theta_file      = 'xx_theta'
162          xx_salt_file       = 'xx_salt'          xx_salt_file       = 'xx_salt'
163    c
164          xx_hfluxstartdate1 =   0          xx_hfluxstartdate1 =   0
165          xx_hfluxstartdate2 =   0          xx_hfluxstartdate2 =   0
166          xx_hfluxperiod     =   0. _d 0          xx_hfluxperiod     =   0. _d 0
167          xx_hflux_file      = 'xx_hfl'          xx_hflux_file      = 'xx_hfl'
168            xx_hflux_remo_intercept =   0. _d 0
169            xx_hflux_remo_slope =   0. _d 0
170    c
171          xx_sfluxstartdate1 =   0          xx_sfluxstartdate1 =   0
172          xx_sfluxstartdate2 =   0          xx_sfluxstartdate2 =   0
173          xx_sfluxperiod     =   0. _d 0          xx_sfluxperiod     =   0. _d 0
174          xx_sflux_file      = 'xx_sfl'          xx_sflux_file      = 'xx_sfl'
175            xx_sflux_remo_intercept =   0. _d 0
176            xx_sflux_remo_slope =   0. _d 0
177    c
178          xx_tauustartdate1  =   0          xx_tauustartdate1  =   0
179          xx_tauustartdate2  =   0          xx_tauustartdate2  =   0
180          xx_tauuperiod      =   0. _d 0          xx_tauuperiod      =   0. _d 0
181          xx_tauu_file       = 'xx_tauu'          xx_tauu_file       = 'xx_tauu'
182            xx_tauu_remo_intercept =   0. _d 0
183            xx_tauu_remo_slope =   0. _d 0
184    c
185          xx_tauvstartdate1  =   0          xx_tauvstartdate1  =   0
186          xx_tauvstartdate2  =   0          xx_tauvstartdate2  =   0
187          xx_tauvperiod      =   0. _d 0          xx_tauvperiod      =   0. _d 0
188          xx_tauv_file       = 'xx_tauv'          xx_tauv_file       = 'xx_tauv'
189            xx_tauv_remo_intercept =   0. _d 0
190            xx_tauv_remo_slope =   0. _d 0
191    c
192          xx_atempstartdate1  =   0          xx_atempstartdate1  =   0
193          xx_atempstartdate2  =   0          xx_atempstartdate2  =   0
194          xx_atempperiod      =   0. _d 0          xx_atempperiod      =   0. _d 0
195          xx_atemp_file       = 'xx_atemp'          xx_atemp_file       = 'xx_atemp'
196            xx_atemp_remo_intercept =   0. _d 0
197            xx_atemp_remo_slope =   0. _d 0
198    c
199          xx_aqhstartdate1    =   0          xx_aqhstartdate1    =   0
200          xx_aqhstartdate2    =   0          xx_aqhstartdate2    =   0
201          xx_aqhperiod        =   0. _d 0          xx_aqhperiod        =   0. _d 0
202          xx_aqh_file         = 'xx_aqh'          xx_aqh_file         = 'xx_aqh'
203            xx_aqh_remo_intercept =   0. _d 0
204            xx_aqh_remo_slope =   0. _d 0
205    c
206            xx_precipstartdate1 =   0
207            xx_precipstartdate2 =   0
208            xx_precipperiod     =   0. _d 0
209            xx_precip_file      = 'xx_precip'
210            xx_precip_remo_intercept =   0. _d 0
211            xx_precip_remo_slope =   0. _d 0
212    c
213            xx_swfluxstartdate1 =   0
214            xx_swfluxstartdate2 =   0
215            xx_swfluxperiod     =   0. _d 0
216            xx_swflux_file      = 'xx_swflux'
217            xx_swflux_remo_intercept =   0. _d 0
218            xx_swflux_remo_slope =   0. _d 0
219    c
220            xx_swdownstartdate1 =   0
221            xx_swdownstartdate2 =   0
222            xx_swdownperiod     =   0. _d 0
223            xx_swdown_file      = 'xx_swdown'
224            xx_swdown_remo_intercept =   0. _d 0
225            xx_swdown_remo_slope =   0. _d 0
226    c
227            xx_lwfluxstartdate1 =   0
228            xx_lwfluxstartdate2 =   0
229            xx_lwfluxperiod     =   0. _d 0
230            xx_lwflux_file      = 'xx_lwflux'
231            xx_lwflux_remo_intercept =   0. _d 0
232            xx_lwflux_remo_slope =   0. _d 0
233    c
234            xx_lwdownstartdate1 =   0
235            xx_lwdownstartdate2 =   0
236            xx_lwdownperiod     =   0. _d 0
237            xx_lwdown_file      = 'xx_lwdown'
238            xx_lwdown_remo_intercept =   0. _d 0
239            xx_lwdown_remo_slope =   0. _d 0
240    c
241            xx_evapstartdate1 =   0
242            xx_evapstartdate2 =   0
243            xx_evapperiod     =   0. _d 0
244            xx_evap_file      = 'xx_evap'
245            xx_evap_remo_intercept =   0. _d 0
246            xx_evap_remo_slope =   0. _d 0
247    c
248            xx_snowprecipstartdate1 =   0
249            xx_snowprecipstartdate2 =   0
250            xx_snowprecipperiod     =   0. _d 0
251            xx_snowprecip_file      = 'xx_snowprecip'
252            xx_snowprecip_remo_intercept =   0. _d 0
253            xx_snowprecip_remo_slope =   0. _d 0
254    c
255            xx_apressurestartdate1 =   0
256            xx_apressurestartdate2 =   0
257            xx_apressureperiod     =   0. _d 0
258            xx_apressure_file      = 'xx_apressure'
259            xx_apressure_remo_intercept =   0. _d 0
260            xx_apressure_remo_slope =   0. _d 0
261    c
262            xx_runoffstartdate1 =   0
263            xx_runoffstartdate2 =   0
264            xx_runoffperiod     =   0. _d 0
265            xx_runoff_file      = 'xx_runoff'
266            xx_runoff_remo_intercept =   0. _d 0
267            xx_runoff_remo_slope =   0. _d 0
268    c
269          xx_uwindstartdate1  =   0          xx_uwindstartdate1  =   0
270          xx_uwindstartdate2  =   0          xx_uwindstartdate2  =   0
271          xx_uwindperiod      =   0. _d 0          xx_uwindperiod      =   0. _d 0
272          xx_uwind_file       = 'xx_uwind'          xx_uwind_file       = 'xx_uwind'
273            xx_uwind_remo_intercept =   0. _d 0
274            xx_uwind_remo_slope =   0. _d 0
275    c
276          xx_vwindstartdate1  =   0          xx_vwindstartdate1  =   0
277          xx_vwindstartdate2  =   0          xx_vwindstartdate2  =   0
278          xx_vwindperiod      =   0. _d 0          xx_vwindperiod      =   0. _d 0
279          xx_vwind_file       = 'xx_vwind'          xx_vwind_file       = 'xx_vwind'
280            xx_vwind_remo_intercept =   0. _d 0
281            xx_vwind_remo_slope =   0. _d 0
282    c
283          xx_obcsnstartdate1  =   0          xx_obcsnstartdate1  =   0
284          xx_obcsnstartdate2  =   0          xx_obcsnstartdate2  =   0
285          xx_obcsnperiod      =   0. _d 0          xx_obcsnperiod      =   0. _d 0
286          xx_obcsn_file       = 'xx_obcsn'          xx_obcsn_file       = 'xx_obcsn'
287    c
288          xx_obcssstartdate1  =   0          xx_obcssstartdate1  =   0
289          xx_obcssstartdate2  =   0          xx_obcssstartdate2  =   0
290          xx_obcssperiod      =   0. _d 0          xx_obcssperiod      =   0. _d 0
291          xx_obcss_file       = 'xx_obcss'          xx_obcss_file       = 'xx_obcss'
292    c
293          xx_obcswstartdate1  =   0          xx_obcswstartdate1  =   0
294          xx_obcswstartdate2  =   0          xx_obcswstartdate2  =   0
295          xx_obcswperiod      =   0. _d 0          xx_obcswperiod      =   0. _d 0
296          xx_obcsw_file       = 'xx_obcsw'          xx_obcsw_file       = 'xx_obcsw'
297    c
298          xx_obcsestartdate1  =   0          xx_obcsestartdate1  =   0
299          xx_obcsestartdate2  =   0          xx_obcsestartdate2  =   0
300          xx_obcseperiod      =   0. _d 0          xx_obcseperiod      =   0. _d 0
301          xx_obcse_file       = 'xx_obcse'          xx_obcse_file       = 'xx_obcse'
302    c
303            xx_sststartdate1    =   0
304            xx_sststartdate2    =   0
305            xx_sstperiod        =   0. _d 0
306            xx_sst_file         = 'xx_sst'
307    c
308            xx_sssstartdate1    =   0
309            xx_sssstartdate2    =   0
310            xx_sssperiod        =   0. _d 0
311            xx_sss_file         = 'xx_sss'
312    c
313          xx_diffkr_file      = 'xx_diffkr'          xx_diffkr_file      = 'xx_diffkr'
314          xx_kapgm_file       = 'xx_kapgm'          xx_kapgm_file       = 'xx_kapgm'
315            xx_kapredi_file       = 'xx_kapredi'
316          xx_tr1_file         = 'xx_ptr'          xx_tr1_file         = 'xx_ptr'
317          xx_sst_file         = 'xx_sst'          xx_depth_file       = 'xx_depth'
         xx_sss_file         = 'xx_sss'  
         xx_hfacc_file       = 'xx_hfacc'  
318          xx_efluxy_file      = 'xx_efluxy'          xx_efluxy_file      = 'xx_efluxy'
319          xx_efluxp_file      = 'xx_efluxp'          xx_efluxp_file      = 'xx_efluxp'
320          xx_bottomdrag_file  = 'xx_bottomdrag'          xx_bottomdrag_file  = 'xx_bottomdrag'
# Line 197  c--     Set default values. Line 323  c--     Set default values.
323          xx_uvel_file        = 'xx_uvel'          xx_uvel_file        = 'xx_uvel'
324          xx_vvel_file        = 'xx_vvel'          xx_vvel_file        = 'xx_vvel'
325          xx_etan_file        = 'xx_etan'          xx_etan_file        = 'xx_etan'
326            xx_siarea_file        = 'xx_siarea'
327            xx_siheff_file        = 'xx_siheff'
328            xx_sihsnow_file        = 'xx_sihsnow'
329    cHFLUXM_CONTROL
330            xx_hfluxm_file      = 'xx_hfluxm'
331    cHFLUXM_CONTROL
332    
333  #ifdef ALLOW_TANGENTLINEAR_RUN  #ifdef ALLOW_TANGENTLINEAR_RUN
334          yadprefix           = 'g_'          yadprefix           = 'g_'
# Line 214  c--     Set default values. Line 346  c--     Set default values.
346          maskname            = ' '          maskname            = ' '
347          metaname            = ' '          metaname            = ' '
348    
349  c--     Check versions.  c--     Next, read the cost data file.
350            WRITE(msgBuf,'(A)') 'CTRL_READPARMS: opening data.ctrl'
351          open(unit=scrunit1,status='scratch')          CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
352         &                    SQUEEZE_RIGHT , 1)
353    
354            CALL OPEN_COPY_DATA_FILE(
355         I                          'data.ctrl', 'CTRL_READPARMS',
356         O                          iUnit,
357         I                          myThid )
358    
359            READ(unit = iUnit, nml = ctrl_nml)
360            READ(unit = iUnit, nml = ctrl_packnames)
361    
362            WRITE(msgBuf,'(A)')
363         &       'CTRL_READPARMS: finished reading data.ctrl'
364            CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
365         &                  SQUEEZE_RIGHT , 1)
366    
367  c--     Next, read the ecco data file.          CLOSE( iUnit )
         open(unit = modeldataunit,file = 'data.ctrl',  
      &       status = 'old', iostat = errio)  
         if ( errio .lt. 0 ) then  
           stop ' stopped in ctrl_readparms'  
         endif  
   
         do while ( .true. )  
           read(modeldataunit, fmt='(a)', end=1001) record  
           il = max(ilnblnk(record),1)  
           if ( record(1:1) .ne. commentcharacter )  
      &        write(unit=scrunit1, fmt='(a)') record(:il)  
         enddo  
  1001   continue  
         close( modeldataunit )  
   
         rewind( scrunit1 )  
         read(unit = scrunit1, nml = ctrl_nml)  
         read(unit = scrunit1, nml = ctrl_packnames)  
         close( scrunit1 )  
368    
369        _END_MASTER( myThid )        _END_MASTER( myThid )
370    

Legend:
Removed from v.1.14  
changed lines
  Added in v.1.29

  ViewVC Help
Powered by ViewVC 1.1.22