/[MITgcm]/MITgcm/pkg/ecco/ecco_cost.h
ViewVC logotype

Annotation of /MITgcm/pkg/ecco/ecco_cost.h

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


Revision 1.45 - (hide annotations) (download)
Tue Feb 16 02:08:16 2010 UTC (14 years, 3 months ago) by gforget
Branch: MAIN
Changes since 1.44: +5 -3 lines
File MIME type: text/plain
bug fixes

1 gforget 1.45 C $Header: /u/gcmpack/MITgcm/pkg/ecco/ecco_cost.h,v 1.44 2010/02/06 11:30:16 heimbach Exp $
2 jmc 1.30 C $Name: $
3 heimbach 1.1
4     c ==================================================================
5     c HEADER AVERAGES
6     c ==================================================================
7     c
8     c o Header for averaged temperature, salinity, and surface pressure
9     c fields and counters associated with the averaging.
10     c
11     c started: Christian Eckert eckert@mit.edu 30-Jun-1999
12 heimbach 1.2 c
13 heimbach 1.1 c ==================================================================
14     c HEADER AVERAGES
15     c ==================================================================
16    
17     c Averaging counters:
18     c ===================
19     c
20     c sum1day - counter for the daily averaging
21     c sum1mon - counter for the monthly averaging
22     c dayrec - number of averaged surface pressure records.
23     c monrec - number of averaged theta and salinity records.
24    
25 jmc 1.30 common /average_i/
26 heimbach 1.21 & sum1day,sum1mon,sum1year,
27     & dayrec,monrec,yearrec
28 heimbach 1.1 integer sum1day
29     integer sum1mon
30 heimbach 1.21 integer sum1year
31 heimbach 1.1 integer dayrec
32     integer monrec
33 heimbach 1.21 integer yearrec
34 heimbach 1.1
35 gforget 1.41 c Number of sshv4cost Cost terms:
36     c =============================
37     INTEGER NSSHV4COST
38     PARAMETER ( NSSHV4COST=5 )
39    
40 heimbach 1.36 c Number of days: (hard-coded to set up some vector dimensions
41 heimbach 1.35 c =============================
42 heimbach 1.37 c 17 years: 6210
43 heimbach 1.35 INTEGER maxNumDays
44 heimbach 1.37 PARAMETER ( maxNumDays = 6210 )
45 heimbach 1.35
46 heimbach 1.43 c Number of Generic Cost terms:
47     c =============================
48     INTEGER NGENCOST
49     PARAMETER ( NGENCOST=4 )
50    
51     #ifdef ALLOW_GENCOST_CONTRIBUTION
52     c objf_gencost - gencost user defined contribution
53     common /ecco_gencost_ctrl/
54     & xx_genbar_dummy
55     _RL xx_genbar_dummy(NGENCOST)
56    
57     common /ecco_gencost_r/
58     & objf_gencost, num_gencost, mult_gencost,
59     & gencost_barfld, gencost_modfld,
60     & gencost_spmin, gencost_spmax, gencost_spzero
61     _RL objf_gencost(nsx,nsy,NGENCOST)
62     _RL num_gencost(nsx,nsy,NGENCOST)
63     _RL mult_gencost(NGENCOST)
64     _RL gencost_spmin(NGENCOST)
65     _RL gencost_spmax(NGENCOST)
66     _RL gencost_spzero(NGENCOST)
67 gforget 1.45 _RL gencost_barfld(1-olx:snx+olx,1-oly:sny+oly,
68     & nsx,nsy,NGENCOST)
69     _RL gencost_modfld(1-olx:snx+olx,1-oly:sny+oly,
70     & nsx,nsy,NGENCOST)
71 heimbach 1.43
72     common /ecco_gencost_i/
73     & gencost_nrec
74     integer gencost_nrec(NGENCOST)
75    
76     common /ecco_gencost_c/
77     & gencost_errfile,
78     & gencost_datafile,
79     & gencost_barfile,
80 heimbach 1.44 & gencost_avgperiod,
81     & gencost_mask
82 heimbach 1.43 character*(MAX_LEN_FNAM) gencost_errfile(NGENCOST)
83     character*(MAX_LEN_FNAM) gencost_datafile(NGENCOST)
84     character*(MAX_LEN_FNAM) gencost_barfile(NGENCOST)
85     character*(5) gencost_avgperiod(NGENCOST)
86 heimbach 1.44 character*(1) gencost_mask(NGENCOST)
87 heimbach 1.43
88     #endif /* ALLOW_GENCOST_CONTRIBUTION */
89    
90 heimbach 1.1 c Averaged Fields:
91     c ================
92     c
93     c tbar - contains the averaged temperature field after the call
94     c to subroutine POST_MONTHLY. Before, it accumulates the
95     c intantaneous temperatures.
96     c sbar - contains the averaged salinity field after the call
97     c to subroutine POST_MONTHLY. Before, it accumulates the
98     c intantaneous salinities.
99     c psbar - contains the averaged surface pressure field after the call
100     c to subroutine POST_DAILY. Before, it accumulates the
101     c intantaneous surface pressure field.
102 jmc 1.30 c ubar - contains the averaged zonal velocity component for the
103 heimbach 1.1 c whole integration period. Before, it accumulates the
104     c intantaneous field.
105     c vbar - contains the averaged zonal velocity component for the
106     c whole integration period. Before, it accumulates the
107     c intantaneous field.
108     c tauxbar - contains the averaged zonal velocity component for the
109     c whole integration period. Before, it accumulates the
110     c intantaneous field.
111     c tauybar - contains the averaged zonal velocity component for the
112     c whole integration period. Before, it accumulates the
113     c intantaneous field.
114     c hfluxbar - contains the averaged zonal velocity component for the
115     c whole integration period. Before, it accumulates the
116     c intantaneous field.
117     c sfluxbar - contains the averaged zonal velocity component for the
118     c whole integration period. Before, it accumulates the
119     c intantaneous field.
120    
121 jmc 1.30 common /averages_r/
122 heimbach 1.1 & tbar,
123     & sbar,
124 heimbach 1.33 & sstbar,
125 heimbach 1.1 & psbar,
126 heimbach 1.28 & bpbar,
127 heimbach 1.1 & ubar,
128     & vbar,
129     & wbar,
130     & tauxbar,
131     & tauybar,
132     & hfluxbar,
133     & sfluxbar,
134 jmc 1.30 & Slmean,
135 heimbach 1.1 & Tlmean,
136     & wlmean,
137     & Sfmean,
138 jmc 1.30 & Tfmean,
139 heimbach 1.2 & sbar_gen,
140     & tbar_gen,
141     & wfmean
142 heimbach 1.1
143     #if (defined (ALLOW_THETA_COST_CONTRIBUTION) || \
144     defined (ALLOW_CTDT_COST_CONTRIBUTION) || \
145     defined (ALLOW_XBT_COST_CONTRIBUTION) || \
146     defined (ALLOW_DRIFT_COST_CONTRIBUTION) || \
147     defined (ALLOW_OBCS_COST_CONTRIBUTION))
148     _RL tbar (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
149     #else
150 heimbach 1.2 #ifdef ALLOW_SST_COST_CONTRIBUTION
151     _RL tbar (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
152     #else
153 heimbach 1.1 _RL tbar
154     #endif
155 heimbach 1.2 #endif
156     #ifdef GENERIC_BAR_MONTH
157     _RL tbar_gen (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
158     _RL sbar_gen (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
159     #else
160     _RL tbar_gen
161     _RL sbar_gen
162     #endif
163 heimbach 1.1
164 heimbach 1.38 #ifdef ALLOW_DAILYSST_COST_CONTRIBUTION
165     cph#ifdef ALLOW_SEAICE_COST_AREASST
166 heimbach 1.33 _RL sstbar (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
167     #else
168     _RL sstbar
169     #endif
170    
171 heimbach 1.1 #if (defined (ALLOW_SALT_COST_CONTRIBUTION) || \
172     defined (ALLOW_CTDS_COST_CONTRIBUTION) || \
173     defined (ALLOW_DRIFT_COST_CONTRIBUTION) || \
174     defined (ALLOW_OBCS_COST_CONTRIBUTION))
175     _RL sbar (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
176     #else
177 heimbach 1.2 #ifdef ALLOW_SSS_COST_CONTRIBUTION
178     _RL sbar (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
179     #else
180 heimbach 1.1 _RL sbar
181     #endif
182     #endif
183    
184     #ifdef ALLOW_SSH_COST_CONTRIBUTION
185     _RL psbar (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
186     #else
187     _RL psbar
188     #endif
189    
190 heimbach 1.28 #ifdef ALLOW_BP_COST_CONTRIBUTION
191     _RL bpbar (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
192     #else
193     _RL bpbar
194     #endif
195    
196 heimbach 1.1 #if (defined (ALLOW_DRIFTER_COST_CONTRIBUTION) || \
197 heimbach 1.2 defined (ALLOW_OBCS_COST_CONTRIBUTION))
198 heimbach 1.1 _RL ubar (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
199     _RL vbar (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
200     #else
201     _RL ubar
202     _RL vbar
203     #endif
204    
205     #ifdef ALLOW_DRIFTW_COST_CONTRIBUTION
206     _RL wbar (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
207     #else
208     _RL wbar
209     #endif
210    
211     #ifdef ALLOW_DRIFT_COST_CONTRIBUTION
212     _RL Tlmean(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
213     _RL Slmean(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
214     _RL Tfmean(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
215     _RL Sfmean(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
216     #else
217     _RL Tlmean
218     _RL Slmean
219     _RL Tfmean
220 jmc 1.30 _RL Sfmean
221 heimbach 1.1 #endif
222    
223     #ifdef ALLOW_DRIFTW_COST_CONTRIBUTION
224     _RL wlmean(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
225     _RL wfmean(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
226     #else
227     _RL wlmean
228     _RL wfmean
229     #endif
230    
231     #ifdef ALLOW_SCAT_COST_CONTRIBUTION
232     _RL tauxbar (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
233     _RL tauybar (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
234     #else
235 jmc 1.30 _RL tauxbar
236     _RL tauybar
237 heimbach 1.1 #endif
238    
239     #ifdef ALLOW_MEAN_HFLUX_COST_CONTRIBUTION
240     _RL hfluxbar (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
241 jmc 1.30 #else
242 heimbach 1.1 _RL hfluxbar
243     #endif
244    
245     #ifdef ALLOW_MEAN_SFLUX_COST_CONTRIBUTION
246 jmc 1.30 _RL sfluxbar (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
247     #else
248 heimbach 1.1 _RL sfluxbar
249     #endif
250    
251    
252 jmc 1.30 common /averages_c/
253 heimbach 1.1 & tbarfile,
254     & sbarfile,
255 heimbach 1.33 & sstbarfile,
256 heimbach 1.1 & psbarfile,
257 heimbach 1.28 & bpbarfile,
258 heimbach 1.1 & ubarfile,
259     & vbarfile,
260     & wbarfile,
261     & tauxbarfile,
262     & tauybarfile,
263     & hfluxbarfile,
264 heimbach 1.27 & sfluxbarfile,
265 heimbach 1.43 & hfluxmeanbarfile,
266     & sfluxmeanbarfile,
267 heimbach 1.27 & costTranspDataFile
268 heimbach 1.1 character*(MAX_LEN_FNAM) tbarfile
269     character*(MAX_LEN_FNAM) sbarfile
270 heimbach 1.33 character*(MAX_LEN_FNAM) sstbarfile
271 heimbach 1.1 character*(MAX_LEN_FNAM) psbarfile
272 heimbach 1.28 character*(MAX_LEN_FNAM) bpbarfile
273 heimbach 1.1 character*(MAX_LEN_FNAM) ubarfile
274     character*(MAX_LEN_FNAM) vbarfile
275     character*(MAX_LEN_FNAM) wbarfile
276     character*(MAX_LEN_FNAM) tauxbarfile
277     character*(MAX_LEN_FNAM) tauybarfile
278     character*(MAX_LEN_FNAM) hfluxbarfile
279     character*(MAX_LEN_FNAM) sfluxbarfile
280 heimbach 1.43 character*(MAX_LEN_FNAM) hfluxmeanbarfile
281     character*(MAX_LEN_FNAM) sfluxmeanbarfile
282 heimbach 1.27 character*(MAX_LEN_FNAM) costTranspDataFile
283    
284     #ifdef ALLOW_TRANSPORT_COST_CONTRIBUTION
285     common /averages_transp_r/
286     & transpbar
287     & , transpobs
288     & , wtransp
289 jmc 1.30 _RL transpbar(maxNumDays,nsx,nsy)
290 heimbach 1.27 _RL transpobs(maxNumDays)
291     _RL wtransp(maxNumDays)
292     #endif
293 heimbach 1.1
294     c file precision and field type
295    
296 jmc 1.30 common /prec_type_cost/
297 heimbach 1.1 & cost_iprec,
298     & cost_yftype
299    
300     integer cost_iprec
301     character*(2) cost_yftype
302    
303     c ==================================================================
304     c END OF HEADER AVERAGES
305     c ==================================================================
306    
307    
308    
309     c ==================================================================
310     c HEADER COST
311     c ==================================================================
312     c
313     c o Header for model-data comparison.
314     c
315     c The individual cost function contributions are multiplied by
316     c factors mult_"var" which allow to switch off these contributions
317     c without removing them in the adjoint code. This is useful for
318     c doing tests with the adjoint and perhaps useful in assimilation
319     c experiments where individual contributions are successively
320     c switched on. For future applications it would be better to place
321     c the initialisation of the multipliers somewhere else, for example
322     c in a namelist, which is read in at the start of the model.
323     c
324     c started: Christian Eckert eckert@mit.edu 24-Feb-1999
325     c
326     c changed: Christian Eckert eckert@mit.edu
327     c
328     c
329     c ==================================================================
330     c HEADER COST
331     c ==================================================================
332    
333    
334     c The cost function, its contributions, and multipliers:
335     c ======================================================
336     c
337     c fc - Final cost function.
338     c objf_hflux - Heat flux contribution.
339     c objf_sflux - Salt flux contribution.
340     c objf_tauu - Zonal wind stress contribution.
341     c objf_tauv - Meridional wind stress contribution.
342     c objf_hfluxm - time-mean Heat flux contribution.
343     c objf_sfluxm - time-mean Salt flux contribution.
344     c objf_tauum - time-mean Zonal wind stress contribution.
345     c objf_tauvm - time-mean Meridional wind stress contribution.
346     c objf_hfluxmm - Global time-mean Heat flux contribution.
347     c objf_sfluxmm - Global time-mean Salt flux contribution.
348     c objf_hmean - Mean sea surface height contribution.
349     c objf_h - Residual sea surface height contribution.
350 heimbach 1.21 c objf_tp - Residual sea surface height contribution from T/P
351     c objf_ers - Residual sea surface height contribution from T/P
352     c objf_gfo - Residual sea surface height contribution from T/P
353 heimbach 1.1 c objf_temp - Temperature contribution.
354     c objf_salt - Salinity contribution.
355     c objf_temp0 - Initial conditions Temperature contribution.
356     c objf_salt0 - Initial conditions Salinity contribution.
357 heimbach 1.2 c objf_sst - Sea surface temperature contribution.
358 heimbach 1.1 c objf_tmi - Sea surface temperature contribution.
359     c objf_sss - Sea surface salinity contribution.
360 jmc 1.30 c objf_ctdt - Temperature measurements from Woce CTD
361     c objf_ctds - Salinity measurements from Woce CTD
362 heimbach 1.2 c objf_ctdtclim - Temperature measurements from Woce CTD without timetag
363     c objf_ctdsclim - Salinity measurements from Woce CTD without timetag
364 heimbach 1.1 c objf_xbt - XBT temperature data
365     c objf_argot - ARGO temperature profiles
366     c objf_argos - ARGO salt profiles
367     c objf_scatxm - time-mean zonal SCAT contribution
368     c objf_scatym - time-mean meridional SCAT contribution
369     c objf_scatx - zonal SCAT contribution
370     c objf_scaty - meridional SCAT contribution
371     c objf_kapgm - kappa GM contribution
372 gforget 1.31 c objf_kapredi - kappa REDI contribution
373 heimbach 1.1 c objf_diffkr - diffusion contribution
374     c objf_theta_ini_fin - final vs. initial theta misfit
375     c objf_salt_ini_fin - final vs. initial salt misfit
376 gforget 1.32 c objf_eddytau - eddy streamfunction contribution
377 gforget 1.25 c objf_bottomdrag - bottom drag contribution
378 heimbach 1.1 c
379     c mult_"var" - multipliers for the individual cost
380     c function contributions.
381    
382     common /ecco_cost_objf/
383 mlosch 1.42 & objf_hflux, objf_hfluxm, objf_hfluxmm, objf_hfluxsmoo,
384     & objf_sflux, objf_sfluxm, objf_sfluxmm, objf_sfluxsmoo,
385     & objf_tauu, objf_tauum, objf_tauusmoo,
386     & objf_tauv, objf_tauvm, objf_tauvsmoo,
387     & objf_hmean,
388 heimbach 1.43 & objf_h, objf_tp, objf_ers, objf_gfo,
389 mlosch 1.42 & objf_sshv4cost,
390     & objf_temp, objf_salt,
391     & objf_temp0, objf_salt0,
392     & objf_temp0smoo, objf_salt0smoo,
393 heimbach 1.43 & objf_sst, objf_tmi, objf_sss,
394 mlosch 1.42 & objf_bp,
395     & objf_ctdt, objf_ctds,
396     & objf_ctdtclim, objf_ctdsclim,
397 heimbach 1.43 & objf_xbt, objf_argot, objf_argos,
398 mlosch 1.42 & objf_drift, objf_tdrift, objf_sdrift, objf_wdrift,
399     & objf_scatx, objf_scaty, objf_scatxm, objf_scatym,
400     & objf_atemp, objf_atempm, objf_atempsmoo,
401     & objf_aqh, objf_aqhm, objf_aqhsmoo,
402     & objf_precip, objf_precipm, objf_precipsmoo,
403     & objf_swflux, objf_swfluxm, objf_swfluxsmoo,
404     & objf_swdown, objf_swdownm, objf_swdownsmoo,
405     & objf_snowprecip, objf_snowprecipm, objf_snowprecipsmoo,
406     & objf_lwflux, objf_lwfluxm, objf_lwfluxsmoo,
407     & objf_lwdown, objf_lwdownm, objf_lwdownsmoo,
408     & objf_evap, objf_evapm, objf_evapsmoo,
409     & objf_apressure, objf_apressurem, objf_apressuresmoo,
410     & objf_runoff, objf_runoffm, objf_runoffsmoo,
411     & objf_uwind, objf_uwindm, objf_uwindsmoo,
412     & objf_vwind, objf_vwindm, objf_vwindsmoo,
413     & objf_obcsn, objf_obcss, objf_obcsw, objf_obcse,
414     & objf_obcsvol,
415     & objf_curmtr,
416     & objf_ageos,
417     & objf_kapgm,
418     & objf_kapredi,
419     & objf_diffkr,
420     & objf_theta_ini_fin, objf_salt_ini_fin,
421     & objf_eddytau,
422     & objf_bottomdrag,
423     & objf_transp
424 heimbach 1.43
425 heimbach 1.1 _RL objf_hflux (nsx,nsy)
426     _RL objf_hfluxm (nsx,nsy)
427 heimbach 1.29 _RL objf_hfluxmm
428 heimbach 1.13 _RL objf_hfluxsmoo (nsx,nsy)
429 heimbach 1.1 _RL objf_sflux (nsx,nsy)
430     _RL objf_sfluxm (nsx,nsy)
431 heimbach 1.24 _RL objf_sfluxmm
432 heimbach 1.13 _RL objf_sfluxsmoo (nsx,nsy)
433 heimbach 1.1 _RL objf_tauu (nsx,nsy)
434     _RL objf_tauum (nsx,nsy)
435 heimbach 1.13 _RL objf_tauusmoo (nsx,nsy)
436 heimbach 1.1 _RL objf_tauv (nsx,nsy)
437     _RL objf_tauvm (nsx,nsy)
438 heimbach 1.13 _RL objf_tauvsmoo (nsx,nsy)
439 heimbach 1.2 _RL objf_hmean
440 heimbach 1.1 _RL objf_h (nsx,nsy)
441 heimbach 1.21 _RL objf_tp (nsx,nsy)
442     _RL objf_ers (nsx,nsy)
443     _RL objf_gfo (nsx,nsy)
444 gforget 1.41 _RL objf_sshv4cost(NSSHV4COST,nsx,nsy)
445 heimbach 1.1 _RL objf_temp (nsx,nsy)
446     _RL objf_salt (nsx,nsy)
447     _RL objf_temp0(nsx,nsy)
448     _RL objf_salt0(nsx,nsy)
449 heimbach 1.14 _RL objf_temp0smoo(nsx,nsy)
450     _RL objf_salt0smoo(nsx,nsy)
451 heimbach 1.2 _RL objf_sst (nsx,nsy)
452 heimbach 1.1 _RL objf_tmi (nsx,nsy)
453 jmc 1.30 _RL objf_sss (nsx,nsy)
454     _RL objf_bp (nsx,nsy)
455 heimbach 1.1 _RL objf_ctdt (nsx,nsy)
456     _RL objf_ctds (nsx,nsy)
457     _RL objf_ctdtclim (nsx,nsy)
458     _RL objf_ctdsclim (nsx,nsy)
459     _RL objf_xbt (nsx,nsy)
460     _RL objf_argot(nsx,nsy)
461     _RL objf_argos(nsx,nsy)
462     _RL objf_drift(nsx,nsy)
463     _RL objf_tdrift(nsx,nsy)
464     _RL objf_sdrift(nsx,nsy)
465     _RL objf_wdrift(nsx,nsy)
466     _RL objf_scatx(nsx,nsy)
467     _RL objf_scaty(nsx,nsy)
468     _RL objf_scatxm(nsx,nsy)
469     _RL objf_scatym(nsx,nsy)
470     _RL objf_atemp(nsx,nsy)
471     _RL objf_aqh (nsx,nsy)
472 heimbach 1.6 _RL objf_precip(nsx,nsy)
473 heimbach 1.7 _RL objf_swflux(nsx,nsy)
474 heimbach 1.9 _RL objf_swdown(nsx,nsy)
475 heimbach 1.23 _RL objf_snowprecip(nsx,nsy)
476     _RL objf_lwflux(nsx,nsy)
477     _RL objf_lwdown(nsx,nsy)
478     _RL objf_evap(nsx,nsy)
479     _RL objf_apressure(nsx,nsy)
480     _RL objf_runoff(nsx,nsy)
481 heimbach 1.1 _RL objf_uwind(nsx,nsy)
482     _RL objf_vwind(nsx,nsy)
483 heimbach 1.8 _RL objf_atempm(nsx,nsy)
484     _RL objf_aqhm (nsx,nsy)
485     _RL objf_precipm(nsx,nsy)
486     _RL objf_swfluxm(nsx,nsy)
487 heimbach 1.9 _RL objf_swdownm(nsx,nsy)
488 heimbach 1.23 _RL objf_snowprecipm(nsx,nsy)
489     _RL objf_lwfluxm(nsx,nsy)
490     _RL objf_lwdownm(nsx,nsy)
491     _RL objf_evapm(nsx,nsy)
492     _RL objf_apressurem(nsx,nsy)
493     _RL objf_runoffm(nsx,nsy)
494 heimbach 1.8 _RL objf_uwindm(nsx,nsy)
495     _RL objf_vwindm(nsx,nsy)
496 heimbach 1.13 _RL objf_atempsmoo(nsx,nsy)
497     _RL objf_aqhsmoo (nsx,nsy)
498     _RL objf_precipsmoo(nsx,nsy)
499     _RL objf_swfluxsmoo(nsx,nsy)
500     _RL objf_swdownsmoo(nsx,nsy)
501 heimbach 1.23 _RL objf_snowprecipsmoo(nsx,nsy)
502     _RL objf_lwfluxsmoo(nsx,nsy)
503     _RL objf_lwdownsmoo(nsx,nsy)
504     _RL objf_evapsmoo(nsx,nsy)
505     _RL objf_apressuresmoo(nsx,nsy)
506     _RL objf_runoffsmoo(nsx,nsy)
507 heimbach 1.13 _RL objf_uwindsmoo(nsx,nsy)
508     _RL objf_vwindsmoo(nsx,nsy)
509 heimbach 1.1 _RL objf_obcsn(nsx,nsy)
510     _RL objf_obcss(nsx,nsy)
511     _RL objf_obcsw(nsx,nsy)
512     _RL objf_obcse(nsx,nsy)
513 heimbach 1.2 _RL objf_obcsvol
514 heimbach 1.1 _RL objf_curmtr(nsx,nsy)
515     _RL objf_ageos(nsx,nsy)
516     _RL objf_kapgm(nsx,nsy)
517 gforget 1.31 _RL objf_kapredi(nsx,nsy)
518 heimbach 1.1 _RL objf_diffkr(nsx,nsy)
519     _RL objf_theta_ini_fin(nsx,nsy)
520     _RL objf_salt_ini_fin(nsx,nsy)
521 heimbach 1.3 _RL objf_eddytau(nsx,nsy)
522 gforget 1.25 _RL objf_bottomdrag(nsx,nsy)
523 heimbach 1.27 _RL objf_transp
524 heimbach 1.1
525 heimbach 1.4 common /ecco_cost_num/
526     & num_hflux,
527     & num_hfluxm,
528     & num_hfluxmm,
529     & num_sflux,
530     & num_sfluxm,
531     & num_sfluxmm,
532     & num_tauu,
533     & num_tauum,
534     & num_tauv,
535     & num_tauvm,
536     & num_hmean,
537     & num_h,
538 heimbach 1.21 & num_tp,
539     & num_ers,
540     & num_gfo,
541 gforget 1.41 & num_sshv4cost,
542 heimbach 1.4 & num_temp,
543     & num_salt,
544     & num_temp0,
545     & num_salt0,
546     & num_sst,
547     & num_tmi,
548     & num_sss,
549 heimbach 1.28 & num_bp,
550 heimbach 1.4 & num_ctdt,
551     & num_ctds,
552     & num_ctdtclim,
553     & num_ctdsclim,
554     & num_xbt,
555     & num_argot,
556     & num_argos,
557     & num_drift,
558     & num_tdrift,
559     & num_sdrift,
560     & num_wdrift,
561     & num_scatx,
562     & num_scaty,
563     & num_scatxm,
564     & num_scatym,
565     & num_atemp,
566     & num_aqh,
567 heimbach 1.6 & num_precip,
568 heimbach 1.7 & num_swflux,
569 heimbach 1.9 & num_swdown,
570 heimbach 1.23 & num_snowprecip,
571     & num_lwflux,
572     & num_lwdown,
573     & num_evap,
574     & num_apressure,
575     & num_runoff,
576 heimbach 1.4 & num_uwind,
577     & num_vwind,
578 heimbach 1.8 & num_atempm,
579     & num_aqhm,
580     & num_precipm,
581     & num_swfluxm,
582 heimbach 1.9 & num_swdownm,
583 heimbach 1.23 & num_snowprecipm,
584     & num_lwfluxm,
585     & num_lwdownm,
586     & num_evapm,
587     & num_apressurem,
588     & num_runoffm,
589 heimbach 1.8 & num_uwindm,
590     & num_vwindm,
591 heimbach 1.4 & num_obcsn,
592     & num_obcss,
593     & num_obcsw,
594     & num_obcse,
595     & num_obcsvol,
596     & num_curmtr,
597     & num_ageos,
598 heimbach 1.9 & num_kapgm,
599 gforget 1.31 & num_kapredi,
600 heimbach 1.4 & num_diffkr,
601     & num_theta_ini_fin,
602     & num_salt_ini_fin,
603 gforget 1.25 & num_eddytau,
604 heimbach 1.27 & num_bottomdrag,
605     & num_transp
606 heimbach 1.4
607     _RL num_hflux (nsx,nsy)
608     _RL num_hfluxm (nsx,nsy)
609     _RL num_hfluxmm(nsx,nsy)
610     _RL num_sflux (nsx,nsy)
611     _RL num_sfluxm (nsx,nsy)
612     _RL num_sfluxmm(nsx,nsy)
613     _RL num_tauu (nsx,nsy)
614     _RL num_tauum (nsx,nsy)
615     _RL num_tauv (nsx,nsy)
616     _RL num_tauvm (nsx,nsy)
617     _RL num_hmean
618     _RL num_h (nsx,nsy)
619 heimbach 1.21 _RL num_tp (nsx,nsy)
620     _RL num_ers (nsx,nsy)
621     _RL num_gfo (nsx,nsy)
622 gforget 1.41 _RL num_sshv4cost(NSSHV4COST,nsx,nsy)
623 heimbach 1.4 _RL num_temp (nsx,nsy)
624     _RL num_salt (nsx,nsy)
625     _RL num_temp0(nsx,nsy)
626     _RL num_salt0(nsx,nsy)
627     _RL num_sst (nsx,nsy)
628     _RL num_tmi (nsx,nsy)
629 jmc 1.30 _RL num_sss (nsx,nsy)
630     _RL num_bp (nsx,nsy)
631 heimbach 1.4 _RL num_ctdt (nsx,nsy)
632     _RL num_ctds (nsx,nsy)
633     _RL num_ctdtclim (nsx,nsy)
634     _RL num_ctdsclim (nsx,nsy)
635     _RL num_xbt (nsx,nsy)
636     _RL num_argot(nsx,nsy)
637     _RL num_argos(nsx,nsy)
638     _RL num_drift(nsx,nsy)
639     _RL num_tdrift(nsx,nsy)
640     _RL num_sdrift(nsx,nsy)
641     _RL num_wdrift(nsx,nsy)
642     _RL num_scatx(nsx,nsy)
643     _RL num_scaty(nsx,nsy)
644     _RL num_scatxm(nsx,nsy)
645     _RL num_scatym(nsx,nsy)
646     _RL num_atemp(nsx,nsy)
647     _RL num_aqh (nsx,nsy)
648 heimbach 1.6 _RL num_precip(nsx,nsy)
649 heimbach 1.7 _RL num_swflux(nsx,nsy)
650 heimbach 1.9 _RL num_swdown(nsx,nsy)
651 heimbach 1.23 _RL num_snowprecip(nsx,nsy)
652     _RL num_lwflux(nsx,nsy)
653     _RL num_lwdown(nsx,nsy)
654     _RL num_evap(nsx,nsy)
655     _RL num_apressure(nsx,nsy)
656     _RL num_runoff(nsx,nsy)
657 heimbach 1.4 _RL num_uwind(nsx,nsy)
658     _RL num_vwind(nsx,nsy)
659 heimbach 1.8 _RL num_atempm(nsx,nsy)
660     _RL num_aqhm (nsx,nsy)
661     _RL num_precipm(nsx,nsy)
662     _RL num_swfluxm(nsx,nsy)
663 heimbach 1.9 _RL num_swdownm(nsx,nsy)
664 heimbach 1.23 _RL num_snowprecipm(nsx,nsy)
665     _RL num_lwfluxm(nsx,nsy)
666     _RL num_lwdownm(nsx,nsy)
667     _RL num_evapm(nsx,nsy)
668     _RL num_apressurem(nsx,nsy)
669     _RL num_runoffm(nsx,nsy)
670 heimbach 1.8 _RL num_uwindm(nsx,nsy)
671     _RL num_vwindm(nsx,nsy)
672 heimbach 1.4 _RL num_obcsn(nsx,nsy)
673     _RL num_obcss(nsx,nsy)
674     _RL num_obcsw(nsx,nsy)
675     _RL num_obcse(nsx,nsy)
676     _RL num_obcsvol
677     _RL num_curmtr(nsx,nsy)
678     _RL num_ageos(nsx,nsy)
679     _RL num_kapgm(nsx,nsy)
680 gforget 1.31 _RL num_kapredi(nsx,nsy)
681 heimbach 1.4 _RL num_diffkr(nsx,nsy)
682     _RL num_theta_ini_fin(nsx,nsy)
683     _RL num_salt_ini_fin(nsx,nsy)
684     _RL num_eddytau(nsx,nsy)
685 gforget 1.25 _RL num_bottomdrag(nsx,nsy)
686 heimbach 1.27 _RL num_transp
687 heimbach 1.4
688 heimbach 1.1 common /ecco_cost_aux_r/
689     & mult_hflux,
690     & mult_sflux,
691 heimbach 1.16 & mult_hfluxmm,
692     & mult_sfluxmm,
693 heimbach 1.1 & mult_tauu,
694     & mult_tauv,
695     & mult_hmean,
696     & mult_h,
697 heimbach 1.21 & mult_tp,
698     & mult_ers,
699     & mult_gfo,
700 gforget 1.41 & mult_sshv4cost,
701 heimbach 1.1 & mult_temp,
702     & mult_salt,
703     & mult_temp0,
704     & mult_salt0,
705 heimbach 1.2 & mult_sst,
706 heimbach 1.1 & mult_tmi,
707     & mult_sss,
708 heimbach 1.28 & mult_bp,
709 heimbach 1.1 & mult_ctdt,
710     & mult_ctds,
711     & mult_ctdtclim,
712     & mult_ctdsclim,
713     & mult_xbt,
714     & mult_argot,
715     & mult_argos,
716     & mult_drift,
717     & mult_tdrift,
718     & mult_sdrift,
719     & mult_wdrift,
720     & mult_scatx,
721     & mult_scaty,
722     & mult_atemp,
723     & mult_aqh,
724 heimbach 1.6 & mult_precip,
725 heimbach 1.7 & mult_swflux,
726 heimbach 1.9 & mult_swdown,
727 heimbach 1.23 & mult_snowprecip,
728     & mult_lwflux,
729     & mult_lwdown,
730     & mult_evap,
731     & mult_apressure,
732     & mult_runoff,
733 heimbach 1.1 & mult_uwind,
734     & mult_vwind,
735     & mult_obcsn,
736     & mult_obcss,
737     & mult_obcsw,
738     & mult_obcse,
739     & mult_obcsvol,
740     & mult_curmtr,
741     & mult_ageos,
742     & mult_kapgm,
743 gforget 1.31 & mult_kapredi,
744 heimbach 1.1 & mult_diffkr,
745 heimbach 1.3 & mult_ini_fin,
746 gforget 1.25 & mult_edtau,
747     & mult_bottomdrag,
748 heimbach 1.14 & mult_smooth_ic,
749 heimbach 1.27 & mult_smooth_bc,
750     & mult_transp
751 heimbach 1.1 _RL mult_hflux
752     _RL mult_sflux
753 heimbach 1.16 _RL mult_hfluxmm
754     _RL mult_sfluxmm
755 heimbach 1.1 _RL mult_tauu
756     _RL mult_tauv
757     _RL mult_hmean
758     _RL mult_h
759 heimbach 1.21 _RL mult_tp
760     _RL mult_ers
761     _RL mult_gfo
762 gforget 1.41 _RL mult_sshv4cost(NSSHV4COST)
763 heimbach 1.1 _RL mult_temp
764     _RL mult_salt
765     _RL mult_temp0
766     _RL mult_salt0
767 heimbach 1.2 _RL mult_sst
768 heimbach 1.1 _RL mult_tmi
769     _RL mult_sss
770 heimbach 1.28 _RL mult_bp
771 heimbach 1.1 _RL mult_ctdt
772     _RL mult_ctds
773     _RL mult_ctdtclim
774     _RL mult_ctdsclim
775     _RL mult_xbt
776     _RL mult_argot
777     _RL mult_argos
778     _RL mult_drift
779     _RL mult_tdrift
780     _RL mult_sdrift
781     _RL mult_wdrift
782     _RL mult_scatx
783     _RL mult_scaty
784     _RL mult_atemp
785     _RL mult_aqh
786 heimbach 1.6 _RL mult_precip
787 heimbach 1.7 _RL mult_swflux
788 heimbach 1.9 _RL mult_swdown
789 heimbach 1.23 _RL mult_snowprecip
790     _RL mult_lwflux
791     _RL mult_lwdown
792     _RL mult_evap
793     _RL mult_apressure
794     _RL mult_runoff
795 heimbach 1.1 _RL mult_uwind
796     _RL mult_vwind
797     _RL mult_obcsn
798     _RL mult_obcss
799     _RL mult_obcsw
800     _RL mult_obcse
801     _RL mult_obcsvol
802     _RL mult_curmtr
803     _RL mult_ageos
804     _RL mult_kapgm
805 gforget 1.31 _RL mult_kapredi
806 heimbach 1.1 _RL mult_diffkr
807     _RL mult_ini_fin
808 gforget 1.25 _RL mult_edtau
809     _RL mult_bottomdrag
810 heimbach 1.14 _RL mult_smooth_ic
811     _RL mult_smooth_bc
812 heimbach 1.27 _RL mult_transp
813 heimbach 1.1
814     c Record counters relevant for the cost function evaluation.
815     c ==========================================================
816     c
817 heimbach 1.21 c nyearsrec - number of yearly records that will be generated by
818     c the current model integration.
819     c nmonsrec - number of monthly records that will be generated by
820     c the current model integration.
821     c ndaysrec - number of daily records that will be generated by
822     c the current model integration.
823 heimbach 1.1
824     common /ecco_cost_i/
825 heimbach 1.21 & nyearsrec,
826 heimbach 1.1 & nmonsrec,
827 heimbach 1.11 & ndaysrec,
828     & nnztbar,
829     & nnzsbar
830 heimbach 1.21 integer nyearsrec
831 heimbach 1.1 integer nmonsrec
832     integer ndaysrec
833 heimbach 1.11 integer nnztbar
834     integer nnzsbar
835 heimbach 1.1
836    
837     c Data files for the weights used in the cost function:
838     c =====================================================
839     c
840     c hflux_errfile - heat flux error.
841     c sflux_errfile - salt flux error.
842     c tauu_errfile - zonal wind stress error.
843     c tauum_errfile - zonal wind stress error.
844     c tauv_errfile - meridional wind stress error.
845     c tauvm_errfile - meridional wind stress error.
846     c tscatx_errfile - zonal wind stress error.
847     c tscaty_errfile - meridional wind stress error.
848     c data_errfile - weights for theta, salt, and SST
849     c geoid_errfile - geoid error.
850     c geoid_covariancefile - geoid error covariance.
851     c ssh_errfile - sea surface height error.
852     c ctdt_errfile - CTD temperature error.
853     c ctds_errfile - CTD salinity error.
854     c drift_errfile - drifter error.
855     c salterrfile - representation error due unresolved eddies
856     c temperrfile - representation error due unresolved eddies
857     c velerrfile - representation error
858    
859 jmc 1.30 common /ecco_cost_c/
860 heimbach 1.1 & hflux_errfile,
861     & hfluxm_errfile,
862     & sflux_errfile,
863     & sfluxm_errfile,
864     & tauu_errfile,
865     & tauum_errfile,
866     & tauv_errfile,
867     & tauvm_errfile,
868     & scatx_errfile,
869     & scaty_errfile,
870     & data_errfile,
871     & geoid_errfile,
872     & geoid_covariancefile,
873     & ssh_errfile,
874 heimbach 1.22 & tp_errfile,
875     & ers_errfile,
876     & gfo_errfile,
877 gforget 1.41 & sshv4cost_errfile,
878 heimbach 1.1 & ctdt_errfile,
879 jmc 1.30 & ctds_errfile,
880 heimbach 1.1 & drift_errfile,
881 jmc 1.30 & udrifterrfile,
882     & vdrifterrfile,
883 heimbach 1.1 & salterrfile,
884     & temperrfile,
885     & velerrfile,
886 heimbach 1.12 & salt0errfile,
887     & temp0errfile,
888     & vel0errfile,
889 gforget 1.39 & ssterrfile,
890     & ssserrfile,
891 gforget 1.40 & bperrfile,
892 heimbach 1.1 & atemp_errfile,
893     & aqh_errfile,
894 heimbach 1.6 & precip_errfile,
895 heimbach 1.7 & swflux_errfile,
896 heimbach 1.9 & swdown_errfile,
897 heimbach 1.23 & snowprecip_errfile,
898     & lwflux_errfile,
899     & lwdown_errfile,
900     & evap_errfile,
901     & apressure_errfile,
902     & runoff_errfile,
903 gforget 1.25 & edtau_errfile,
904     & kapgm_errfile,
905 gforget 1.31 & kapredi_errfile,
906 gforget 1.25 & diffkr_errfile,
907     & bottomdrag_errfile,
908 heimbach 1.1 & uwind_errfile,
909     & vwind_errfile
910     character*(MAX_LEN_FNAM) hflux_errfile
911     character*(MAX_LEN_FNAM) sflux_errfile
912     character*(MAX_LEN_FNAM) tauu_errfile
913     character*(MAX_LEN_FNAM) tauv_errfile
914     character*(MAX_LEN_FNAM) hfluxm_errfile
915     character*(MAX_LEN_FNAM) sfluxm_errfile
916     character*(MAX_LEN_FNAM) tauum_errfile
917     character*(MAX_LEN_FNAM) tauvm_errfile
918     character*(MAX_LEN_FNAM) scatx_errfile
919     character*(MAX_LEN_FNAM) scaty_errfile
920     character*(MAX_LEN_FNAM) data_errfile
921     character*(MAX_LEN_FNAM) geoid_errfile
922     character*(MAX_LEN_FNAM) geoid_covariancefile
923     character*(MAX_LEN_FNAM) ssh_errfile
924 heimbach 1.22 character*(MAX_LEN_FNAM) tp_errfile
925     character*(MAX_LEN_FNAM) ers_errfile
926     character*(MAX_LEN_FNAM) gfo_errfile
927 gforget 1.41 character*(MAX_LEN_FNAM) sshv4cost_errfile(NSSHV4COST)
928 jmc 1.30 character*(MAX_LEN_FNAM) ctdt_errfile
929     character*(MAX_LEN_FNAM) ctds_errfile
930 heimbach 1.1 character*(MAX_LEN_FNAM) drift_errfile
931     character*(MAX_LEN_FNAM) udrifterrfile
932 jmc 1.30 character*(MAX_LEN_FNAM) vdrifterrfile
933 heimbach 1.1 character*(MAX_LEN_FNAM) salterrfile
934     character*(MAX_LEN_FNAM) temperrfile
935     character*(MAX_LEN_FNAM) velerrfile
936 heimbach 1.12 character*(MAX_LEN_FNAM) salt0errfile
937     character*(MAX_LEN_FNAM) temp0errfile
938     character*(MAX_LEN_FNAM) vel0errfile
939 gforget 1.39 character*(MAX_LEN_FNAM) ssterrfile
940     character*(MAX_LEN_FNAM) ssserrfile
941 gforget 1.40 character*(MAX_LEN_FNAM) bperrfile
942 heimbach 1.1 character*(MAX_LEN_FNAM) atemp_errfile
943     character*(MAX_LEN_FNAM) aqh_errfile
944 heimbach 1.6 character*(MAX_LEN_FNAM) precip_errfile
945 heimbach 1.7 character*(MAX_LEN_FNAM) swflux_errfile
946 heimbach 1.9 character*(MAX_LEN_FNAM) swdown_errfile
947 heimbach 1.23 character*(MAX_LEN_FNAM) snowprecip_errfile
948     character*(MAX_LEN_FNAM) lwflux_errfile
949     character*(MAX_LEN_FNAM) lwdown_errfile
950     character*(MAX_LEN_FNAM) evap_errfile
951     character*(MAX_LEN_FNAM) apressure_errfile
952     character*(MAX_LEN_FNAM) runoff_errfile
953 gforget 1.25 character*(MAX_LEN_FNAM) edtau_errfile
954     character*(MAX_LEN_FNAM) kapgm_errfile
955 gforget 1.31 character*(MAX_LEN_FNAM) kapredi_errfile
956 gforget 1.25 character*(MAX_LEN_FNAM) diffkr_errfile
957     character*(MAX_LEN_FNAM) bottomdrag_errfile
958 heimbach 1.1 character*(MAX_LEN_FNAM) uwind_errfile
959     character*(MAX_LEN_FNAM) vwind_errfile
960    
961    
962     c Arrays where the weights are stored:
963     c ====================================
964     c
965     c cosphi - cosine of latitude.
966     c whflux - weight for heat flux.
967     c wsflux - weight for salt flux.
968     c wtauu - weight for zonal wind stress.
969     c wtauu - weight for meridional wind stress.
970     c wscatx - weight for zonal scat stress.
971     c wscaty - weight for meridional scat stress.
972     c wtheta - weight for temperature.
973     c wtheta2 - representation error due to unresolved eddies
974     c wsst - weight for sea surface temperature.
975     c wsss - weight for sea surface salinity.
976     c wsalt - weight for salinity.
977     c wsalt2 - representation error due to unresolved eddies
978     c wtp - weight for TOPEX/POSEIDON data.
979     c wers - weight for ERS data.
980     c wp - weight for geoid.
981     c wctdt - weight for CTD temperature.
982     c wctds - weight for CTD salinity.
983     c wudrift - weight for mean zonal velocity from drifters.
984     c wvdrift - weight for mean meridional velocity from drifters.
985    
986 jmc 1.30 common /ecco_cost_weights_r/
987 heimbach 1.1 & frame,
988     & cosphi,
989     & whflux,wsflux,wtauu,wtauv,
990 heimbach 1.23 & watemp,waqh,wprecip,wsnowprecip,
991     & wswflux,wswdown,wlwflux,wlwdown,
992     & wevap,wapressure,wrunoff,
993 gforget 1.25 & wbottomdrag,
994 heimbach 1.9 & wuwind,wvwind,
995 heimbach 1.1 & wscatx,wscaty,
996     & wtheta,wtheta2,wthetaLev,
997     & wsalt,wsalt2,wsaltLev,
998 heimbach 1.20 & wdiffkr,wdiffkr2,wdiffkrFld,
999     & wkapgm,wkapgm2,wkapgmFld,
1000 gforget 1.31 & wkapredi,wkapredi2,wkaprediFld,
1001 heimbach 1.20 & wedtaux,wedtaux2,wedtauxFld,
1002     & wedtauy,wedtauy2,wedtauyFld,
1003 heimbach 1.28 & wsst,wsss,wbp,
1004 heimbach 1.15 & wtp,wers,wgfo,
1005 gforget 1.41 & wp,wsshv4,
1006 heimbach 1.1 & wctdt,wctds,
1007     & wudrift,wvdrift,
1008     & whfluxmm,wsfluxmm,
1009     & wcurrent,wcurrent2,
1010     & wcurrentLev,wbaro
1011    
1012     _RL frame (1-olx:snx+olx,1-oly:sny+oly )
1013     _RL cosphi (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1014     _RL whflux (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1015     _RL whfluxm (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1016     _RL whfluxmm(1-olx:snx+olx,1-oly:sny+oly)
1017     _RL wsflux (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1018     _RL wsfluxm (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1019     _RL wsfluxmm(1-olx:snx+olx,1-oly:sny+oly)
1020     _RL wtauu (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1021     _RL wtauv (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1022     _RL wtauum (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1023     _RL wtauvm (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1024     _RL wscatx (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1025     _RL wscaty (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1026     _RL watemp (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1027     _RL waqh (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1028 heimbach 1.6 _RL wprecip (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1029 heimbach 1.7 _RL wswflux (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1030 heimbach 1.9 _RL wswdown (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1031 heimbach 1.23 _RL wsnowprecip (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1032     _RL wlwflux (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1033     _RL wlwdown (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1034     _RL wevap (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1035     _RL wapressure(1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1036     _RL wrunoff (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1037 gforget 1.25 _RL wbottomdrag (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
1038 heimbach 1.1 _RL wuwind (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1039     _RL wvwind (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1040     _RL wtheta ( nr,nsx,nsy)
1041     _RL wsalt ( nr,nsx,nsy)
1042     _RL wtheta2 (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1043     _RL wsalt2 (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1044     _RL wthetaLev (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1045     _RL wsaltLev (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1046     _RL wsst (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1047     _RL wsss (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1048 heimbach 1.28 _RL wbp (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1049 heimbach 1.1 _RL wtp (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1050 gforget 1.41 _RL wsshv4 (1-olx:snx+olx,1-oly:sny+oly,NSSHV4COST,nsx,nsy)
1051 heimbach 1.1 _RL wers (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1052 heimbach 1.15 _RL wgfo (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1053 heimbach 1.1 _RL wp (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1054     _RL wctdt ( nr,nsx,nsy)
1055     _RL wctds ( nr,nsx,nsy)
1056     _RL wudrift (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1057     _RL wvdrift (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1058     _RL wcurrent( nr,nsx,nsy)
1059     _RL wcurrent2 (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1060     _RL wcurrentLev (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1061     _RL wbaro
1062 heimbach 1.20 _RL wdiffkr ( nr,nsx,nsy)
1063     _RL wdiffkr2 (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1064     _RL wdiffkrFld (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1065     _RL wkapgm ( nr,nsx,nsy)
1066     _RL wkapgm2 (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1067     _RL wkapgmFld (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1068 gforget 1.31 _RL wkapredi ( nr,nsx,nsy)
1069     _RL wkapredi2 (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1070     _RL wkaprediFld (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1071 heimbach 1.20 _RL wedtaux ( nr,nsx,nsy)
1072     _RL wedtaux2 (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1073     _RL wedtauxFld (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1074     _RL wedtauy ( nr,nsx,nsy)
1075     _RL wedtauy2 (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1076     _RL wedtauyFld (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1077 heimbach 1.1
1078 heimbach 1.6 common /ecco_cost_weights_0_r/
1079 heimbach 1.7 & whflux0, wsflux0, wtau0,
1080 heimbach 1.23 & watemp0, waqh0, wprecip0, wsnowprecip0, wwind0,
1081 jmc 1.30 & wswflux0, wswdown0, wlwflux0, wlwdown0,
1082 gforget 1.31 & wevap0, wapressure0, wrunoff0, wkapredi0,
1083 gforget 1.25 & wbottomdrag0,wdiffkr0, wkapgm0, wedtau0
1084 heimbach 1.6 _RL whflux0
1085     _RL wsflux0
1086     _RL wtau0
1087     _RL watemp0
1088     _RL waqh0
1089     _RL wprecip0
1090 heimbach 1.7 _RL wswflux0
1091 heimbach 1.9 _RL wswdown0
1092 heimbach 1.23 _RL wsnowprecip0
1093     _RL wlwflux0
1094     _RL wlwdown0
1095     _RL wevap0
1096     _RL wapressure0
1097     _RL wrunoff0
1098 gforget 1.25 _RL wbottomdrag0
1099 heimbach 1.6 _RL wwind0
1100 heimbach 1.20 _RL wdiffkr0
1101     _RL wkapgm0
1102 gforget 1.31 _RL wkapredi0
1103 heimbach 1.20 _RL wedtau0
1104 heimbach 1.8
1105     common /ecco_cost_weights_mean_r/
1106     & wmean_hflux, wmean_sflux, wmean_tau,
1107 jmc 1.30 & wmean_atemp, wmean_aqh,
1108 heimbach 1.23 & wmean_precip, wmean_snowprecip, wmean_wind,
1109     & wmean_swflux, wmean_swdown, wmean_lwflux, wmean_lwdown,
1110     & wmean_evap, wmean_apressure, wmean_runoff
1111 heimbach 1.8 _RL wmean_hflux
1112     _RL wmean_sflux
1113     _RL wmean_tau
1114     _RL wmean_atemp
1115     _RL wmean_aqh
1116     _RL wmean_precip
1117     _RL wmean_swflux
1118 heimbach 1.9 _RL wmean_swdown
1119 heimbach 1.23 _RL wmean_snowprecip
1120     _RL wmean_lwflux
1121     _RL wmean_lwdown
1122     _RL wmean_evap
1123     _RL wmean_apressure
1124     _RL wmean_runoff
1125 heimbach 1.8 _RL wmean_wind
1126 jmc 1.30
1127 heimbach 1.5 common /ecco_cost_weights_2_r/
1128     & whflux2,wsflux2,wtauu2,wtauv2
1129     _RL whflux2 (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1130     _RL wsflux2 (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1131     _RL wtauu2 (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1132     _RL wtauv2 (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1133 jmc 1.30
1134    
1135 heimbach 1.5
1136 heimbach 1.1 #if (defined (ALLOW_OBCSN_COST_CONTRIBUTION) || \
1137     defined (ALLOW_OBCSN_CONTROL))
1138     common /ecco_cost_weights_obcsn/
1139     & wobcsn, wobcsnLev
1140     _RL wobcsn ( nr,nobcs)
1141     _RL wobcsnLev (1-olx:snx+olx,nr,nsx,nsy,nobcs)
1142     #endif
1143     #if (defined (ALLOW_OBCSS_COST_CONTRIBUTION) || \
1144     defined (ALLOW_OBCSS_CONTROL))
1145     common /ecco_cost_weights_obcss/
1146     & wobcss, wobcssLev
1147     _RL wobcss ( nr,nobcs)
1148     _RL wobcssLev (1-olx:snx+olx,nr,nsx,nsy,nobcs)
1149     #endif
1150     #if (defined (ALLOW_OBCSW_COST_CONTRIBUTION) || \
1151     defined (ALLOW_OBCSW_CONTROL))
1152     common /ecco_cost_weights_obcsw/
1153     & wobcsw, wobcswLev
1154     _RL wobcsw ( nr,nobcs)
1155     _RL wobcswLev (1-oly:sny+oly,nr,nsx,nsy,nobcs)
1156     #endif
1157     #if (defined (ALLOW_OBCSE_COST_CONTRIBUTION) || \
1158     defined (ALLOW_OBCSE_CONTROL))
1159     common /ecco_cost_weights_obcse/
1160     & wobcse, wobcseLev
1161     _RL wobcse ( nr,nobcs)
1162     _RL wobcseLev (1-oly:sny+oly,nr,nsx,nsy,nobcs)
1163     #endif
1164    
1165 heimbach 1.2
1166 heimbach 1.1 c Arrays that contain observations for the model-data comparison:
1167     c ===============================================================
1168     c
1169     c tdat - reference temperature data.
1170     c scatxdat - reference zonal wind stress.
1171     c scatydat - reference meridional wind stress.
1172 heimbach 1.2 c sstdat - reference sea surface temperature data.
1173 heimbach 1.1 c tmidat - reference TMI sea surface temperature data.
1174     c sssdat - reference sea surface temperature data.
1175 heimbach 1.28 c bpdat - bottom pressure from time-varying GRACE.
1176 heimbach 1.1 c tauxmask - mask for reference wind stress data.
1177 jmc 1.30 c tauymask - mask for reference wind stress data.
1178 heimbach 1.1 c scatxmask - mask for scat wind stress data.
1179 jmc 1.30 c scatymask - mask for scat wind stress data.
1180 heimbach 1.2 c sstmask - mask for reference sea surface temperature data.
1181 heimbach 1.1 c tmimask - mask for reference sea surface temperature data.
1182     c sssmask - mask for reference sea surface temperature data.
1183     c sdat - reference salinity data.
1184     c tpmean - reference mean sea surface height data.
1185     c tpmeanmask - mask for reference mean sea surface height data.
1186     c tpobs - TOPEX/POSEIDON data.
1187     c tpmask - mask for TOPEX/POSEIDON data.
1188     c ersobs - ERS data.
1189     c ersmask - mask for ERS data.
1190     c ctdtobs - CTD temperature data
1191     c ctdsobs - CTD salinity data
1192 jmc 1.30 c xbtobs - XBT data
1193     c argot - ARGO temperature data
1194     c argos - ARGO salt data
1195 heimbach 1.1 c udriftdat - drifters zonal velocities
1196     c vdriftdat - drifters meridional velocities
1197    
1198     common /ecco_cost_data_r/
1199     & tdat,
1200     & scatxdat,
1201     & scatydat,
1202 heimbach 1.28 & bpdat,
1203 heimbach 1.2 & sstmask,
1204 heimbach 1.1 & tmimask,
1205     & sssmask,
1206 heimbach 1.28 & bpmask,
1207 heimbach 1.1 & tauxmask,
1208     & tauymask,
1209     & scatxmask,
1210     & scatymask,
1211     & sdat,
1212     & tpmean,
1213     & tpmeanmask,
1214     & tpobs,
1215     & tpmask,
1216     & ersobs,
1217     & ersmask,
1218 heimbach 1.15 & gfoobs,
1219     & gfomask,
1220 heimbach 1.1 & ctdtobs,
1221     & ctdsobs,
1222     & xbtobs,
1223     & argotobs,
1224     & argosobs,
1225     & udriftdat,
1226     & vdriftdat,
1227     & curmtruobs,
1228     & curmtrvobs
1229 jmc 1.30
1230 heimbach 1.1 _RL tdat (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1231     _RL scatxdat (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1232     _RL scatydat (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1233 heimbach 1.28 _RL bpdat (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1234 heimbach 1.1 _RL tauxmask (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1235     _RL tauymask (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1236     _RL scatxmask (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1237     _RL scatymask (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1238 heimbach 1.2 _RL sstmask (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1239 heimbach 1.1 _RL tmimask (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1240     _RL sssmask (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1241 heimbach 1.28 _RL bpmask (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1242 heimbach 1.1 _RL sdat (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1243     _RL tpmean (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1244     _RL tpmeanmask(1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1245     _RL tpobs (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1246     _RL tpmask (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1247     _RL ersobs (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1248     _RL ersmask (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1249 heimbach 1.15 _RL gfoobs (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1250     _RL gfomask (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1251 heimbach 1.1 _RL ctdtobs (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1252     _RL ctdsobs (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1253     _RL xbtobs (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1254     _RL argotobs (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1255     _RL argosobs (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1256     _RL udriftdat (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1257     _RL vdriftdat (1-olx:snx+olx,1-oly:sny+oly, nsx,nsy)
1258     _RL curmtruobs(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1259     _RL curmtrvobs(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1260    
1261 heimbach 1.2
1262 heimbach 1.1 c Files that contain obervations:
1263     c ===============================
1264     c
1265     c tdatfile - reference data file for temperature.
1266     c sdatfile - reference data file for salinity.
1267     c scatxdatfile - reference data file for zonal wind stress.
1268     c scatydatfile - reference data file for meridional wind stress.
1269     c sstdatfile - reference data file for sea surface temperature.
1270 heimbach 1.2 c tmidatfile - reference data file for TMI sea surface temperature.
1271 heimbach 1.1 c topexmeanfile - reference data file for mean sea surface height.
1272     c topexfile - reference data file for sea surface height data
1273     c (TOPEX/POSEIDON).
1274     c ersfile - reference data file for sea surface height data
1275     c (ERS).
1276 jmc 1.30 c ctdtfile, ctdsfile- reference data file for temperature and salinity
1277 heimbach 1.1 c from CTD
1278     c ctdtclimfile, ctdsclimfile- reference data file for temperature
1279 heimbach 1.2 c and salinity from CTD with out timetag
1280 heimbach 1.1 c xbtfile - reference data file for xbt
1281     c ARGOtfile - reference data file for ARGO
1282     c ARGOsfile - reference data file for ARGO
1283     c driftfile - reference data file for drifter's mean velocities
1284    
1285     common /ecco_cost_data_c/
1286     & tdatfile,
1287     & sdatfile,
1288     & scatxdatfile,
1289     & scatydatfile,
1290 heimbach 1.2 & sstdatfile,
1291 heimbach 1.1 & tmidatfile,
1292     & sssdatfile,
1293 heimbach 1.28 & bpdatfile,
1294 heimbach 1.1 & topexmeanfile,
1295     & topexfile,
1296     & ersfile,
1297 heimbach 1.15 & gfofile,
1298 heimbach 1.1 & ctdtfile,
1299     & ctdsfile,
1300     & ctdtclimfile,
1301     & ctdsclimfile,
1302     & xbtfile,
1303     & argotfile,
1304     & argosfile,
1305 jmc 1.30 & udriftfile,
1306 heimbach 1.1 & vdriftfile,
1307     & curmtrufile,
1308 heimbach 1.19 & curmtrvfile
1309 heimbach 1.1
1310     character*(MAX_LEN_FNAM) tdatfile
1311     character*(MAX_LEN_FNAM) sdatfile
1312     character*(MAX_LEN_FNAM) scatxdatfile
1313     character*(MAX_LEN_FNAM) scatydatfile
1314 heimbach 1.2 character*(MAX_LEN_FNAM) sstdatfile
1315 heimbach 1.1 character*(MAX_LEN_FNAM) tmidatfile
1316     character*(MAX_LEN_FNAM) sssdatfile
1317 heimbach 1.28 character*(MAX_LEN_FNAM) bpdatfile
1318 heimbach 1.1 character*(MAX_LEN_FNAM) topexmeanfile
1319     character*(MAX_LEN_FNAM) topexfile
1320     character*(MAX_LEN_FNAM) ersfile
1321 heimbach 1.15 character*(MAX_LEN_FNAM) gfofile
1322 heimbach 1.1 character*(MAX_LEN_FNAM) ctdtfile
1323     character*(MAX_LEN_FNAM) ctdsfile
1324     character*(MAX_LEN_FNAM) ctdtclimfile
1325     character*(MAX_LEN_FNAM) ctdsclimfile
1326     character*(MAX_LEN_FNAM) xbtfile
1327     character*(MAX_LEN_FNAM) argotfile
1328     character*(MAX_LEN_FNAM) argosfile
1329     character*(MAX_LEN_FNAM) argofile
1330     character*(MAX_LEN_FNAM) udriftfile
1331 jmc 1.30 character*(MAX_LEN_FNAM) vdriftfile
1332 heimbach 1.1 character*(MAX_LEN_FNAM) curmtrufile
1333     character*(MAX_LEN_FNAM) curmtrvfile
1334    
1335 heimbach 1.2
1336 heimbach 1.1 c Flags used in the model-data comparison:
1337     c ========================================
1338     c
1339     c using_ers - flag that indicates the use of ERS data
1340    
1341     common /ecco_cost_data_flags/
1342     & using_topex,
1343 heimbach 1.15 & using_ers,
1344     & using_gfo
1345 heimbach 1.1 logical using_topex
1346     logical using_ers
1347 heimbach 1.15 logical using_gfo
1348 heimbach 1.1
1349     c Calendar information for the observations:
1350     c ==========================================
1351     c
1352 heimbach 1.2 c sststartdate - start date of the sea surface temperature data.
1353 heimbach 1.1 c tmistartdate - start date of the sea surface temperature data.
1354     c topexstartdate - start date of the sea surface height data.
1355     c ersstartdate - start date of the sea surface height data.
1356 heimbach 1.2 c sshperiod - sampling interval for the sea surface height data.
1357 heimbach 1.1
1358     common /ecco_cost_data_times_i/
1359     & scatxstartdate,
1360     & scatystartdate,
1361     & sststartdate,
1362     & argotstartdate,
1363     & argosstartdate,
1364 heimbach 1.2 & tmistartdate,
1365     & sssstartdate,
1366 heimbach 1.28 & bpstartdate,
1367 heimbach 1.1 & topexstartdate,
1368 heimbach 1.15 & ersstartdate,
1369     & gfostartdate
1370 heimbach 1.1 integer scatxstartdate(4)
1371     integer scatystartdate(4)
1372     integer sststartdate(4)
1373     integer argotstartdate(4)
1374     integer argosstartdate(4)
1375 heimbach 1.2 integer tmistartdate(4)
1376     integer sssstartdate(4)
1377 heimbach 1.28 integer bpstartdate(4)
1378 heimbach 1.1 integer topexstartdate(4)
1379     integer ersstartdate(4)
1380 heimbach 1.15 integer gfostartdate(4)
1381 heimbach 1.1
1382     common /ecco_cost_data_aux_i/
1383     & tmistartdate1,
1384     & tmistartdate2,
1385     & sststartdate1,
1386     & sststartdate2,
1387     & sssstartdate1,
1388     & sssstartdate2,
1389 heimbach 1.28 & bpstartdate1,
1390     & bpstartdate2,
1391 heimbach 1.1 & argotstartdate1,
1392     & argotstartdate2,
1393     & argosstartdate1,
1394     & argosstartdate2,
1395     & topexstartdate1,
1396     & topexstartdate2,
1397     & ersstartdate1,
1398     & ersstartdate2,
1399 heimbach 1.15 & gfostartdate1,
1400     & gfostartdate2,
1401 heimbach 1.1 & scatstartdate1,
1402 heimbach 1.10 & scatstartdate2
1403 heimbach 1.1
1404     integer tmistartdate1
1405     integer tmistartdate2
1406     integer sststartdate1
1407     integer sststartdate2
1408     integer sssstartdate1
1409     integer sssstartdate2
1410 heimbach 1.28 integer bpstartdate1
1411     integer bpstartdate2
1412 heimbach 1.1 integer argotstartdate1
1413     integer argotstartdate2
1414     integer argosstartdate1
1415     integer argosstartdate2
1416     integer topexstartdate1
1417     integer topexstartdate2
1418     integer ersstartdate1
1419     integer ersstartdate2
1420 heimbach 1.15 integer gfostartdate1
1421     integer gfostartdate2
1422 heimbach 1.1 integer scatstartdate1
1423     integer scatstartdate2
1424    
1425     common /ecco_cost_data_times_r/
1426     & topexperiod,
1427     & ersperiod,
1428 heimbach 1.15 & gfoperiod,
1429 heimbach 1.10 & scatperiod
1430 heimbach 1.1 _RL topexperiod
1431     _RL ersperiod
1432 heimbach 1.15 _RL gfoperiod
1433 heimbach 1.1 _RL scatperiod
1434    
1435 heimbach 1.17 common /ecco_cost_data_detrend/
1436     & topexintercept,
1437     & ersintercept,
1438     & gfointercept,
1439     & topexslope,
1440     & ersslope,
1441     & gfoslope
1442     _RL topexintercept
1443     _RL ersintercept
1444     _RL gfointercept
1445     _RL topexslope
1446     _RL ersslope
1447     _RL gfoslope
1448    
1449 gforget 1.41 cgf factor to convert sshv4cost_errfile in m
1450     common /ecco_cost_errfactor/
1451     & sshv4cost_errfactor
1452     _RL sshv4cost_errfactor(NSSHV4COST)
1453    
1454 heimbach 1.35 #ifdef ALLOW_SSH_COST_CONTRIBUTION
1455     common /ecco_ssh_daymask_r/
1456     & tpTimeMask, ersTimeMask, gfoTimeMask
1457     _RL tpTimeMask(maxNumDays)
1458     _RL ersTimeMask(maxNumDays)
1459     _RL gfoTimeMask(maxNumDays)
1460     #endif
1461    
1462     common /ecco_ssh_daymask_c/
1463     & tpTimeMaskFile, ersTimeMaskFile, gfoTimeMaskFile
1464     character*(MAX_LEN_FNAM) tpTimeMaskFile
1465     character*(MAX_LEN_FNAM) ersTimeMaskFile
1466     character*(MAX_LEN_FNAM) gfoTimeMaskFile
1467    
1468 heimbach 1.1 c ==================================================================
1469     c END OF HEADER COST
1470     c ==================================================================
1471 heimbach 1.2
1472    

  ViewVC Help
Powered by ViewVC 1.1.22