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

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

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

revision 1.8 by heimbach, Fri Jul 29 05:19:40 2005 UTC revision 1.56 by mmazloff, Tue Dec 6 04:14:04 2011 UTC
# Line 1  Line 1 
1    C $Header$
2    C $Name$
3    
4  c     ==================================================================  c     ==================================================================
5  c     HEADER AVERAGES  c     HEADER AVERAGES
# Line 8  c       fields and counters associated w Line 10  c       fields and counters associated w
10  c  c
11  c     started: Christian Eckert eckert@mit.edu  30-Jun-1999  c     started: Christian Eckert eckert@mit.edu  30-Jun-1999
12  c  c
 c     added sea-ice term: menemenlis@jpl.nasa.gov 26-Feb-2003  
 c  
13  c     ==================================================================  c     ==================================================================
14  c     HEADER AVERAGES  c     HEADER AVERAGES
15  c     ==================================================================  c     ==================================================================
# Line 22  c     sum1mon - counter for the monthly Line 22  c     sum1mon - counter for the monthly
22  c     dayrec  - number of averaged surface pressure records.  c     dayrec  - number of averaged surface pressure records.
23  c     monrec  - number of averaged theta and salinity records.  c     monrec  - number of averaged theta and salinity records.
24    
25        common /average_i/        common /average_i/
26       &                   sum1day,sum1mon,       &                   sum1day,sum1mon,sum1year,
27       &                   dayrec,monrec       &                   dayrec,monrec,yearrec
28        integer sum1day        integer sum1day
29        integer sum1mon        integer sum1mon
30          integer sum1year
31        integer dayrec        integer dayrec
32        integer monrec        integer monrec
33          integer yearrec
34    
35    c     Number of sshv4cost Cost terms:
36    c     =============================
37          INTEGER NSSHV4COST
38          PARAMETER ( NSSHV4COST=5 )
39    
40    c     Number of User Cost terms:
41    c     =============================
42          INTEGER NUSERCOST
43          PARAMETER ( NUSERCOST=10 )
44    
45    c     Number of days: (hard-coded to set up some vector dimensions
46    c     =============================
47    c     22 years: 8050
48          INTEGER maxNumDays
49          PARAMETER ( maxNumDays = 8050 )
50    
51    c     Number of Generic Cost terms:
52    c     =============================
53          INTEGER NGENCOST
54          PARAMETER ( NGENCOST=20 )
55    
56    #ifdef ALLOW_GENCOST_CONTRIBUTION
57    c     objf_gencost - gencost user defined contribution
58          common /ecco_gencost_ctrl/
59         &       xx_genbar_dummy
60          _RL  xx_genbar_dummy(NGENCOST)
61    
62          common /ecco_gencost_r_1/
63         &       objf_gencost, num_gencost, mult_gencost,
64         &       gencost_barfld, gencost_modfld, gencost_weight,
65         &       gencost_spmin, gencost_spmax, gencost_spzero
66          _RL  objf_gencost(nsx,nsy,NGENCOST)
67          _RL  num_gencost(nsx,nsy,NGENCOST)
68          _RL  mult_gencost(NGENCOST)
69          _RL  gencost_spmin(NGENCOST)
70          _RL  gencost_spmax(NGENCOST)
71          _RL  gencost_spzero(NGENCOST)
72          _RL  gencost_barfld(1-olx:snx+olx,1-oly:sny+oly,
73         &       nsx,nsy,NGENCOST)
74          _RL  gencost_modfld(1-olx:snx+olx,1-oly:sny+oly,
75         &       nsx,nsy,NGENCOST)
76          _RL  gencost_weight(1-olx:snx+olx,1-oly:sny+oly,
77         &       nsx,nsy,NGENCOST)
78    
79          common /ecco_gencost_r_2/
80         &       gencost_period
81          _RL     gencost_period(NGENCOST)
82    
83          common /ecco_gencost_i_1/
84         &       gencost_nrec
85          integer gencost_nrec(NGENCOST)
86    
87          common /ecco_gencost_c/
88         &       gencost_name,
89         &       gencost_scalefile,
90         &       gencost_errfile,
91         &       gencost_datafile,
92         &       gencost_barfile,
93         &       gencost_avgperiod,
94         &       gencost_mask
95          character*(MAX_LEN_FNAM) gencost_name(NGENCOST)
96          character*(MAX_LEN_FNAM) gencost_scalefile(NGENCOST)
97          character*(MAX_LEN_FNAM) gencost_errfile(NGENCOST)
98          character*(MAX_LEN_FNAM) gencost_datafile(NGENCOST)
99          character*(MAX_LEN_FNAM) gencost_barfile(NGENCOST)
100          character*(5)            gencost_avgperiod(NGENCOST)
101          character*(1)            gencost_mask(NGENCOST)
102    
103    #endif /* ALLOW_GENCOST_CONTRIBUTION */
104    
105  c     Averaged Fields:  c     Averaged Fields:
106  c     ================  c     ================
# Line 43  c             intantaneous salinities. Line 114  c             intantaneous salinities.
114  c     psbar - contains the averaged surface pressure field after the call  c     psbar - contains the averaged surface pressure field after the call
115  c             to subroutine POST_DAILY. Before, it accumulates the  c             to subroutine POST_DAILY. Before, it accumulates the
116  c             intantaneous surface pressure field.  c             intantaneous surface pressure field.
117  c     ubar  - contains the averaged zonal velocity component for the  c     ubar  - contains the averaged zonal velocity component for the
118  c             whole integration period. Before, it accumulates the  c             whole integration period. Before, it accumulates the
119  c             intantaneous field.  c             intantaneous field.
120  c     vbar  - contains the averaged zonal velocity component for the  c     vbar  - contains the averaged zonal velocity component for the
# Line 55  c             intantaneous field. Line 126  c             intantaneous field.
126  c     tauybar  - contains the averaged zonal velocity component for the  c     tauybar  - contains the averaged zonal velocity component for the
127  c             whole integration period. Before, it accumulates the  c             whole integration period. Before, it accumulates the
128  c             intantaneous field.  c             intantaneous field.
129  c     hfluxbar  - contains the averaged zonal velocity component for the  c     hfluxmeanbar  - contains the averaged zonal velocity component for the
130  c             whole integration period. Before, it accumulates the  c             whole integration period. Before, it accumulates the
131  c             intantaneous field.  c             intantaneous field.
132  c     sfluxbar  - contains the averaged zonal velocity component for the  c     sfluxmeanbar  - contains the averaged zonal velocity component for the
133  c             whole integration period. Before, it accumulates the  c             whole integration period. Before, it accumulates the
134  c             intantaneous field.  c             intantaneous field.
135    
136        common /averages_r/        common /averages_r/
137       &                    tbar,       &                    tbar,
138       &                    sbar,       &                    sbar,
139         &                    sstbar,
140       &                    psbar,       &                    psbar,
141         &                    bpbar,
142         &                    iestaubar,
143       &                    ubar,       &                    ubar,
144       &                    vbar,       &                    vbar,
145       &                    wbar,       &                    wbar,
146       &                    tauxbar,       &                    tauxbar,
147       &                    tauybar,       &                    tauybar,
148       &                    hfluxbar,       &                    hfluxmeanbar,
149       &                    sfluxbar,       &                    sfluxmeanbar,
150       &                    Slmean,       &                    Slmean,
151       &                    Tlmean,       &                    Tlmean,
152       &                    wlmean,       &                    wlmean,
153       &                    Sfmean,       &                    Sfmean,
154       &                    Tfmean,                         &                    Tfmean,
155       &                    sbar_gen,       &                    sbar_gen,
156       &                    tbar_gen,       &                    tbar_gen,
157       &                    wfmean       &                    wfmean
158    
159  #if (defined (ALLOW_THETA_COST_CONTRIBUTION) || \  #if (defined (ALLOW_THETA_COST_CONTRIBUTION) || \
# Line 103  c             intantaneous field. Line 177  c             intantaneous field.
177        _RL sbar_gen        _RL sbar_gen
178  #endif  #endif
179    
180    #ifdef ALLOW_DAILYSST_COST_CONTRIBUTION
181    cph#ifdef ALLOW_SEAICE_COST_AREASST
182          _RL sstbar  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
183    #else
184          _RL sstbar
185    #endif
186    
187  #if (defined (ALLOW_SALT_COST_CONTRIBUTION) || \  #if (defined (ALLOW_SALT_COST_CONTRIBUTION) || \
188       defined (ALLOW_CTDS_COST_CONTRIBUTION) || \       defined (ALLOW_CTDS_COST_CONTRIBUTION) || \
189       defined (ALLOW_DRIFT_COST_CONTRIBUTION) || \       defined (ALLOW_DRIFT_COST_CONTRIBUTION) || \
# Line 122  c             intantaneous field. Line 203  c             intantaneous field.
203        _RL psbar        _RL psbar
204  #endif  #endif
205    
206    #ifdef ALLOW_BP_COST_CONTRIBUTION
207          _RL bpbar  (1-olx:snx+olx,1-oly:sny+oly,  nsx,nsy)
208    #else
209          _RL bpbar
210    #endif
211    
212    #ifdef ALLOW_IESTAU_COST_CONTRIBUTION
213          _RL iestaubar  (1-olx:snx+olx,1-oly:sny+oly,  nsx,nsy)
214    #else
215          _RL iestaubar
216    #endif
217    
218  #if (defined (ALLOW_DRIFTER_COST_CONTRIBUTION) || \  #if (defined (ALLOW_DRIFTER_COST_CONTRIBUTION) || \
219       defined (ALLOW_OBCS_COST_CONTRIBUTION))       defined (ALLOW_OBCS_COST_CONTRIBUTION))
220        _RL ubar  (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        _RL ubar  (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
# Line 146  c             intantaneous field. Line 239  c             intantaneous field.
239        _RL   Tlmean        _RL   Tlmean
240        _RL   Slmean        _RL   Slmean
241        _RL   Tfmean        _RL   Tfmean
242        _RL   Sfmean                _RL   Sfmean
243  #endif  #endif
244    
245  #ifdef ALLOW_DRIFTW_COST_CONTRIBUTION  #ifdef ALLOW_DRIFTW_COST_CONTRIBUTION
# Line 157  c             intantaneous field. Line 250  c             intantaneous field.
250        _RL   wfmean        _RL   wfmean
251  #endif  #endif
252    
253  #ifdef ALLOW_SCAT_COST_CONTRIBUTION  #if (defined (ALLOW_SCAT_COST_CONTRIBUTION) || \
254         defined (ALLOW_DAILYSCAT_COST_CONTRIBUTION) )
255        _RL tauxbar  (1-olx:snx+olx,1-oly:sny+oly,  nsx,nsy)        _RL tauxbar  (1-olx:snx+olx,1-oly:sny+oly,  nsx,nsy)
256        _RL tauybar  (1-olx:snx+olx,1-oly:sny+oly,  nsx,nsy)        _RL tauybar  (1-olx:snx+olx,1-oly:sny+oly,  nsx,nsy)
257  #else  #else
258        _RL tauxbar        _RL tauxbar
259        _RL tauybar        _RL tauybar
260  #endif  #endif
261    
262  #ifdef ALLOW_MEAN_HFLUX_COST_CONTRIBUTION  #ifdef ALLOW_MEAN_HFLUX_COST_CONTRIBUTION
263        _RL hfluxbar  (1-olx:snx+olx,1-oly:sny+oly,  nsx,nsy)        _RL hfluxmeanbar  (1-olx:snx+olx,1-oly:sny+oly,  nsx,nsy)
264  #else  #else
265        _RL hfluxbar        _RL hfluxmeanbar
266  #endif  #endif
267    
268  #ifdef ALLOW_MEAN_SFLUX_COST_CONTRIBUTION  #ifdef ALLOW_MEAN_SFLUX_COST_CONTRIBUTION
269        _RL sfluxbar  (1-olx:snx+olx,1-oly:sny+oly,  nsx,nsy)            _RL sfluxmeanbar  (1-olx:snx+olx,1-oly:sny+oly,  nsx,nsy)
270  #else  #else
271        _RL sfluxbar        _RL sfluxmeanbar
272  #endif  #endif
273    
274    
275        common /averages_c/        common /averages_c/
276       &                    tbarfile,       &                    tbarfile,
277       &                    sbarfile,       &                    sbarfile,
278         &                    sstbarfile,
279       &                    psbarfile,       &                    psbarfile,
280         &                    bpbarfile,
281         &                    iestaubarfile,
282       &                    ubarfile,       &                    ubarfile,
283       &                    vbarfile,       &                    vbarfile,
284       &                    wbarfile,       &                    wbarfile,
285       &                    tauxbarfile,       &                    tauxbarfile,
286       &                    tauybarfile,       &                    tauybarfile,
287       &                    hfluxbarfile,       &                    hfluxmeanbarfile,
288       &                    sfluxbarfile       &                    sfluxmeanbarfile,
289         &                    costTranspDataFile
290        character*(MAX_LEN_FNAM) tbarfile        character*(MAX_LEN_FNAM) tbarfile
291        character*(MAX_LEN_FNAM) sbarfile        character*(MAX_LEN_FNAM) sbarfile
292          character*(MAX_LEN_FNAM) sstbarfile
293        character*(MAX_LEN_FNAM) psbarfile        character*(MAX_LEN_FNAM) psbarfile
294          character*(MAX_LEN_FNAM) bpbarfile
295          character*(MAX_LEN_FNAM) iestaubarfile
296        character*(MAX_LEN_FNAM) ubarfile        character*(MAX_LEN_FNAM) ubarfile
297        character*(MAX_LEN_FNAM) vbarfile        character*(MAX_LEN_FNAM) vbarfile
298        character*(MAX_LEN_FNAM) wbarfile        character*(MAX_LEN_FNAM) wbarfile
299        character*(MAX_LEN_FNAM) tauxbarfile        character*(MAX_LEN_FNAM) tauxbarfile
300        character*(MAX_LEN_FNAM) tauybarfile        character*(MAX_LEN_FNAM) tauybarfile
301        character*(MAX_LEN_FNAM) hfluxbarfile        character*(MAX_LEN_FNAM) hfluxmeanbarfile
302        character*(MAX_LEN_FNAM) sfluxbarfile        character*(MAX_LEN_FNAM) sfluxmeanbarfile
303          character*(MAX_LEN_FNAM) costTranspDataFile
304    
305    #ifdef ALLOW_TRANSPORT_COST_CONTRIBUTION
306          common /averages_transp_r/
307         &                     transpbar
308         &                   , transpobs
309         &                   , wtransp
310          _RL transpbar(maxNumDays,nsx,nsy)
311          _RL transpobs(maxNumDays)
312          _RL wtransp(maxNumDays)
313    #endif
314    
315  c     file precision and field type  c     file precision and field type
316    
317        common /prec_type_cost/        common /prec_type_cost/
318       &                        cost_iprec,       &                        cost_iprec,
319       &                        cost_yftype       &                        cost_yftype
320    
# Line 256  c     objf_hfluxmm    - Global time-mean Line 368  c     objf_hfluxmm    - Global time-mean
368  c     objf_sfluxmm    - Global time-mean Salt flux contribution.  c     objf_sfluxmm    - Global time-mean Salt flux contribution.
369  c     objf_hmean - Mean sea surface height contribution.  c     objf_hmean - Mean sea surface height contribution.
370  c     objf_h     - Residual sea surface height contribution.  c     objf_h     - Residual sea surface height contribution.
371    c     objf_tp    - Residual sea surface height contribution from T/P
372    c     objf_ers   - Residual sea surface height contribution from T/P
373    c     objf_gfo   - Residual sea surface height contribution from T/P
374  c     objf_temp  - Temperature contribution.  c     objf_temp  - Temperature contribution.
375  c     objf_salt  - Salinity contribution.  c     objf_salt  - Salinity contribution.
376  c     objf_temp0 - Initial conditions Temperature contribution.  c     objf_temp0 - Initial conditions Temperature contribution.
# Line 263  c     objf_salt0 - Initial conditions Sa Line 378  c     objf_salt0 - Initial conditions Sa
378  c     objf_sst   - Sea surface temperature contribution.  c     objf_sst   - Sea surface temperature contribution.
379  c     objf_tmi   - Sea surface temperature contribution.  c     objf_tmi   - Sea surface temperature contribution.
380  c     objf_sss   - Sea surface salinity contribution.  c     objf_sss   - Sea surface salinity contribution.
381  c     objf_ctdt  - Temperature measurements from Woce CTD  c     objf_ctdt  - Temperature measurements from Woce CTD
382  c     objf_ctds  - Salinity measurements from Woce CTD  c     objf_ctds  - Salinity measurements from Woce CTD
383  c     objf_ctdtclim - Temperature measurements from Woce CTD without timetag  c     objf_ctdtclim - Temperature measurements from Woce CTD without timetag
384  c     objf_ctdsclim - Salinity measurements from Woce CTD without timetag  c     objf_ctdsclim - Salinity measurements from Woce CTD without timetag
385  c     objf_xbt   - XBT temperature data  c     objf_xbt   - XBT temperature data
386  c     objf_argot - ARGO temperature profiles  c     objf_argot - ARGO temperature profiles
387  c     objf_argos - ARGO salt profiles  c     objf_argos - ARGO salt profiles
388    c     objf_usercost - user defined cost contribution
389  c     objf_scatxm - time-mean zonal SCAT  contribution  c     objf_scatxm - time-mean zonal SCAT  contribution
390  c     objf_scatym - time-mean meridional SCAT  contribution  c     objf_scatym - time-mean meridional SCAT  contribution
391  c     objf_scatx  - zonal SCAT  contribution  c     objf_scatx  - zonal SCAT  contribution
392  c     objf_scaty  - meridional SCAT  contribution  c     objf_scaty  - meridional SCAT  contribution
 c     objf_ice    - sea-ice volume  
393  c     objf_kapgm  - kappa GM contribution  c     objf_kapgm  - kappa GM contribution
394    c     objf_kapredi  - kappa REDI contribution
395  c     objf_diffkr - diffusion contribution  c     objf_diffkr - diffusion contribution
396  c     objf_theta_ini_fin - final vs. initial theta misfit  c     objf_theta_ini_fin - final vs. initial theta misfit
397  c     objf_salt_ini_fin  - final vs. initial salt misfit  c     objf_salt_ini_fin  - final vs. initial salt misfit
398    c     objf_eddytau - eddy streamfunction contribution
399    c     objf_bottomdrag - bottom drag contribution
400  c  c
401  c     mult_"var" - multipliers for the individual cost  c     mult_"var" - multipliers for the individual cost
402  c                  function contributions.  c                  function contributions.
403    
404        common /ecco_cost_objf/        common /ecco_cost_objf/
405       &                objf_hflux,       &     objf_hflux, objf_hfluxm, objf_hfluxmm, objf_hfluxsmoo,
406       &                objf_hfluxm,       &     objf_sflux, objf_sfluxm, objf_sfluxmm, objf_sfluxsmoo,
407       &                objf_hfluxmm,       &     objf_tauu,  objf_tauum,  objf_tauusmoo,
408       &                objf_sflux,       &     objf_tauv,  objf_tauvm,  objf_tauvsmoo,
409       &                objf_sfluxm,       &     objf_hmean,
410       &                objf_sfluxmm,       &     objf_h, objf_tp, objf_ers, objf_gfo,
411       &                objf_tauu,       &     objf_sshv4cost,
412       &                objf_tauum,       &     objf_temp,      objf_salt,
413       &                objf_tauv,       &     objf_temp0,     objf_salt0,
414       &                objf_tauvm,       &     objf_temp0smoo, objf_salt0smoo,
415       &                objf_hmean,       &     objf_etan0, objf_uvel0, objf_vvel0,
416       &                objf_h,       &     objf_sst, objf_tmi, objf_sss,
417       &                objf_temp,       &     objf_bp, objf_ies,
418       &                objf_salt,       &     objf_usercost,
419       &                objf_temp0,       &     objf_ctdt,      objf_ctds,
420       &                objf_salt0,       &     objf_ctdtclim,  objf_ctdsclim,
421       &                objf_sst,       &     objf_xbt, objf_argot,     objf_argos,
422       &                objf_tmi,       &     objf_drift, objf_tdrift, objf_sdrift, objf_wdrift,
423       &                objf_sss,       &     objf_scatx, objf_scaty,  objf_scatxm, objf_scatym,
424       &                objf_ctdt,       &     objf_atemp,      objf_atempm,      objf_atempsmoo,
425       &                objf_ctds,       &     objf_aqh,        objf_aqhm,        objf_aqhsmoo,
426       &                objf_ctdtclim,       &     objf_precip,     objf_precipm,     objf_precipsmoo,
427       &                objf_ctdsclim,       &     objf_swflux,     objf_swfluxm,     objf_swfluxsmoo,
428       &                objf_xbt,       &     objf_swdown,     objf_swdownm,     objf_swdownsmoo,
429       &                objf_argot,       &     objf_snowprecip, objf_snowprecipm, objf_snowprecipsmoo,
430       &                objf_argos,       &     objf_lwflux,     objf_lwfluxm,     objf_lwfluxsmoo,
431       &                objf_drift,       &     objf_lwdown,     objf_lwdownm,     objf_lwdownsmoo,
432       &                objf_tdrift,       &     objf_evap,       objf_evapm,       objf_evapsmoo,
433       &                objf_sdrift,       &     objf_apressure,  objf_apressurem,  objf_apressuresmoo,
434       &                objf_wdrift,       &     objf_runoff,     objf_runoffm,     objf_runoffsmoo,
435       &                objf_scatx,       &     objf_uwind,      objf_uwindm,      objf_uwindsmoo,
436       &                objf_scaty,       &     objf_vwind,      objf_vwindm,      objf_vwindsmoo,
437       &                objf_scatxm,       &     objf_obcsn, objf_obcss, objf_obcsw, objf_obcse,
438       &                objf_scatym,       &     objf_obcsvol,
439       &                objf_atemp,       &     objf_curmtr,
440       &                objf_aqh,       &     objf_ageos,
441       &                objf_precip,       &     objf_kapgm,
442       &                objf_swflux,       &     objf_kapredi,
443       &                objf_uwind,       &     objf_diffkr,
444       &                objf_vwind,       &     objf_theta_ini_fin, objf_salt_ini_fin,
445       &                objf_atempm,       &     objf_eddytau,
446       &                objf_aqhm,       &     objf_bottomdrag,
447       &                objf_precipm,       &     objf_transp
      &                objf_swfluxm,  
      &                objf_uwindm,  
      &                objf_vwindm,  
      &                objf_obcsn,  
      &                objf_obcss,  
      &                objf_obcsw,  
      &                objf_obcse,  
      &                objf_obcsvol,  
      &                objf_curmtr,  
      &                objf_ageos,  
      &                objf_ice,  
      &                objf_diffkr,  
      &                objf_theta_ini_fin,  
      &                objf_salt_ini_fin,  
      &                objf_eddytau  
448    
449        _RL  objf_hflux  (nsx,nsy)        _RL  objf_hflux  (nsx,nsy)
450        _RL  objf_hfluxm (nsx,nsy)        _RL  objf_hfluxm (nsx,nsy)
451        _RL  objf_hfluxmm(nsx,nsy)        _RL  objf_hfluxmm
452          _RL  objf_hfluxsmoo  (nsx,nsy)
453        _RL  objf_sflux  (nsx,nsy)        _RL  objf_sflux  (nsx,nsy)
454        _RL  objf_sfluxm (nsx,nsy)        _RL  objf_sfluxm (nsx,nsy)
455        _RL  objf_sfluxmm(nsx,nsy)        _RL  objf_sfluxmm
456          _RL  objf_sfluxsmoo  (nsx,nsy)
457        _RL  objf_tauu   (nsx,nsy)        _RL  objf_tauu   (nsx,nsy)
458        _RL  objf_tauum  (nsx,nsy)        _RL  objf_tauum  (nsx,nsy)
459          _RL  objf_tauusmoo   (nsx,nsy)
460        _RL  objf_tauv   (nsx,nsy)        _RL  objf_tauv   (nsx,nsy)
461        _RL  objf_tauvm  (nsx,nsy)        _RL  objf_tauvm  (nsx,nsy)
462          _RL  objf_tauvsmoo   (nsx,nsy)
463        _RL  objf_hmean        _RL  objf_hmean
464        _RL  objf_h    (nsx,nsy)        _RL  objf_h    (nsx,nsy)
465          _RL  objf_tp   (nsx,nsy)
466          _RL  objf_ers  (nsx,nsy)
467          _RL  objf_gfo  (nsx,nsy)
468          _RL  objf_sshv4cost(NSSHV4COST,nsx,nsy)
469        _RL  objf_temp (nsx,nsy)        _RL  objf_temp (nsx,nsy)
470        _RL  objf_salt (nsx,nsy)        _RL  objf_salt (nsx,nsy)
471        _RL  objf_temp0(nsx,nsy)        _RL  objf_temp0(nsx,nsy)
472        _RL  objf_salt0(nsx,nsy)        _RL  objf_salt0(nsx,nsy)
473          _RL  objf_temp0smoo(nsx,nsy)
474          _RL  objf_salt0smoo(nsx,nsy)
475          _RL  objf_etan0(nsx,nsy)
476          _RL  objf_uvel0(nsx,nsy)
477          _RL  objf_vvel0(nsx,nsy)
478        _RL  objf_sst  (nsx,nsy)        _RL  objf_sst  (nsx,nsy)
479        _RL  objf_tmi  (nsx,nsy)        _RL  objf_tmi  (nsx,nsy)
480        _RL  objf_sss  (nsx,nsy)        _RL  objf_sss  (nsx,nsy)
481          _RL  objf_bp   (nsx,nsy)
482          _RL  objf_ies  (nsx,nsy)
483        _RL  objf_ctdt (nsx,nsy)        _RL  objf_ctdt (nsx,nsy)
484        _RL  objf_ctds (nsx,nsy)        _RL  objf_ctds (nsx,nsy)
485        _RL  objf_ctdtclim (nsx,nsy)        _RL  objf_ctdtclim (nsx,nsy)
486        _RL  objf_ctdsclim (nsx,nsy)        _RL  objf_ctdsclim (nsx,nsy)
487        _RL  objf_xbt  (nsx,nsy)        _RL  objf_xbt  (nsx,nsy)
488        _RL  objf_argot(nsx,nsy)        _RL  objf_argot(nsx,nsy)
489          _RL  objf_usercost(NUSERCOST,nsx,nsy)
490        _RL  objf_argos(nsx,nsy)        _RL  objf_argos(nsx,nsy)
491        _RL  objf_drift(nsx,nsy)        _RL  objf_drift(nsx,nsy)
492        _RL  objf_tdrift(nsx,nsy)        _RL  objf_tdrift(nsx,nsy)
# Line 381  c                  function contribution Line 500  c                  function contribution
500        _RL  objf_aqh  (nsx,nsy)        _RL  objf_aqh  (nsx,nsy)
501        _RL  objf_precip(nsx,nsy)        _RL  objf_precip(nsx,nsy)
502        _RL  objf_swflux(nsx,nsy)        _RL  objf_swflux(nsx,nsy)
503          _RL  objf_swdown(nsx,nsy)
504          _RL  objf_snowprecip(nsx,nsy)
505          _RL  objf_lwflux(nsx,nsy)
506          _RL  objf_lwdown(nsx,nsy)
507          _RL  objf_evap(nsx,nsy)
508          _RL  objf_apressure(nsx,nsy)
509          _RL  objf_runoff(nsx,nsy)
510        _RL  objf_uwind(nsx,nsy)        _RL  objf_uwind(nsx,nsy)
511        _RL  objf_vwind(nsx,nsy)        _RL  objf_vwind(nsx,nsy)
512        _RL  objf_atempm(nsx,nsy)        _RL  objf_atempm(nsx,nsy)
513        _RL  objf_aqhm  (nsx,nsy)        _RL  objf_aqhm  (nsx,nsy)
514        _RL  objf_precipm(nsx,nsy)        _RL  objf_precipm(nsx,nsy)
515        _RL  objf_swfluxm(nsx,nsy)        _RL  objf_swfluxm(nsx,nsy)
516          _RL  objf_swdownm(nsx,nsy)
517          _RL  objf_snowprecipm(nsx,nsy)
518          _RL  objf_lwfluxm(nsx,nsy)
519          _RL  objf_lwdownm(nsx,nsy)
520          _RL  objf_evapm(nsx,nsy)
521          _RL  objf_apressurem(nsx,nsy)
522          _RL  objf_runoffm(nsx,nsy)
523        _RL  objf_uwindm(nsx,nsy)        _RL  objf_uwindm(nsx,nsy)
524        _RL  objf_vwindm(nsx,nsy)        _RL  objf_vwindm(nsx,nsy)
525          _RL  objf_atempsmoo(nsx,nsy)
526          _RL  objf_aqhsmoo  (nsx,nsy)
527          _RL  objf_precipsmoo(nsx,nsy)
528          _RL  objf_swfluxsmoo(nsx,nsy)
529          _RL  objf_swdownsmoo(nsx,nsy)
530          _RL  objf_snowprecipsmoo(nsx,nsy)
531          _RL  objf_lwfluxsmoo(nsx,nsy)
532          _RL  objf_lwdownsmoo(nsx,nsy)
533          _RL  objf_evapsmoo(nsx,nsy)
534          _RL  objf_apressuresmoo(nsx,nsy)
535          _RL  objf_runoffsmoo(nsx,nsy)
536          _RL  objf_uwindsmoo(nsx,nsy)
537          _RL  objf_vwindsmoo(nsx,nsy)
538        _RL  objf_obcsn(nsx,nsy)        _RL  objf_obcsn(nsx,nsy)
539        _RL  objf_obcss(nsx,nsy)        _RL  objf_obcss(nsx,nsy)
540        _RL  objf_obcsw(nsx,nsy)        _RL  objf_obcsw(nsx,nsy)
# Line 396  c                  function contribution Line 542  c                  function contribution
542        _RL  objf_obcsvol        _RL  objf_obcsvol
543        _RL  objf_curmtr(nsx,nsy)        _RL  objf_curmtr(nsx,nsy)
544        _RL  objf_ageos(nsx,nsy)        _RL  objf_ageos(nsx,nsy)
       _RL  objf_ice  (nsx,nsy)  
545        _RL  objf_kapgm(nsx,nsy)        _RL  objf_kapgm(nsx,nsy)
546          _RL  objf_kapredi(nsx,nsy)
547        _RL  objf_diffkr(nsx,nsy)        _RL  objf_diffkr(nsx,nsy)
548        _RL  objf_theta_ini_fin(nsx,nsy)        _RL  objf_theta_ini_fin(nsx,nsy)
549        _RL  objf_salt_ini_fin(nsx,nsy)        _RL  objf_salt_ini_fin(nsx,nsy)
550        _RL  objf_eddytau(nsx,nsy)        _RL  objf_eddytau(nsx,nsy)
551          _RL  objf_bottomdrag(nsx,nsy)
552          _RL  objf_transp
553    
554        common /ecco_cost_num/        common /ecco_cost_num/
555       &                num_hflux,       &                num_hflux,
# Line 416  c                  function contribution Line 564  c                  function contribution
564       &                num_tauvm,       &                num_tauvm,
565       &                num_hmean,       &                num_hmean,
566       &                num_h,       &                num_h,
567         &                num_tp,
568         &                num_ers,
569         &                num_gfo,
570         &                num_sshv4cost,
571       &                num_temp,       &                num_temp,
572       &                num_salt,       &                num_salt,
573       &                num_temp0,       &                num_temp0,
574       &                num_salt0,       &                num_salt0,
575         &                num_etan0,
576         &                num_uvel0,
577         &                num_vvel0,
578       &                num_sst,       &                num_sst,
579       &                num_tmi,       &                num_tmi,
580       &                num_sss,       &                num_sss,
581         &                num_bp,
582         &                num_ies,
583       &                num_ctdt,       &                num_ctdt,
584       &                num_ctds,       &                num_ctds,
585       &                num_ctdtclim,       &                num_ctdtclim,
# Line 430  c                  function contribution Line 587  c                  function contribution
587       &                num_xbt,       &                num_xbt,
588       &                num_argot,       &                num_argot,
589       &                num_argos,       &                num_argos,
590         &                num_usercost,
591       &                num_drift,       &                num_drift,
592       &                num_tdrift,       &                num_tdrift,
593       &                num_sdrift,       &                num_sdrift,
# Line 442  c                  function contribution Line 600  c                  function contribution
600       &                num_aqh,       &                num_aqh,
601       &                num_precip,       &                num_precip,
602       &                num_swflux,       &                num_swflux,
603         &                num_swdown,
604         &                num_snowprecip,
605         &                num_lwflux,
606         &                num_lwdown,
607         &                num_evap,
608         &                num_apressure,
609         &                num_runoff,
610       &                num_uwind,       &                num_uwind,
611       &                num_vwind,       &                num_vwind,
612       &                num_atempm,       &                num_atempm,
613       &                num_aqhm,       &                num_aqhm,
614       &                num_precipm,       &                num_precipm,
615       &                num_swfluxm,       &                num_swfluxm,
616         &                num_swdownm,
617         &                num_snowprecipm,
618         &                num_lwfluxm,
619         &                num_lwdownm,
620         &                num_evapm,
621         &                num_apressurem,
622         &                num_runoffm,
623       &                num_uwindm,       &                num_uwindm,
624       &                num_vwindm,       &                num_vwindm,
625       &                num_obcsn,       &                num_obcsn,
# Line 457  c                  function contribution Line 629  c                  function contribution
629       &                num_obcsvol,       &                num_obcsvol,
630       &                num_curmtr,       &                num_curmtr,
631       &                num_ageos,       &                num_ageos,
632       &                num_ice,       &                num_kapgm,
633         &                num_kapredi,
634       &                num_diffkr,       &                num_diffkr,
635       &                num_theta_ini_fin,       &                num_theta_ini_fin,
636       &                num_salt_ini_fin,       &                num_salt_ini_fin,
637       &                num_eddytau       &                num_eddytau,
638         &                num_bottomdrag,
639         &                num_transp
640    
641        _RL  num_hflux  (nsx,nsy)        _RL  num_hflux  (nsx,nsy)
642        _RL  num_hfluxm (nsx,nsy)        _RL  num_hfluxm (nsx,nsy)
# Line 475  c                  function contribution Line 650  c                  function contribution
650        _RL  num_tauvm  (nsx,nsy)        _RL  num_tauvm  (nsx,nsy)
651        _RL  num_hmean        _RL  num_hmean
652        _RL  num_h    (nsx,nsy)        _RL  num_h    (nsx,nsy)
653          _RL  num_tp   (nsx,nsy)
654          _RL  num_ers  (nsx,nsy)
655          _RL  num_gfo  (nsx,nsy)
656          _RL  num_sshv4cost(NSSHV4COST,nsx,nsy)
657        _RL  num_temp (nsx,nsy)        _RL  num_temp (nsx,nsy)
658        _RL  num_salt (nsx,nsy)        _RL  num_salt (nsx,nsy)
659        _RL  num_temp0(nsx,nsy)        _RL  num_temp0(nsx,nsy)
660        _RL  num_salt0(nsx,nsy)        _RL  num_salt0(nsx,nsy)
661          _RL  num_etan0(nsx,nsy)
662          _RL  num_uvel0(nsx,nsy)
663          _RL  num_vvel0(nsx,nsy)
664        _RL  num_sst  (nsx,nsy)        _RL  num_sst  (nsx,nsy)
665        _RL  num_tmi  (nsx,nsy)        _RL  num_tmi  (nsx,nsy)
666        _RL  num_sss  (nsx,nsy)        _RL  num_sss  (nsx,nsy)
667          _RL  num_bp   (nsx,nsy)
668          _RL  num_ies  (nsx,nsy)
669        _RL  num_ctdt (nsx,nsy)        _RL  num_ctdt (nsx,nsy)
670        _RL  num_ctds (nsx,nsy)        _RL  num_ctds (nsx,nsy)
671        _RL  num_ctdtclim (nsx,nsy)        _RL  num_ctdtclim (nsx,nsy)
# Line 489  c                  function contribution Line 673  c                  function contribution
673        _RL  num_xbt  (nsx,nsy)        _RL  num_xbt  (nsx,nsy)
674        _RL  num_argot(nsx,nsy)        _RL  num_argot(nsx,nsy)
675        _RL  num_argos(nsx,nsy)        _RL  num_argos(nsx,nsy)
676          _RL  num_usercost(NUSERCOST,nsx,nsy)
677        _RL  num_drift(nsx,nsy)        _RL  num_drift(nsx,nsy)
678        _RL  num_tdrift(nsx,nsy)        _RL  num_tdrift(nsx,nsy)
679        _RL  num_sdrift(nsx,nsy)        _RL  num_sdrift(nsx,nsy)
# Line 501  c                  function contribution Line 686  c                  function contribution
686        _RL  num_aqh  (nsx,nsy)        _RL  num_aqh  (nsx,nsy)
687        _RL  num_precip(nsx,nsy)        _RL  num_precip(nsx,nsy)
688        _RL  num_swflux(nsx,nsy)        _RL  num_swflux(nsx,nsy)
689          _RL  num_swdown(nsx,nsy)
690          _RL  num_snowprecip(nsx,nsy)
691          _RL  num_lwflux(nsx,nsy)
692          _RL  num_lwdown(nsx,nsy)
693          _RL  num_evap(nsx,nsy)
694          _RL  num_apressure(nsx,nsy)
695          _RL  num_runoff(nsx,nsy)
696        _RL  num_uwind(nsx,nsy)        _RL  num_uwind(nsx,nsy)
697        _RL  num_vwind(nsx,nsy)        _RL  num_vwind(nsx,nsy)
698        _RL  num_atempm(nsx,nsy)        _RL  num_atempm(nsx,nsy)
699        _RL  num_aqhm  (nsx,nsy)        _RL  num_aqhm  (nsx,nsy)
700        _RL  num_precipm(nsx,nsy)        _RL  num_precipm(nsx,nsy)
701        _RL  num_swfluxm(nsx,nsy)        _RL  num_swfluxm(nsx,nsy)
702          _RL  num_swdownm(nsx,nsy)
703          _RL  num_snowprecipm(nsx,nsy)
704          _RL  num_lwfluxm(nsx,nsy)
705          _RL  num_lwdownm(nsx,nsy)
706          _RL  num_evapm(nsx,nsy)
707          _RL  num_apressurem(nsx,nsy)
708          _RL  num_runoffm(nsx,nsy)
709        _RL  num_uwindm(nsx,nsy)        _RL  num_uwindm(nsx,nsy)
710        _RL  num_vwindm(nsx,nsy)        _RL  num_vwindm(nsx,nsy)
711        _RL  num_obcsn(nsx,nsy)        _RL  num_obcsn(nsx,nsy)
# Line 516  c                  function contribution Line 715  c                  function contribution
715        _RL  num_obcsvol        _RL  num_obcsvol
716        _RL  num_curmtr(nsx,nsy)        _RL  num_curmtr(nsx,nsy)
717        _RL  num_ageos(nsx,nsy)        _RL  num_ageos(nsx,nsy)
       _RL  num_ice  (nsx,nsy)  
718        _RL  num_kapgm(nsx,nsy)        _RL  num_kapgm(nsx,nsy)
719          _RL  num_kapredi(nsx,nsy)
720        _RL  num_diffkr(nsx,nsy)        _RL  num_diffkr(nsx,nsy)
721        _RL  num_theta_ini_fin(nsx,nsy)        _RL  num_theta_ini_fin(nsx,nsy)
722        _RL  num_salt_ini_fin(nsx,nsy)        _RL  num_salt_ini_fin(nsx,nsy)
723        _RL  num_eddytau(nsx,nsy)        _RL  num_eddytau(nsx,nsy)
724          _RL  num_bottomdrag(nsx,nsy)
725          _RL  num_transp
726    
727        common /ecco_cost_aux_r/        common /ecco_cost_aux_r/
728       &                    mult_hflux,       &                    mult_hflux,
729       &                    mult_sflux,       &                    mult_sflux,
730         &                    mult_hfluxmm,
731         &                    mult_sfluxmm,
732       &                    mult_tauu,       &                    mult_tauu,
733       &                    mult_tauv,       &                    mult_tauv,
734       &                    mult_hmean,       &                    mult_hmean,
735       &                    mult_h,       &                    mult_h,
736         &                    mult_tp,
737         &                    mult_ers,
738         &                    mult_gfo,
739         &                    mult_sshv4cost,
740       &                    mult_temp,       &                    mult_temp,
741       &                    mult_salt,       &                    mult_salt,
742       &                    mult_temp0,       &                    mult_temp0,
743       &                    mult_salt0,       &                    mult_salt0,
744         &                    mult_etan0,
745         &                    mult_uvel0,
746         &                    mult_vvel0,
747       &                    mult_sst,       &                    mult_sst,
748       &                    mult_tmi,       &                    mult_tmi,
749       &                    mult_sss,       &                    mult_sss,
750         &                    mult_bp,
751         &                    mult_ies,
752       &                    mult_ctdt,       &                    mult_ctdt,
753       &                    mult_ctds,       &                    mult_ctds,
754       &                    mult_ctdtclim,       &                    mult_ctdtclim,
# Line 544  c                  function contribution Line 756  c                  function contribution
756       &                    mult_xbt,       &                    mult_xbt,
757       &                    mult_argot,       &                    mult_argot,
758       &                    mult_argos,       &                    mult_argos,
759         &                    mult_usercost,
760       &                    mult_drift,       &                    mult_drift,
761       &                    mult_tdrift,       &                    mult_tdrift,
762       &                    mult_sdrift,       &                    mult_sdrift,
# Line 554  c                  function contribution Line 767  c                  function contribution
767       &                    mult_aqh,       &                    mult_aqh,
768       &                    mult_precip,       &                    mult_precip,
769       &                    mult_swflux,       &                    mult_swflux,
770         &                    mult_swdown,
771         &                    mult_snowprecip,
772         &                    mult_lwflux,
773         &                    mult_lwdown,
774         &                    mult_evap,
775         &                    mult_apressure,
776         &                    mult_runoff,
777       &                    mult_uwind,       &                    mult_uwind,
778       &                    mult_vwind,       &                    mult_vwind,
779       &                    mult_obcsn,       &                    mult_obcsn,
# Line 563  c                  function contribution Line 783  c                  function contribution
783       &                    mult_obcsvol,       &                    mult_obcsvol,
784       &                    mult_curmtr,       &                    mult_curmtr,
785       &                    mult_ageos,       &                    mult_ageos,
      &                    mult_ice,  
786       &                    mult_kapgm,       &                    mult_kapgm,
787         &                    mult_kapredi,
788       &                    mult_diffkr,       &                    mult_diffkr,
789       &                    mult_ini_fin,       &                    mult_ini_fin,
790       &                    mult_eddytau       &                    mult_edtau,
791         &                    mult_bottomdrag,
792         &                    mult_smooth_ic,
793         &                    mult_smooth_bc,
794         &                    mult_transp
795        _RL  mult_hflux        _RL  mult_hflux
796        _RL  mult_sflux        _RL  mult_sflux
797          _RL  mult_hfluxmm
798          _RL  mult_sfluxmm
799        _RL  mult_tauu        _RL  mult_tauu
800        _RL  mult_tauv        _RL  mult_tauv
801        _RL  mult_hmean        _RL  mult_hmean
802        _RL  mult_h        _RL  mult_h
803          _RL  mult_tp
804          _RL  mult_ers
805          _RL  mult_gfo
806          _RL  mult_sshv4cost(NSSHV4COST)
807        _RL  mult_temp        _RL  mult_temp
808        _RL  mult_salt        _RL  mult_salt
809        _RL  mult_temp0        _RL  mult_temp0
810        _RL  mult_salt0        _RL  mult_salt0
811          _RL  mult_etan0
812          _RL  mult_uvel0
813          _RL  mult_vvel0
814        _RL  mult_sst        _RL  mult_sst
815        _RL  mult_tmi        _RL  mult_tmi
816        _RL  mult_sss        _RL  mult_sss
817          _RL  mult_bp
818          _RL  mult_ies
819        _RL  mult_ctdt        _RL  mult_ctdt
820        _RL  mult_ctds        _RL  mult_ctds
821        _RL  mult_ctdtclim        _RL  mult_ctdtclim
# Line 589  c                  function contribution Line 823  c                  function contribution
823        _RL  mult_xbt        _RL  mult_xbt
824        _RL  mult_argot        _RL  mult_argot
825        _RL  mult_argos        _RL  mult_argos
826          _RL  mult_usercost(NUSERCOST)
827        _RL  mult_drift        _RL  mult_drift
828        _RL  mult_tdrift        _RL  mult_tdrift
829        _RL  mult_sdrift        _RL  mult_sdrift
# Line 599  c                  function contribution Line 834  c                  function contribution
834        _RL  mult_aqh        _RL  mult_aqh
835        _RL  mult_precip        _RL  mult_precip
836        _RL  mult_swflux        _RL  mult_swflux
837          _RL  mult_swdown
838          _RL  mult_snowprecip
839          _RL  mult_lwflux
840          _RL  mult_lwdown
841          _RL  mult_evap
842          _RL  mult_apressure
843          _RL  mult_runoff
844        _RL  mult_uwind        _RL  mult_uwind
845        _RL  mult_vwind        _RL  mult_vwind
846        _RL  mult_obcsn        _RL  mult_obcsn
# Line 608  c                  function contribution Line 850  c                  function contribution
850        _RL  mult_obcsvol        _RL  mult_obcsvol
851        _RL  mult_curmtr        _RL  mult_curmtr
852        _RL  mult_ageos        _RL  mult_ageos
       _RL  mult_ice  
853        _RL  mult_kapgm        _RL  mult_kapgm
854          _RL  mult_kapredi
855        _RL  mult_diffkr        _RL  mult_diffkr
856        _RL  mult_ini_fin        _RL  mult_ini_fin
857        _RL  mult_eddytau        _RL  mult_edtau
858          _RL  mult_bottomdrag
859          _RL  mult_smooth_ic
860          _RL  mult_smooth_bc
861          _RL  mult_transp
862    
863  c     Record counters relevant for the cost function evaluation.  c     Record counters relevant for the cost function evaluation.
864  c     ==========================================================  c     ==========================================================
865  c  c
866  c     nmonsrec - number of monthly records that will be generated by  c     nyearsrec - number of yearly records that will be generated by
867  c                the current model integration.  c                 the current model integration.
868  c     ndaysrec - number of  daily  records that will be generated by  c     nmonsrec  - number of monthly records that will be generated by
869  c                the current model integration.  c                 the current model integration.
870    c     ndaysrec  - number of  daily  records that will be generated by
871    c                 the current model integration.
872    
873        common /ecco_cost_i/        common /ecco_cost_i/
874         &                nyearsrec,
875       &                nmonsrec,       &                nmonsrec,
876       &                ndaysrec       &                ndaysrec,
877         &                nnztbar,
878         &                nnzsbar
879          integer nyearsrec
880        integer nmonsrec        integer nmonsrec
881        integer ndaysrec        integer ndaysrec
882          integer nnztbar
883          integer nnzsbar
884    
885    
886  c     Data files for the weights used in the cost function:  c     Data files for the weights used in the cost function:
# Line 651  c     salterrfile           - representa Line 905  c     salterrfile           - representa
905  c     temperrfile           - representation error due unresolved eddies  c     temperrfile           - representation error due unresolved eddies
906  c     velerrfile            - representation error  c     velerrfile            - representation error
907    
908        common /ecco_cost_c/        common /ecco_cost_c/
909       &                hflux_errfile,       &                hflux_errfile,
910       &                hfluxm_errfile,       &                hfluxm_errfile,
911       &                sflux_errfile,       &                sflux_errfile,
# Line 666  c     velerrfile            - representa Line 920  c     velerrfile            - representa
920       &                geoid_errfile,       &                geoid_errfile,
921       &                geoid_covariancefile,       &                geoid_covariancefile,
922       &                ssh_errfile,       &                ssh_errfile,
923         &                tp_errfile,
924         &                ers_errfile,
925         &                gfo_errfile,
926         &                sshv4cost_scalefile,
927         &                sshv4cost_errfile,
928       &                ctdt_errfile,       &                ctdt_errfile,
929       &                ctds_errfile,       &                ctds_errfile,
930       &                drift_errfile,       &                drift_errfile,
931       &                udrifterrfile,       &                udrifterrfile,
932       &                vdrifterrfile,       &                vdrifterrfile,
933       &                salterrfile,       &                salterrfile,
934       &                temperrfile,       &                temperrfile,
935       &                velerrfile,       &                velerrfile,
936         &                salt0errfile,
937         &                temp0errfile,
938         &                etan0errfile,
939         &                uvel0errfile,
940         &                vvel0errfile,
941         &                vel0errfile,
942         &                ssterrfile,
943         &                ssserrfile,
944         &                bperrfile,
945         &                ieserrfile,
946       &                atemp_errfile,       &                atemp_errfile,
947       &                aqh_errfile,       &                aqh_errfile,
948       &                precip_errfile,       &                precip_errfile,
949       &                swflux_errfile,       &                swflux_errfile,
950         &                swdown_errfile,
951         &                snowprecip_errfile,
952         &                lwflux_errfile,
953         &                lwdown_errfile,
954         &                evap_errfile,
955         &                apressure_errfile,
956         &                runoff_errfile,
957         &                edtau_errfile,
958         &                kapgm_errfile,
959         &                kapredi_errfile,
960         &                diffkr_errfile,
961         &                bottomdrag_errfile,
962         &                usercost_errfile,
963       &                uwind_errfile,       &                uwind_errfile,
964       &                vwind_errfile       &                vwind_errfile
965        character*(MAX_LEN_FNAM) hflux_errfile        character*(MAX_LEN_FNAM) hflux_errfile
# Line 694  c     velerrfile            - representa Line 976  c     velerrfile            - representa
976        character*(MAX_LEN_FNAM) geoid_errfile        character*(MAX_LEN_FNAM) geoid_errfile
977        character*(MAX_LEN_FNAM) geoid_covariancefile        character*(MAX_LEN_FNAM) geoid_covariancefile
978        character*(MAX_LEN_FNAM) ssh_errfile        character*(MAX_LEN_FNAM) ssh_errfile
979        character*(MAX_LEN_FNAM) ctdt_errfile        character*(MAX_LEN_FNAM) tp_errfile
980        character*(MAX_LEN_FNAM) ctds_errfile        character*(MAX_LEN_FNAM) ers_errfile
981          character*(MAX_LEN_FNAM) gfo_errfile
982          character*(MAX_LEN_FNAM) sshv4cost_scalefile(NSSHV4COST)
983          character*(MAX_LEN_FNAM) sshv4cost_errfile(NSSHV4COST)
984          character*(MAX_LEN_FNAM) ctdt_errfile
985          character*(MAX_LEN_FNAM) ctds_errfile
986        character*(MAX_LEN_FNAM) drift_errfile        character*(MAX_LEN_FNAM) drift_errfile
987        character*(MAX_LEN_FNAM) udrifterrfile        character*(MAX_LEN_FNAM) udrifterrfile
988        character*(MAX_LEN_FNAM) vdrifterrfile              character*(MAX_LEN_FNAM) vdrifterrfile
989        character*(MAX_LEN_FNAM) salterrfile        character*(MAX_LEN_FNAM) salterrfile
990        character*(MAX_LEN_FNAM) temperrfile        character*(MAX_LEN_FNAM) temperrfile
991        character*(MAX_LEN_FNAM) velerrfile        character*(MAX_LEN_FNAM) velerrfile
992          character*(MAX_LEN_FNAM) salt0errfile
993          character*(MAX_LEN_FNAM) temp0errfile
994          character*(MAX_LEN_FNAM) etan0errfile
995          character*(MAX_LEN_FNAM) uvel0errfile
996          character*(MAX_LEN_FNAM) vvel0errfile
997          character*(MAX_LEN_FNAM) vel0errfile
998          character*(MAX_LEN_FNAM) ssterrfile
999          character*(MAX_LEN_FNAM) ssserrfile
1000          character*(MAX_LEN_FNAM) bperrfile
1001          character*(MAX_LEN_FNAM) ieserrfile
1002        character*(MAX_LEN_FNAM) atemp_errfile        character*(MAX_LEN_FNAM) atemp_errfile
1003        character*(MAX_LEN_FNAM) aqh_errfile        character*(MAX_LEN_FNAM) aqh_errfile
1004        character*(MAX_LEN_FNAM) precip_errfile        character*(MAX_LEN_FNAM) precip_errfile
1005        character*(MAX_LEN_FNAM) swflux_errfile        character*(MAX_LEN_FNAM) swflux_errfile
1006          character*(MAX_LEN_FNAM) swdown_errfile
1007          character*(MAX_LEN_FNAM) snowprecip_errfile
1008          character*(MAX_LEN_FNAM) lwflux_errfile
1009          character*(MAX_LEN_FNAM) lwdown_errfile
1010          character*(MAX_LEN_FNAM) evap_errfile
1011          character*(MAX_LEN_FNAM) apressure_errfile
1012          character*(MAX_LEN_FNAM) runoff_errfile
1013          character*(MAX_LEN_FNAM) edtau_errfile
1014          character*(MAX_LEN_FNAM) kapgm_errfile
1015          character*(MAX_LEN_FNAM) kapredi_errfile
1016          character*(MAX_LEN_FNAM) diffkr_errfile
1017          character*(MAX_LEN_FNAM) bottomdrag_errfile
1018          character*(MAX_LEN_FNAM) usercost_errfile(NUSERCOST)
1019        character*(MAX_LEN_FNAM) uwind_errfile        character*(MAX_LEN_FNAM) uwind_errfile
1020        character*(MAX_LEN_FNAM) vwind_errfile        character*(MAX_LEN_FNAM) vwind_errfile
1021    
# Line 733  c     wctdt      - weight for CTD temper Line 1043  c     wctdt      - weight for CTD temper
1043  c     wctds      - weight for CTD salinity.  c     wctds      - weight for CTD salinity.
1044  c     wudrift    - weight for mean zonal velocity from drifters.  c     wudrift    - weight for mean zonal velocity from drifters.
1045  c     wvdrift    - weight for mean meridional velocity from drifters.  c     wvdrift    - weight for mean meridional velocity from drifters.
1046    c     wetan      - weight for etan0
1047    
1048        common /ecco_cost_weights_r/        common /ecco_cost_weights_r/
1049       &                      frame,       &                      frame,
1050       &                      cosphi,       &                      cosphi,
1051       &                      whflux,wsflux,wtauu,wtauv,       &                      whflux,wsflux,wtauu,wtauv,
1052       &                      watemp,waqh,wprecip,wswflux,wuwind,wvwind,       &                      watemp,waqh,wprecip,wsnowprecip,
1053         &                      wswflux,wswdown,wlwflux,wlwdown,
1054         &                      wevap,wapressure,wrunoff,
1055         &                      wbottomdrag,
1056         &                      wuwind,wvwind,
1057       &                      wscatx,wscaty,       &                      wscatx,wscaty,
1058       &                      wtheta,wtheta2,wthetaLev,       &                      wtheta,wtheta2,wthetaLev,
1059       &                      wsalt,wsalt2,wsaltLev,       &                      wsalt,wsalt2,wsaltLev,
1060       &                      wsst,wsss,       &                      wdiffkr,wdiffkr2,wdiffkrFld,
1061       &                      wtp,wers,       &                      wkapgm,wkapgm2,wkapgmFld,
1062       &                      wp,       &                      wkapredi,wkapredi2,wkaprediFld,
1063         &                      wedtaux,wedtaux2,wedtauxFld,
1064         &                      wedtauy,wedtauy2,wedtauyFld,
1065         &                      wsst,wsss,wbp, wies,
1066         &                      wtp,wers,wgfo,
1067         &                      wp,wsshv4,
1068       &                      wctdt,wctds,       &                      wctdt,wctds,
1069       &                      wudrift,wvdrift,       &                      wudrift,wvdrift,
1070       &                      whfluxmm,wsfluxmm,       &                      whfluxmm,wsfluxmm,
1071       &                      wcurrent,wcurrent2,       &                      wcurrent,wcurrent2,
1072       &                      wcurrentLev,wbaro       &                      wcurrentLev,wbaro,wetan,
1073         &                      wuvel,wvvel
1074    
1075        _RL frame   (1-olx:snx+olx,1-oly:sny+oly           )        _RL frame   (1-olx:snx+olx,1-oly:sny+oly           )
1076        _RL cosphi  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL cosphi  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
# Line 769  c     wvdrift    - weight for mean merid Line 1090  c     wvdrift    - weight for mean merid
1090        _RL waqh    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL waqh    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1091        _RL wprecip (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL wprecip (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1092        _RL wswflux (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL wswflux (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1093          _RL wswdown (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1094          _RL wsnowprecip (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1095          _RL wlwflux (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1096          _RL wlwdown (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1097          _RL wevap   (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1098          _RL wapressure(1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1099          _RL wrunoff (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1100          _RL wbottomdrag (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
1101        _RL wuwind  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL wuwind  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1102        _RL wvwind  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL wvwind  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1103        _RL wtheta  (                            nr,nsx,nsy)        _RL wtheta  (                            nr,nsx,nsy)
# Line 777  c     wvdrift    - weight for mean merid Line 1106  c     wvdrift    - weight for mean merid
1106        _RL wsalt2  (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        _RL wsalt2  (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1107        _RL wthetaLev (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        _RL wthetaLev (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1108        _RL wsaltLev  (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        _RL wsaltLev  (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1109          _RL wuvel   (                            nr,nsx,nsy)
1110          _RL wvvel   (                            nr,nsx,nsy)
1111        _RL wsst    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL wsst    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1112        _RL wsss    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL wsss    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1113          _RL wbp     (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1114          _RL wies     (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1115        _RL wtp     (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL wtp     (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1116          _RL wsshv4  (1-olx:snx+olx,1-oly:sny+oly,NSSHV4COST,nsx,nsy)
1117        _RL wers    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL wers    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1118          _RL wgfo    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1119        _RL wp      (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL wp      (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1120        _RL wctdt   (                            nr,nsx,nsy)        _RL wctdt   (                            nr,nsx,nsy)
1121        _RL wctds   (                            nr,nsx,nsy)        _RL wctds   (                            nr,nsx,nsy)
# Line 790  c     wvdrift    - weight for mean merid Line 1125  c     wvdrift    - weight for mean merid
1125        _RL wcurrent2   (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        _RL wcurrent2   (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1126        _RL wcurrentLev (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        _RL wcurrentLev (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1127        _RL wbaro        _RL wbaro
1128          _RL wdiffkr (                            nr,nsx,nsy)
1129          _RL wdiffkr2 (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1130          _RL wdiffkrFld (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1131          _RL wkapgm (                            nr,nsx,nsy)
1132          _RL wkapgm2 (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1133          _RL wkapgmFld (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1134          _RL wkapredi (                            nr,nsx,nsy)
1135          _RL wkapredi2 (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1136          _RL wkaprediFld (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1137          _RL wedtaux (                            nr,nsx,nsy)
1138          _RL wedtaux2 (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1139          _RL wedtauxFld (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1140          _RL wedtauy (                            nr,nsx,nsy)
1141          _RL wedtauy2 (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1142          _RL wedtauyFld (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1143          _RL wetan   (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1144    
1145    #if (defined (ALLOW_UVEL0_COST_CONTRIBUTION) || defined (ALLOW_UVEL0_CONTROL))
1146    #if (defined (ALLOW_VVEL0_COST_CONTRIBUTION) || defined (ALLOW_VVEL0_CONTROL))
1147    c     wuvel3d      - weight for uvel0
1148    c     wvvel3d      - weight for vvel0
1149    c
1150          common /ecco_cost_weights_vel_r/
1151         &                      wuvel3d, wvvel3d  
1152    c
1153          _RL wuvel3d(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1154          _RL wvvel3d(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1155    #endif
1156    #endif
1157    
1158        common /ecco_cost_weights_0_r/        common /ecco_cost_weights_0_r/
1159       &        whflux0, wsflux0, wtau0,       &        whflux0, wsflux0, wtau0,
1160       &        watemp0, waqh0, wprecip0, wswflux0, wwind0       &        watemp0, waqh0, wprecip0, wsnowprecip0, wwind0,
1161         &        wswflux0, wswdown0, wlwflux0, wlwdown0,
1162         &        wevap0, wapressure0, wrunoff0, wkapredi0,
1163         &        wbottomdrag0,wdiffkr0, wkapgm0, wedtau0
1164        _RL whflux0        _RL whflux0
1165        _RL wsflux0        _RL wsflux0
1166        _RL wtau0        _RL wtau0
# Line 801  c     wvdrift    - weight for mean merid Line 1168  c     wvdrift    - weight for mean merid
1168        _RL waqh0        _RL waqh0
1169        _RL wprecip0        _RL wprecip0
1170        _RL wswflux0        _RL wswflux0
1171          _RL wswdown0
1172          _RL wsnowprecip0
1173          _RL wlwflux0
1174          _RL wlwdown0
1175          _RL wevap0
1176          _RL wapressure0
1177          _RL wrunoff0
1178          _RL wbottomdrag0
1179        _RL wwind0        _RL wwind0
1180          _RL wdiffkr0
1181          _RL wkapgm0
1182          _RL wkapredi0
1183          _RL wedtau0
1184    
1185        common /ecco_cost_weights_mean_r/        common /ecco_cost_weights_mean_r/
1186       &        wmean_hflux, wmean_sflux, wmean_tau,       &        wmean_hflux, wmean_sflux, wmean_tau,
1187       &        wmean_atemp, wmean_aqh,       &        wmean_atemp, wmean_aqh,
1188       &        wmean_precip, wmean_swflux, wmean_wind       &        wmean_precip, wmean_snowprecip, wmean_wind,
1189         &        wmean_swflux, wmean_swdown, wmean_lwflux, wmean_lwdown,
1190         &        wmean_evap, wmean_apressure, wmean_runoff
1191        _RL wmean_hflux        _RL wmean_hflux
1192        _RL wmean_sflux        _RL wmean_sflux
1193        _RL wmean_tau        _RL wmean_tau
# Line 814  c     wvdrift    - weight for mean merid Line 1195  c     wvdrift    - weight for mean merid
1195        _RL wmean_aqh        _RL wmean_aqh
1196        _RL wmean_precip        _RL wmean_precip
1197        _RL wmean_swflux        _RL wmean_swflux
1198          _RL wmean_swdown
1199          _RL wmean_snowprecip
1200          _RL wmean_lwflux
1201          _RL wmean_lwdown
1202          _RL wmean_evap
1203          _RL wmean_apressure
1204          _RL wmean_runoff
1205        _RL wmean_wind        _RL wmean_wind
1206                                                    
1207        common /ecco_cost_weights_2_r/        common /ecco_cost_weights_2_r/
1208       &                      whflux2,wsflux2,wtauu2,wtauv2       &                      whflux2,wsflux2,wtauu2,wtauv2
1209        _RL whflux2 (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL whflux2 (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1210        _RL wsflux2 (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL wsflux2 (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1211        _RL wtauu2  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL wtauu2  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1212        _RL wtauv2  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL wtauv2  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
                                                   
                         
1213    
1214  #if (defined (ALLOW_OBCSN_COST_CONTRIBUTION) || \  #if (defined (ALLOW_OBCSN_COST_CONTRIBUTION) || \
1215       defined (ALLOW_OBCSN_CONTROL))       defined (ALLOW_OBCSN_CONTROL))
# Line 864  c     scatydat   - reference meridional Line 1250  c     scatydat   - reference meridional
1250  c     sstdat     - reference sea surface temperature data.  c     sstdat     - reference sea surface temperature data.
1251  c     tmidat     - reference TMI sea surface temperature data.  c     tmidat     - reference TMI sea surface temperature data.
1252  c     sssdat     - reference sea surface temperature data.  c     sssdat     - reference sea surface temperature data.
1253    c     bpdat      - bottom pressure from time-varying GRACE.
1254    c     iesdat     - roundtrip travel time from IES
1255  c     tauxmask   - mask for reference wind stress data.  c     tauxmask   - mask for reference wind stress data.
1256  c     tauymask   - mask for reference wind stress data.  c     tauymask   - mask for reference wind stress data.
1257  c     scatxmask  - mask for scat wind stress data.  c     scatxmask  - mask for scat wind stress data.
1258  c     scatymask  - mask for scat wind stress data.  c     scatymask  - mask for scat wind stress data.
1259  c     sstmask    - mask for reference sea surface temperature data.  c     sstmask    - mask for reference sea surface temperature data.
1260  c     tmimask    - mask for reference sea surface temperature data.  c     tmimask    - mask for reference sea surface temperature data.
1261  c     sssmask    - mask for reference sea surface temperature data.  c     sssmask    - mask for reference sea surface temperature data.
# Line 880  c     ersobs     - ERS data. Line 1268  c     ersobs     - ERS data.
1268  c     ersmask    - mask for ERS data.  c     ersmask    - mask for ERS data.
1269  c     ctdtobs    - CTD temperature data  c     ctdtobs    - CTD temperature data
1270  c     ctdsobs    - CTD salinity data  c     ctdsobs    - CTD salinity data
1271  c     xbtobs     - XBT data  c     xbtobs     - XBT data
1272  c     argot      - ARGO  temperature data  c     argot      - ARGO  temperature data
1273  c     argos      - ARGO  salt data  c     argos      - ARGO  salt data
1274  c     udriftdat  - drifters zonal velocities  c     udriftdat  - drifters zonal velocities
1275  c     vdriftdat  - drifters meridional velocities  c     vdriftdat  - drifters meridional velocities
1276    
# Line 890  c     vdriftdat  - drifters meridional v Line 1278  c     vdriftdat  - drifters meridional v
1278       &                     tdat,       &                     tdat,
1279       &                     scatxdat,       &                     scatxdat,
1280       &                     scatydat,       &                     scatydat,
1281       &                     sstdat,       &                     bpdat,
1282       &                     tmidat,       &                     iesdat,
      &                     sssdat,  
1283       &                     sstmask,       &                     sstmask,
1284       &                     tmimask,       &                     tmimask,
1285       &                     sssmask,       &                     sssmask,
1286         &                     bpmask,
1287         &                     iesmask,
1288       &                     tauxmask,       &                     tauxmask,
1289       &                     tauymask,       &                     tauymask,
1290       &                     scatxmask,       &                     scatxmask,
# Line 907  c     vdriftdat  - drifters meridional v Line 1296  c     vdriftdat  - drifters meridional v
1296       &                     tpmask,       &                     tpmask,
1297       &                     ersobs,       &                     ersobs,
1298       &                     ersmask,       &                     ersmask,
1299         &                     gfoobs,
1300         &                     gfomask,
1301       &                     ctdtobs,       &                     ctdtobs,
1302       &                     ctdsobs,       &                     ctdsobs,
1303       &                     xbtobs,       &                     xbtobs,
# Line 916  c     vdriftdat  - drifters meridional v Line 1307  c     vdriftdat  - drifters meridional v
1307       &                     vdriftdat,       &                     vdriftdat,
1308       &                     curmtruobs,       &                     curmtruobs,
1309       &                     curmtrvobs       &                     curmtrvobs
1310        
1311        _RL tdat      (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        _RL tdat      (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1312        _RL scatxdat  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL scatxdat  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1313        _RL scatydat  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL scatydat  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1314        _RL sstdat    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL bpdat     (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1315        _RL tmidat    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL iesdat     (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
       _RL sssdat    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)  
1316        _RL tauxmask  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL tauxmask  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1317        _RL tauymask  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL tauymask  (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1318        _RL scatxmask (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL scatxmask (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
# Line 930  c     vdriftdat  - drifters meridional v Line 1320  c     vdriftdat  - drifters meridional v
1320        _RL sstmask   (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL sstmask   (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1321        _RL tmimask   (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL tmimask   (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1322        _RL sssmask   (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL sssmask   (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1323          _RL bpmask    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1324          _RL iesmask    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1325        _RL sdat      (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        _RL sdat      (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1326        _RL tpmean    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL tpmean    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1327        _RL tpmeanmask(1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL tpmeanmask(1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
# Line 937  c     vdriftdat  - drifters meridional v Line 1329  c     vdriftdat  - drifters meridional v
1329        _RL tpmask    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL tpmask    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1330        _RL ersobs    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL ersobs    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1331        _RL ersmask   (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)        _RL ersmask   (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1332          _RL gfoobs    (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1333          _RL gfomask   (1-olx:snx+olx,1-oly:sny+oly,   nsx,nsy)
1334        _RL ctdtobs   (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        _RL ctdtobs   (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1335        _RL ctdsobs   (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        _RL ctdsobs   (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
1336        _RL xbtobs    (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        _RL xbtobs    (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
# Line 962  c     topexfile     - reference data fil Line 1356  c     topexfile     - reference data fil
1356  c                     (TOPEX/POSEIDON).  c                     (TOPEX/POSEIDON).
1357  c     ersfile       - reference data file for sea surface height data  c     ersfile       - reference data file for sea surface height data
1358  c                     (ERS).  c                     (ERS).
1359  c ctdtfile, ctdsfile- reference data file for temperature and salinity  c ctdtfile, ctdsfile- reference data file for temperature and salinity
1360  c                     from CTD  c                     from CTD
1361  c ctdtclimfile, ctdsclimfile- reference data file for temperature  c ctdtclimfile, ctdsclimfile- reference data file for temperature
1362  c                      and salinity from CTD with out timetag  c                      and salinity from CTD with out timetag
1363  c     xbtfile       - reference data file for xbt  c     xbtfile       - reference data file for xbt
1364  c     ARGOtfile     - reference data file for ARGO  c     ARGOtfile     - reference data file for ARGO
1365  c     ARGOsfile     - reference data file for ARGO  c     ARGOsfile     - reference data file for ARGO
1366  c     driftfile     - reference data file for drifter's mean velocities  c     driftfile     - reference data file for drifter mean velocities
1367    
1368        common /ecco_cost_data_c/        common /ecco_cost_data_c/
1369       &                     tdatfile,       &                     tdatfile,
# Line 979  c     driftfile     - reference data fil Line 1373  c     driftfile     - reference data fil
1373       &                     sstdatfile,       &                     sstdatfile,
1374       &                     tmidatfile,       &                     tmidatfile,
1375       &                     sssdatfile,       &                     sssdatfile,
1376         &                     bpdatfile,
1377         &                     iesdatfile,
1378       &                     topexmeanfile,       &                     topexmeanfile,
1379       &                     topexfile,       &                     topexfile,
1380       &                     ersfile,       &                     ersfile,
1381         &                     gfofile,
1382       &                     ctdtfile,       &                     ctdtfile,
1383       &                     ctdsfile,       &                     ctdsfile,
1384       &                     ctdtclimfile,       &                     ctdtclimfile,
# Line 989  c     driftfile     - reference data fil Line 1386  c     driftfile     - reference data fil
1386       &                     xbtfile,       &                     xbtfile,
1387       &                     argotfile,       &                     argotfile,
1388       &                     argosfile,       &                     argosfile,
1389       &                     udriftfile,       &                     udriftfile,
1390       &                     vdriftfile,       &                     vdriftfile,
1391         &                     usercost_datafile,
1392       &                     curmtrufile,       &                     curmtrufile,
1393       &                     curmtrvfile       &                     curmtrvfile
1394    
# Line 1001  c     driftfile     - reference data fil Line 1399  c     driftfile     - reference data fil
1399        character*(MAX_LEN_FNAM) sstdatfile        character*(MAX_LEN_FNAM) sstdatfile
1400        character*(MAX_LEN_FNAM) tmidatfile        character*(MAX_LEN_FNAM) tmidatfile
1401        character*(MAX_LEN_FNAM) sssdatfile        character*(MAX_LEN_FNAM) sssdatfile
1402          character*(MAX_LEN_FNAM) bpdatfile
1403          character*(MAX_LEN_FNAM) iesdatfile
1404        character*(MAX_LEN_FNAM) topexmeanfile        character*(MAX_LEN_FNAM) topexmeanfile
1405        character*(MAX_LEN_FNAM) topexfile        character*(MAX_LEN_FNAM) topexfile
1406        character*(MAX_LEN_FNAM) ersfile        character*(MAX_LEN_FNAM) ersfile
1407          character*(MAX_LEN_FNAM) gfofile
1408        character*(MAX_LEN_FNAM) ctdtfile        character*(MAX_LEN_FNAM) ctdtfile
1409        character*(MAX_LEN_FNAM) ctdsfile        character*(MAX_LEN_FNAM) ctdsfile
1410        character*(MAX_LEN_FNAM) ctdtclimfile        character*(MAX_LEN_FNAM) ctdtclimfile
# Line 1012  c     driftfile     - reference data fil Line 1413  c     driftfile     - reference data fil
1413        character*(MAX_LEN_FNAM) argotfile        character*(MAX_LEN_FNAM) argotfile
1414        character*(MAX_LEN_FNAM) argosfile        character*(MAX_LEN_FNAM) argosfile
1415        character*(MAX_LEN_FNAM) argofile        character*(MAX_LEN_FNAM) argofile
1416          character*(MAX_LEN_FNAM) usercost_datafile(NUSERCOST)
1417        character*(MAX_LEN_FNAM) udriftfile        character*(MAX_LEN_FNAM) udriftfile
1418        character*(MAX_LEN_FNAM) vdriftfile              character*(MAX_LEN_FNAM) vdriftfile
1419        character*(MAX_LEN_FNAM) curmtrufile        character*(MAX_LEN_FNAM) curmtrufile
1420        character*(MAX_LEN_FNAM) curmtrvfile        character*(MAX_LEN_FNAM) curmtrvfile
1421    
# Line 1025  c     using_ers - flag that indicates th Line 1427  c     using_ers - flag that indicates th
1427    
1428        common /ecco_cost_data_flags/        common /ecco_cost_data_flags/
1429       &                         using_topex,       &                         using_topex,
1430       &                         using_ers       &                         using_ers,
1431         &                         using_gfo
1432        logical using_topex        logical using_topex
1433        logical using_ers        logical using_ers
1434          logical using_gfo
1435    
1436  c     Calendar information for the observations:  c     Calendar information for the observations:
1437  c     ==========================================  c     ==========================================
# Line 1046  c     sshperiod      - sampling interval Line 1450  c     sshperiod      - sampling interval
1450       &                           argosstartdate,       &                           argosstartdate,
1451       &                           tmistartdate,       &                           tmistartdate,
1452       &                           sssstartdate,       &                           sssstartdate,
1453         &                           bpstartdate,
1454         &                           iesstartdate,
1455       &                           topexstartdate,       &                           topexstartdate,
1456       &                           ersstartdate       &                           ersstartdate,
1457         &                           gfostartdate
1458        integer scatxstartdate(4)        integer scatxstartdate(4)
1459        integer scatystartdate(4)        integer scatystartdate(4)
1460        integer sststartdate(4)        integer sststartdate(4)
# Line 1055  c     sshperiod      - sampling interval Line 1462  c     sshperiod      - sampling interval
1462        integer argosstartdate(4)        integer argosstartdate(4)
1463        integer tmistartdate(4)        integer tmistartdate(4)
1464        integer sssstartdate(4)        integer sssstartdate(4)
1465          integer bpstartdate(4)
1466          integer iesstartdate(4)
1467        integer topexstartdate(4)        integer topexstartdate(4)
1468        integer ersstartdate(4)        integer ersstartdate(4)
1469          integer gfostartdate(4)
1470    
1471        common /ecco_cost_data_aux_i/        common /ecco_cost_data_aux_i/
1472       &                           tmistartdate1,       &                           tmistartdate1,
# Line 1065  c     sshperiod      - sampling interval Line 1475  c     sshperiod      - sampling interval
1475       &                           sststartdate2,       &                           sststartdate2,
1476       &                           sssstartdate1,       &                           sssstartdate1,
1477       &                           sssstartdate2,       &                           sssstartdate2,
1478         &                           bpstartdate1,
1479         &                           bpstartdate2,
1480         &                           iesstartdate1,
1481         &                           iesstartdate2,
1482       &                           argotstartdate1,       &                           argotstartdate1,
1483       &                           argotstartdate2,       &                           argotstartdate2,
1484       &                           argosstartdate1,       &                           argosstartdate1,
# Line 1073  c     sshperiod      - sampling interval Line 1487  c     sshperiod      - sampling interval
1487       &                           topexstartdate2,       &                           topexstartdate2,
1488       &                           ersstartdate1,       &                           ersstartdate1,
1489       &                           ersstartdate2,       &                           ersstartdate2,
1490         &                           gfostartdate1,
1491         &                           gfostartdate2,
1492       &                           scatstartdate1,       &                           scatstartdate1,
1493       &                           scatstartdate2,       &                           scatstartdate2
      &                           costIceStart1,  
      &                           costIceStart2,  
      &                           costIceEnd1,  
      &                           costIceEnd2  
1494    
1495        integer tmistartdate1        integer tmistartdate1
1496        integer tmistartdate2        integer tmistartdate2
# Line 1086  c     sshperiod      - sampling interval Line 1498  c     sshperiod      - sampling interval
1498        integer sststartdate2        integer sststartdate2
1499        integer sssstartdate1        integer sssstartdate1
1500        integer sssstartdate2        integer sssstartdate2
1501          integer bpstartdate1
1502          integer bpstartdate2
1503          integer iesstartdate1
1504          integer iesstartdate2
1505        integer argotstartdate1        integer argotstartdate1
1506        integer argotstartdate2        integer argotstartdate2
1507        integer argosstartdate1        integer argosstartdate1
# Line 1094  c     sshperiod      - sampling interval Line 1510  c     sshperiod      - sampling interval
1510        integer topexstartdate2        integer topexstartdate2
1511        integer ersstartdate1        integer ersstartdate1
1512        integer ersstartdate2        integer ersstartdate2
1513          integer gfostartdate1
1514          integer gfostartdate2
1515        integer scatstartdate1        integer scatstartdate1
1516        integer scatstartdate2        integer scatstartdate2
       integer costIceStart1  
       integer costIceStart2  
       integer costIceEnd1  
       integer costIceEnd2  
1517    
1518        common /ecco_cost_data_times_r/        common /ecco_cost_data_times_r/
1519       &                           topexperiod,       &                           topexperiod,
1520       &                           ersperiod,       &                           ersperiod,
1521       &                           scatperiod,       &                           gfoperiod,
1522       &                           costIceStart,       &                           scatperiod
      &                           costIceEnd  
1523        _RL topexperiod        _RL topexperiod
1524        _RL ersperiod        _RL ersperiod
1525          _RL gfoperiod
1526        _RL scatperiod        _RL scatperiod
       _RL costIceStart  
       _RL costIceEnd  
1527    
1528  c     cost_ice_flag  - cost_ice flag (see cost_ice.F)        common /ecco_cost_data_detrend/
1529         &                           topexintercept,
1530         &                           ersintercept,
1531         &                           gfointercept,
1532         &                           topexslope,
1533         &                           ersslope,
1534         &                           gfoslope
1535          _RL topexintercept
1536          _RL ersintercept
1537          _RL gfointercept
1538          _RL topexslope
1539          _RL ersslope
1540          _RL gfoslope
1541    
1542    cgf factor to convert sshv4cost_errfile in m
1543          common /ecco_cost_errfactor/
1544         &         sshv4cost_errfactor
1545          _RL  sshv4cost_errfactor(NSSHV4COST)
1546    
1547    #ifdef ALLOW_SSH_COST_CONTRIBUTION
1548          common /ecco_ssh_daymask_r/
1549         &       tpTimeMask, ersTimeMask, gfoTimeMask
1550          _RL tpTimeMask(maxNumDays)
1551          _RL ersTimeMask(maxNumDays)
1552          _RL gfoTimeMask(maxNumDays)
1553    #endif
1554    
1555        common /ecco_cost_ice_i/ cost_ice_flag        common /ecco_ssh_daymask_c/
1556        integer cost_ice_flag       &       tpTimeMaskFile, ersTimeMaskFile, gfoTimeMaskFile
1557          character*(MAX_LEN_FNAM) tpTimeMaskFile
1558          character*(MAX_LEN_FNAM) ersTimeMaskFile
1559          character*(MAX_LEN_FNAM) gfoTimeMaskFile
1560    
1561  c     ==================================================================  c     ==================================================================
1562  c     END OF HEADER COST  c     END OF HEADER COST

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.56

  ViewVC Help
Powered by ViewVC 1.1.22