/[MITgcm]/MITgcm/pkg/ecco/ecco_readparms.F
ViewVC logotype

Annotation of /MITgcm/pkg/ecco/ecco_readparms.F

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


Revision 1.25 - (hide annotations) (download)
Fri Jul 7 22:53:36 2006 UTC (17 years, 11 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint58m_post, checkpoint58o_post, checkpoint58p_post, checkpoint58n_post, checkpoint58l_post
Changes since 1.24: +8 -3 lines
o cost_averagesflags now returns year indices in addition to day, month
o sflux balance is performed on annual basis
  (sflxumm, sfluxmm2, bal_sfluxmm)
o for SSH anomaly, separate more cleanly contrib from T/P, ERS, GFO,
  including separate counting and multipliers

1 heimbach 1.25 C $Header: /u/gcmpack/MITgcm/pkg/ecco/ecco_readparms.F,v 1.24 2006/05/12 13:35:37 heimbach Exp $
2 heimbach 1.1
3 heimbach 1.7 #include "COST_CPPOPTIONS.h"
4 heimbach 1.1
5 heimbach 1.4 subroutine ecco_readparms( mythid )
6 heimbach 1.1
7     c ==================================================================
8     c SUBROUTINE ecco_readparms
9     c ==================================================================
10     c
11 heimbach 1.7 c o This routine initialises the package cost.
12     c started: Ralf Giering 18-Jan-2001
13 heimbach 1.1 c
14     c ==================================================================
15     c SUBROUTINE ecco_readparms
16     c ==================================================================
17    
18     implicit none
19    
20     c == global variables ==
21    
22 heimbach 1.7 #include "EEPARAMS.h"
23 heimbach 1.1 #include "SIZE.h"
24 heimbach 1.7 #include "GRID.h"
25 heimbach 1.1 #include "PARAMS.h"
26 heimbach 1.7
27     #include "ecco_cost.h"
28 heimbach 1.1
29     c == routine arguments ==
30    
31     integer mythid
32    
33     c == local variables ==
34 heimbach 1.9 C msgBuf - Informational/error meesage buffer
35     C iUnit - Work variable for IO unit number
36     CHARACTER*(MAX_LEN_MBUF) msgBuf
37 heimbach 1.22 INTEGER iUnit, num_file, num_var
38 heimbach 1.1
39 heimbach 1.7 c == end of interface ==
40 heimbach 1.1
41 heimbach 1.7 c-- Read the namelist input.
42     namelist /ecco_cost_nml/
43     & data_errfile,
44     & tbarfile, sbarfile, psbarfile,
45     & ubarfile, vbarfile, wbarfile,
46     & tauxbarfile, tauybarfile,
47     & hfluxbarfile, sfluxbarfile,
48     & using_topex,
49     & topexstartdate1, topexstartdate2,
50     & topexperiod, topexfile, topexmeanfile,
51 heimbach 1.21 & topexintercept, topexslope,
52 heimbach 1.7 & using_ers,
53     & ersstartdate1, ersstartdate2,
54     & ersperiod, ersfile,
55 heimbach 1.21 & ersintercept, ersslope,
56 heimbach 1.19 & using_gfo,
57     & gfostartdate1, gfostartdate2,
58     & gfoperiod, gfofile,
59 heimbach 1.21 & gfointercept, gfoslope,
60 heimbach 1.7 & scatstartdate1, scatstartdate2,
61     & scatperiod, scatxdatfile, scatydatfile,
62     & scatx_errfile, scaty_errfile,
63     & ssh_errfile,
64     & tmistartdate1, tmistartdate2, tmidatfile,
65     & sststartdate1, sststartdate2, sstdatfile,
66     & sssstartdate1, sssstartdate2, sssdatfile,
67     & tdatfile, sdatfile,
68     & ctdtfile, ctdsfile,
69     & ctdtclimfile, ctdsclimfile,
70     & xbtfile,
71     & argotstartdate1, argotstartdate2, argotfile,
72     & argosstartdate1, argosstartdate2, argosfile,
73     & udriftfile, vdriftfile,
74     & udrifterrfile, vdrifterrfile,
75     & curmtrufile,curmtrvfile,
76     & salterrfile, temperrfile, velerrfile,
77 heimbach 1.15 & salt0errfile, temp0errfile, vel0errfile,
78 heimbach 1.7 & hflux_errfile, sflux_errfile,
79     & tauu_errfile, tauv_errfile,
80 heimbach 1.11 & atemp_errfile, aqh_errfile,
81 heimbach 1.13 & precip_errfile, swflux_errfile, swdown_errfile,
82 heimbach 1.7 & uwind_errfile, vwind_errfile,
83     & geoid_errfile, geoid_covariancefile,
84     & mult_hflux, mult_sflux, mult_tauu, mult_tauv,
85 heimbach 1.20 & mult_hfluxmm, mult_sfluxmm,
86 heimbach 1.11 & mult_atemp, mult_aqh,
87 heimbach 1.13 & mult_precip, mult_swflux, mult_swdown,
88 heimbach 1.10 & mult_uwind, mult_vwind,
89 heimbach 1.25 & mult_hmean, mult_h,
90     & mult_tp, mult_ers, mult_gfo,
91     & mult_temp, mult_salt,
92 heimbach 1.7 & mult_tmi, mult_sst, mult_sss,
93     & mult_ctdt, mult_ctds,
94     & mult_ctdtclim, mult_ctdsclim,
95     & mult_xbt, mult_drift,
96     & mult_argot, mult_argos,
97     & mult_scatx, mult_scaty,
98     & mult_sdrift, mult_tdrift, mult_wdrift,
99     & mult_temp0, mult_salt0,
100     & mult_obcsn, mult_obcss,
101     & mult_obcsw, mult_obcse, mult_obcsvol,
102     & mult_curmtr, mult_ageos,
103     & mult_kapgm, mult_diffkr,
104 heimbach 1.18 & mult_smooth_ic, mult_smooth_bc,
105 heimbach 1.10 & whflux0, wsflux0, wtau0,
106 heimbach 1.12 & watemp0, waqh0,
107 heimbach 1.13 & wprecip0, wswflux0, wswdown0, wwind0,
108 heimbach 1.24 & wdiffkr0, wkapgm0, wedtau0,
109 heimbach 1.12 & wmean_hflux, wmean_sflux, wmean_tau,
110 heimbach 1.13 & wmean_atemp, wmean_aqh, wmean_precip,
111     & wmean_swflux, wmean_swdown, wmean_wind,
112 heimbach 1.7 & cost_iprec, cost_yftype
113 heimbach 1.1
114     _BEGIN_MASTER( myThid )
115    
116 heimbach 1.7 c-- Set default values.
117     data_errfile = ' '
118     tbarfile = 'tbar'
119     sbarfile = 'sbar'
120     psbarfile = 'psbar'
121     ubarfile = 'ubar'
122     vbarfile = 'vbar'
123     wbarfile = 'wbar'
124     tauxbarfile = 'tauxbar'
125     tauybarfile = 'tauybar'
126     hfluxbarfile = 'hfluxbar'
127     sfluxbarfile = 'sfluxbar'
128     using_topex = .false.
129     topexstartdate1 = 0
130     topexstartdate2 = 0
131     topexperiod = 0. _d 0
132 heimbach 1.21 topexintercept = 0. _d 0
133     topexslope = 0. _d 0
134 heimbach 1.7 topexfile = ' '
135     topexmeanfile = ' '
136     using_ers = .false.
137     ersstartdate1 = 0
138     ersstartdate2 = 0
139     ersperiod = 0. _d 0
140 heimbach 1.21 ersintercept = 0. _d 0
141     ersslope = 0. _d 0
142 heimbach 1.7 ersfile = ' '
143 heimbach 1.19 using_gfo = .false.
144     gfostartdate1 = 0
145     gfostartdate2 = 0
146     gfoperiod = 0. _d 0
147 heimbach 1.21 gfointercept = 0. _d 0
148     gfoslope = 0. _d 0
149 heimbach 1.19 gfofile = ' '
150 heimbach 1.7 scatstartdate1 = 0
151     scatstartdate2 = 0
152     scatperiod = 0. _d 0
153     scatxdatfile = ' '
154     scatydatfile = ' '
155     ssh_errfile = ' '
156     scatx_errfile = ' '
157     scaty_errfile = ' '
158     tmistartdate1 = 0
159     tmistartdate2 = 0
160     tmidatfile = ' '
161     sststartdate1 = 0
162     sststartdate2 = 0
163     sstdatfile = ' '
164     sssstartdate1 = 0
165     sssstartdate2 = 0
166     sssdatfile = ' '
167     tdatfile = ' '
168     sdatfile = ' '
169     ctdtfile = ' '
170     ctdsfile = ' '
171     ctdtclimfile = ' '
172     ctdsclimfile = ' '
173     curmtrufile = ' '
174     curmtrvfile = ' '
175     xbtfile = ' '
176     argotstartdate1 = 0
177     argotstartdate2 = 0
178     argotfile = ' '
179     argosstartdate1 = 0
180     argosstartdate2 = 0
181     argosfile = ' '
182     udriftfile = ' '
183     vdriftfile = ' '
184     udrifterrfile = ' '
185     vdrifterrfile = ' '
186     salterrfile = ' '
187     temperrfile = ' '
188     velerrfile = ' '
189 heimbach 1.16 salt0errfile = ' '
190     temp0errfile = ' '
191     vel0errfile = ' '
192 heimbach 1.7 hflux_errfile = ' '
193     sflux_errfile = ' '
194     tauu_errfile = ' '
195     tauv_errfile = ' '
196     atemp_errfile = ' '
197     aqh_errfile = ' '
198 heimbach 1.10 precip_errfile = ' '
199 heimbach 1.11 swflux_errfile = ' '
200 heimbach 1.13 swdown_errfile = ' '
201 heimbach 1.7 uwind_errfile = ' '
202     vwind_errfile = ' '
203     geoid_errfile = ' '
204     geoid_covariancefile = ' '
205 heimbach 1.22
206 heimbach 1.7 mult_hflux = 0. _d 0
207     mult_sflux = 0. _d 0
208 heimbach 1.20 mult_hfluxmm = 0. _d 0
209     mult_sfluxmm = 0. _d 0
210 heimbach 1.7 mult_tauu = 0. _d 0
211     mult_tauv = 0. _d 0
212     mult_atemp = 0. _d 0
213     mult_aqh = 0. _d 0
214 heimbach 1.10 mult_precip = 0. _d 0
215 heimbach 1.11 mult_swflux = 0. _d 0
216 heimbach 1.13 mult_swdown = 0. _d 0
217 heimbach 1.7 mult_uwind = 0. _d 0
218     mult_vwind = 0. _d 0
219     mult_hmean = 0. _d 0
220 heimbach 1.25 mult_h = 1. _d 0
221     mult_tp = 0. _d 0
222     mult_ers = 0. _d 0
223     mult_gfo = 0. _d 0
224 heimbach 1.7 mult_temp = 0. _d 0
225     mult_salt = 0. _d 0
226     mult_temp0 = 0. _d 0
227     mult_salt0 = 0. _d 0
228     mult_tmi = 0. _d 0
229     mult_sst = 0. _d 0
230     mult_sss = 0. _d 0
231     mult_ctdt = 0. _d 0
232     mult_ctds = 0. _d 0
233     mult_ctdtclim = 0. _d 0
234     mult_ctdsclim = 0. _d 0
235     mult_xbt = 0. _d 0
236     mult_argot = 0. _d 0
237     mult_argos = 0. _d 0
238     mult_drift = 0. _d 0
239     mult_tdrift = 0. _d 0
240     mult_sdrift = 0. _d 0
241     mult_wdrift = 0. _d 0
242     mult_scatx = 0. _d 0
243     mult_scaty = 0. _d 0
244     mult_obcsn = 0. _d 0
245     mult_obcss = 0. _d 0
246     mult_obcsw = 0. _d 0
247     mult_obcse = 0. _d 0
248     mult_obcsvol = 0. _d 0
249     mult_ageos = 0. _d 0
250     mult_curmtr = 0. _d 0
251     mult_kapgm = 0. _d 0
252     mult_diffkr = 0. _d 0
253 heimbach 1.18 mult_smooth_ic = 0. _d 0
254     mult_smooth_bc = 0. _d 0
255 heimbach 1.10 watemp0 = 0. _d 0
256     waqh0 = 0. _d 0
257     wprecip0 = 0. _d 0
258 heimbach 1.11 wswflux0 = 0. _d 0
259 heimbach 1.13 wswdown0 = 0. _d 0
260 heimbach 1.10 wwind0 = 0. _d 0
261 heimbach 1.24 wdiffkr0 = 1. _d 0
262     wkapgm0 = 1. _d 0
263     wedtau0 = 1. _d 0
264 heimbach 1.10 whflux0 = 0. _d 0
265     wsflux0 = 0. _d 0
266     wtau0 = 0. _d 0
267 heimbach 1.12 wmean_atemp = 0. _d 0
268     wmean_aqh = 0. _d 0
269     wmean_precip = 0. _d 0
270     wmean_swflux = 0. _d 0
271 heimbach 1.13 wmean_swdown = 0. _d 0
272 heimbach 1.12 wmean_wind = 0. _d 0
273     wmean_hflux = 0. _d 0
274     wmean_sflux = 0. _d 0
275     wmean_tau = 0. _d 0
276 heimbach 1.7
277 heimbach 1.9 c-- Next, read the cost data file.
278     WRITE(msgBuf,'(A)') 'ECCO_READPARMS: opening data.ecco'
279     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
280     & SQUEEZE_RIGHT , 1)
281    
282     CALL OPEN_COPY_DATA_FILE(
283     I 'data.ecco', 'ECCO_READPARMS',
284     O iUnit,
285     I myThid )
286    
287     READ( iUnit, nml = ecco_cost_nml )
288    
289     WRITE(msgBuf,'(A)') 'ECCO_READPARMS: finished reading data.ecco'
290     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
291     & SQUEEZE_RIGHT , 1)
292 heimbach 1.7
293 heimbach 1.9 CLOSE( iUnit )
294 heimbach 1.1
295 heimbach 1.8 #ifdef ALLOW_CAL
296     c-- Get the complete dates of the ...
297     c-- ... SST data.
298     call cal_FullDate( sststartdate1, sststartdate2,
299     & sststartdate, mythid )
300     c-- ... TMI data.
301     call cal_FullDate( tmistartdate1, tmistartdate2,
302     & tmistartdate, mythid )
303     c-- ... SSS data.
304     call cal_FullDate( sssstartdate1, sssstartdate2,
305     & sssstartdate, mythid )
306     c-- ... T/P data.
307     call cal_FullDate( topexstartdate1, topexstartdate2,
308     & topexstartdate, mythid )
309     c-- ... ERS data.
310     call cal_FullDate( ersstartdate1, ersstartdate2,
311     & ersstartdate, mythid )
312 heimbach 1.19 c-- ... GFO data.
313     call cal_FullDate( gfostartdate1, gfostartdate2,
314     & gfostartdate, mythid )
315 heimbach 1.8 c-- ... SCAT data.
316     call cal_FullDate( scatstartdate1, scatstartdate2,
317     & scatxstartdate, mythid )
318     call cal_FullDate( scatstartdate1, scatstartdate2,
319     & scatystartdate, mythid )
320     #endif
321    
322 heimbach 1.1 _END_MASTER( mythid )
323    
324     _BARRIER
325    
326     end

  ViewVC Help
Powered by ViewVC 1.1.22