/[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.7 by heimbach, Thu Nov 11 06:28:33 2004 UTC revision 1.19 by heimbach, Wed Aug 31 00:03:30 2005 UTC
# Line 34  c     == global variables == Line 34  c     == global variables ==
34  #ifdef ALLOW_OBCS_CONTROL  #ifdef ALLOW_OBCS_CONTROL
35  # include "OBCS.h"  # include "OBCS.h"
36  #endif  #endif
 #ifdef ALLOW_ECCO_OPTIMIZATION  
 # include "optim.h"  
 #endif  
37    
38  c     == routine arguments ==  c     == routine arguments ==
39    
# Line 48  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 87  c--   Read the namelist input. Line 84  c--   Read the namelist input.
84       &  xx_atempstartdate1, xx_atempstartdate2, xx_atempperiod,       &  xx_atempstartdate1, xx_atempstartdate2, xx_atempperiod,
85       &  xx_aqh_file,       &  xx_aqh_file,
86       &  xx_aqhstartdate1, xx_aqhstartdate2, xx_aqhperiod,       &  xx_aqhstartdate1, xx_aqhstartdate2, xx_aqhperiod,
87         &  xx_precip_file,
88         &  xx_precipstartdate1, xx_precipstartdate2, xx_precipperiod,
89         &  xx_swflux_file,
90         &  xx_swfluxstartdate1, xx_swfluxstartdate2, xx_swfluxperiod,
91         &  xx_swdown_file,
92         &  xx_swdownstartdate1, xx_swdownstartdate2, xx_swdownperiod,
93       &  xx_uwind_file,       &  xx_uwind_file,
94       &  xx_uwindstartdate1, xx_uwindstartdate2, xx_uwindperiod,       &  xx_uwindstartdate1, xx_uwindstartdate2, xx_uwindperiod,
95       &  xx_vwind_file,       &  xx_vwind_file,
# Line 103  c--   Read the namelist input. Line 106  c--   Read the namelist input.
106       &  xx_kapgm_file,       &  xx_kapgm_file,
107       &  xx_tr1_file,       &  xx_tr1_file,
108       &  xx_sst_file,       &  xx_sst_file,
109         &  xx_sststartdate1, xx_sststartdate2, xx_sstperiod,
110       &  xx_sss_file,       &  xx_sss_file,
111         &  xx_sssstartdate1, xx_sssstartdate2, xx_sssperiod,
112       &  xx_hfacc_file,       &  xx_hfacc_file,
113       &  xx_efluxy_file,       &  xx_efluxy_file,
114       &  xx_efluxp_file,       &  xx_efluxp_file,
115       &  xx_bottomdrag_file,       &  xx_bottomdrag_file,
116       &  doInitXX       &  xx_edtaux_file,
117         &  xx_edtauy_file,
118         &  xx_uvel_file,
119         &  xx_vvel_file,
120         &  xx_etan_file,
121         &  doInitXX,
122         &  doPackDiag,
123         &  doZscaleUnpack,
124         &  doZscalePack
125    
126    
127        namelist /ctrl_packnames/        namelist /ctrl_packnames/
128       &  yadmark, yctrlid, yctrlposunpack, yctrlpospack,       &  yadmark, yctrlid, yctrlposunpack, yctrlpospack,
# Line 117  c--   Read the namelist input. Line 131  c--   Read the namelist input.
131        _BEGIN_MASTER( myThid )        _BEGIN_MASTER( myThid )
132    
133  c--     Set default values.  c--     Set default values.
134          xx_theta_file      = ' '          doInitXX            = .TRUE.
135          xx_salt_file       = ' '  #ifdef ALLOW_ADMTLM
136            doAdmTlm            = .TRUE.
137    #else
138            doAdmTlm            = .FALSE.
139    #endif
140            doPackDiag          = .FALSE.
141            doZscaleUnpack      = .FALSE.
142            doZscalePack        = .FALSE.
143    
144            xx_theta_file      = 'xx_theta'
145            xx_salt_file       = 'xx_salt'
146          xx_hfluxstartdate1 =   0          xx_hfluxstartdate1 =   0
147          xx_hfluxstartdate2 =   0          xx_hfluxstartdate2 =   0
148          xx_hfluxperiod     =   0. _d 0          xx_hfluxperiod     =   0. _d 0
149          xx_hflux_file      = ' '          xx_hflux_file      = 'xx_hfl'
150          xx_sfluxstartdate1 =   0          xx_sfluxstartdate1 =   0
151          xx_sfluxstartdate2 =   0          xx_sfluxstartdate2 =   0
152          xx_sfluxperiod     =   0. _d 0          xx_sfluxperiod     =   0. _d 0
153          xx_sflux_file      = ' '          xx_sflux_file      = 'xx_sfl'
154          xx_tauustartdate1  =   0          xx_tauustartdate1  =   0
155          xx_tauustartdate2  =   0          xx_tauustartdate2  =   0
156          xx_tauuperiod      =   0. _d 0          xx_tauuperiod      =   0. _d 0
157          xx_tauu_file       = ' '          xx_tauu_file       = 'xx_tauu'
158          xx_tauvstartdate1  =   0          xx_tauvstartdate1  =   0
159          xx_tauvstartdate2  =   0          xx_tauvstartdate2  =   0
160          xx_tauvperiod      =   0. _d 0          xx_tauvperiod      =   0. _d 0
161          xx_tauv_file       = ' '          xx_tauv_file       = 'xx_tauv'
162          xx_atempstartdate1  =   0          xx_atempstartdate1  =   0
163          xx_atempstartdate2  =   0          xx_atempstartdate2  =   0
164          xx_atempperiod      =   0. _d 0          xx_atempperiod      =   0. _d 0
165          xx_atemp_file       = ' '          xx_atemp_file       = 'xx_atemp'
166          xx_aqhstartdate1    =   0          xx_aqhstartdate1    =   0
167          xx_aqhstartdate2    =   0          xx_aqhstartdate2    =   0
168          xx_aqhperiod        =   0. _d 0          xx_aqhperiod        =   0. _d 0
169          xx_aqh_file         = ' '          xx_aqh_file         = 'xx_aqh'
170            xx_precipstartdate1 =   0
171            xx_precipstartdate2 =   0
172            xx_precipperiod     =   0. _d 0
173            xx_precip_file      = 'xx_precip'
174            xx_swfluxstartdate1 =   0
175            xx_swfluxstartdate2 =   0
176            xx_swfluxperiod     =   0. _d 0
177            xx_swflux_file      = 'xx_swflux'
178            xx_swdownstartdate1 =   0
179            xx_swdownstartdate2 =   0
180            xx_swdownperiod     =   0. _d 0
181            xx_swdown_file      = 'xx_swdown'
182          xx_uwindstartdate1  =   0          xx_uwindstartdate1  =   0
183          xx_uwindstartdate2  =   0          xx_uwindstartdate2  =   0
184          xx_uwindperiod      =   0. _d 0          xx_uwindperiod      =   0. _d 0
185          xx_uwind_file       = ' '          xx_uwind_file       = 'xx_uwind'
186          xx_vwindstartdate1  =   0          xx_vwindstartdate1  =   0
187          xx_vwindstartdate2  =   0          xx_vwindstartdate2  =   0
188          xx_vwindperiod      =   0. _d 0          xx_vwindperiod      =   0. _d 0
189          xx_vwind_file       = ' '          xx_vwind_file       = 'xx_vwind'
190          xx_obcsnstartdate1  =   0          xx_obcsnstartdate1  =   0
191          xx_obcsnstartdate2  =   0          xx_obcsnstartdate2  =   0
192          xx_obcsnperiod      =   0. _d 0          xx_obcsnperiod      =   0. _d 0
193          xx_obcsn_file       = ' '          xx_obcsn_file       = 'xx_obcsn'
194          xx_obcssstartdate1  =   0          xx_obcssstartdate1  =   0
195          xx_obcssstartdate2  =   0          xx_obcssstartdate2  =   0
196          xx_obcssperiod      =   0. _d 0          xx_obcssperiod      =   0. _d 0
197          xx_obcss_file       = ' '          xx_obcss_file       = 'xx_obcss'
198          xx_obcswstartdate1  =   0          xx_obcswstartdate1  =   0
199          xx_obcswstartdate2  =   0          xx_obcswstartdate2  =   0
200          xx_obcswperiod      =   0. _d 0          xx_obcswperiod      =   0. _d 0
201          xx_obcsw_file       = ' '          xx_obcsw_file       = 'xx_obcsw'
202          xx_obcsestartdate1  =   0          xx_obcsestartdate1  =   0
203          xx_obcsestartdate2  =   0          xx_obcsestartdate2  =   0
204          xx_obcseperiod      =   0. _d 0          xx_obcseperiod      =   0. _d 0
205          xx_obcse_file       = ' '          xx_obcse_file       = 'xx_obcse'
206          xx_diffkr_file      = ' '          xx_diffkr_file      = 'xx_diffkr'
207          xx_kapgm_file       = ' '          xx_kapgm_file       = 'xx_kapgm'
208          xx_tr1_file         = ' '          xx_tr1_file         = 'xx_ptr'
209          xx_sst_file         = ' '          xx_sststartdate1    =   0
210          xx_sss_file         = ' '          xx_sststartdate2    =   0
211          xx_hfacc_file       = ' '          xx_sstperiod        =   0. _d 0
212          xx_efluxy_file      = ' '          xx_sst_file         = 'xx_sst'
213          xx_efluxp_file      = ' '          xx_sssstartdate1    =   0
214          xx_bottomdrag_file  = ' '          xx_sssstartdate2    =   0
215            xx_sssperiod        =   0. _d 0
216          doInitXX            = .TRUE.          xx_sss_file         = 'xx_sss'
217            xx_hfacc_file       = 'xx_hfacc'
218            xx_efluxy_file      = 'xx_efluxy'
219            xx_efluxp_file      = 'xx_efluxp'
220            xx_bottomdrag_file  = 'xx_bottomdrag'
221            xx_edtaux_file      = 'xx_edtaux'
222            xx_edtauy_file      = 'xx_edtauy'
223            xx_uvel_file        = 'xx_uvel'
224            xx_vvel_file        = 'xx_vvel'
225            xx_etan_file        = 'xx_etan'
226    
227  #ifdef ALLOW_TANGENTLINEAR_RUN  #ifdef ALLOW_TANGENTLINEAR_RUN
228          yadprefix           = 'g_'          yadprefix           = 'g_'
# Line 195  c--     Set default values. Line 240  c--     Set default values.
240          maskname            = ' '          maskname            = ' '
241          metaname            = ' '          metaname            = ' '
242    
243  c--     Check versions.  c--     Next, read the cost data file.
244            WRITE(msgBuf,'(A)') 'CTRL_READPARMS: opening data.ctrl'
245          open(unit=scrunit1,status='scratch')          CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
246         &                    SQUEEZE_RIGHT , 1)
247    
248            CALL OPEN_COPY_DATA_FILE(
249         I                          'data.ctrl', 'CTRL_READPARMS',
250         O                          iUnit,
251         I                          myThid )
252    
253            READ(unit = iUnit, nml = ctrl_nml)
254            READ(unit = iUnit, nml = ctrl_packnames)
255    
256            WRITE(msgBuf,'(A)')
257         &       'CTRL_READPARMS: finished reading data.ctrl'
258            CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
259         &                  SQUEEZE_RIGHT , 1)
260    
261  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 )  
262    
263        _END_MASTER( myThid )        _END_MASTER( myThid )
264    

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.19

  ViewVC Help
Powered by ViewVC 1.1.22