/[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.1 by heimbach, Thu Jun 19 15:18:48 2003 UTC revision 1.2 by heimbach, Mon Jun 23 22:29:05 2003 UTC
# Line 0  Line 1 
1    C $Header$
2    
3    #include "CTRL_CPPOPTIONS.h"
4    
5    
6          subroutine ctrl_readparms( mythid )
7    
8    c     ==================================================================
9    c     SUBROUTINE ctrl_readparms
10    c     ==================================================================
11    c
12    c     o read ctrl parameters
13    c       split from ctrl_init
14    c
15    c     started: heimbach@mit.edu 12-Jun-2003
16    c
17    c     ==================================================================
18    c     SUBROUTINE ctrl_readparms
19    c     ==================================================================
20    
21          implicit none
22    
23    c     == global variables ==
24    
25    #include "EEPARAMS.h"
26    #include "SIZE.h"
27    #include "PARAMS.h"
28    #include "GRID.h"
29    #include "ctrl.h"
30    
31    #ifdef ALLOW_OBCS_CONTROL
32    # include "OBCS.h"
33    #endif
34    #ifdef ALLOW_ECCO_OPTIMIZATION
35    # include "optim.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    
109          namelist /ctrl_packnames/
110         &  yadmark, yctrlid,
111         &  ctrlname, costname, scalname, maskname, metaname
112    
113          _BEGIN_MASTER( myThid )
114    
115    c--     Set default values.
116            xx_theta_file      = ' '
117            xx_salt_file       = ' '
118            xx_hfluxstartdate1 =   0
119            xx_hfluxstartdate2 =   0
120            xx_hfluxperiod     =   0. _d 0
121            xx_hflux_file      = ' '
122            xx_sfluxstartdate1 =   0
123            xx_sfluxstartdate2 =   0
124            xx_sfluxperiod     =   0. _d 0
125            xx_sflux_file      = ' '
126            xx_tauustartdate1  =   0
127            xx_tauustartdate2  =   0
128            xx_tauuperiod      =   0. _d 0
129            xx_tauu_file       = ' '
130            xx_tauvstartdate1  =   0
131            xx_tauvstartdate2  =   0
132            xx_tauvperiod      =   0. _d 0
133            xx_tauv_file       = ' '
134            xx_atempstartdate1  =   0
135            xx_atempstartdate2  =   0
136            xx_atempperiod      =   0. _d 0
137            xx_atemp_file       = ' '
138            xx_aqhstartdate1    =   0
139            xx_aqhstartdate2    =   0
140            xx_aqhperiod        =   0. _d 0
141            xx_aqh_file         = ' '
142            xx_uwindstartdate1  =   0
143            xx_uwindstartdate2  =   0
144            xx_uwindperiod      =   0. _d 0
145            xx_uwind_file       = ' '
146            xx_vwindstartdate1  =   0
147            xx_vwindstartdate2  =   0
148            xx_vwindperiod      =   0. _d 0
149            xx_vwind_file       = ' '
150            xx_obcsnstartdate1  =   0
151            xx_obcsnstartdate2  =   0
152            xx_obcsnperiod      =   0. _d 0
153            xx_obcsn_file       = ' '
154            xx_obcssstartdate1  =   0
155            xx_obcssstartdate2  =   0
156            xx_obcssperiod      =   0. _d 0
157            xx_obcss_file       = ' '
158            xx_obcswstartdate1  =   0
159            xx_obcswstartdate2  =   0
160            xx_obcswperiod      =   0. _d 0
161            xx_obcsw_file       = ' '
162            xx_obcsestartdate1  =   0
163            xx_obcsestartdate2  =   0
164            xx_obcseperiod      =   0. _d 0
165            xx_obcse_file       = ' '
166            xx_diffkr_file      = ' '
167            xx_kapgm_file       = ' '
168            xx_tr1_file         = ' '
169            xx_sst_file         = ' '
170            xx_sss_file         = ' '
171            xx_hfacc_file       = ' '
172            xx_efluxy_file      = ' '
173            xx_efluxp_file      = ' '
174            xx_bottomdrag_file  = ' '
175    
176    #ifndef ALLOW_TANGENTLINEAR_RUN
177            yadmark             = 'ad'
178    #else
179            yadmark             = 'g_'
180    #endif
181            yctrlid             = 'MIT_CE_000'
182            ctrlname            = ' '
183            costname            = ' '
184            scalname            = ' '
185            maskname            = ' '
186            metaname            = ' '
187    
188    c--     Check versions.
189    
190            open(unit=scrunit1,status='scratch')
191    
192    c--     Next, read the ecco data file.
193            open(unit = modeldataunit,file = 'data.ctrl',
194         &       status = 'old', iostat = errio)
195            if ( errio .lt. 0 ) then
196              stop ' stopped in ctrl_readparms'
197            endif
198    
199            do while ( .true. )
200              read(modeldataunit, fmt='(a)', end=1001) record
201              il = max(ilnblnk(record),1)
202              if ( record(1:1) .ne. commentcharacter )
203         &        write(unit=scrunit1, fmt='(a)') record(:il)
204            enddo
205     1001   continue
206            close( modeldataunit )
207    
208            rewind( scrunit1 )
209            read(unit = scrunit1, nml = ctrl_nml)
210            read(unit = scrunit1, nml = ctrl_packnames)
211            close( scrunit1 )
212    
213          _END_MASTER( myThid )
214    
215          _BARRIER
216    
217          return
218          end
219    

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

  ViewVC Help
Powered by ViewVC 1.1.22