


Next: 8.1.2 Generic Integral Function
Up: 8.1 ECCO: modeldata comparisons
Previous: 8.1 ECCO: modeldata comparisons
Contents
8.1.1 Generic Cost Function
The parameters available for configuring generic cost function terms in data.ecco are given in table 8.2 and examples of possible specifications are available in:
 MITgcm_contrib/verification_other/global_oce_cs32/input/data.ecco
 MITgcm_contrib/verification_other/global_oce_cs32/input_ad.sens/data.ecco
 MITgcm_contrib/gael/verification/global_oce_llc90/input.ecco_v4/data.ecco
The gridded observation file name is specified by gencost_datafile. Observational time series may be provided as on big file or split into yearly files finishing in `_1992', `_1993', etc. The corresponding
physical variable is specified via the gencost_barfile root (see table 8.3). A file named as specified by gencost_barfile gets created where averaged fields are written progressively as the model steps forward in time. After the final time step this file is reread by cost_generic.F to compute the corresponding cost function term. If gencost_outputlevel = 1 and gencost_name=`foo' then cost_generic.F outputs modeldata misfit fields (i.e.,
) to a file named `misfit_foo.data' for offline analysis and visualization.
In the current implementation, modeldata error covariance matrices
omit nondiagonal terms. Specifying
thus boils down to providing uncertainty fields (
such that
) in a file specified via gencost_errfile. By default
is assumed to be timeinvariant but a
time series of the same length as the
time series can be provided using the variaweight option (table 8.4). By default cost functions are quadratic but
can be replaced with
using the nosumsq option (table 8.4).
In principle, any averaging frequency should be possible, but only `day', `month', `step', and `const' are implemented for gencost_avgperiod. If two different averaging frequencies are needed for a variable used in multiple cost function terms (e.g., daily and monthly) then an extension starting with `_' should be added to gencost_barfile (such as `_day' and `_mon'). ^{8.1} If two cost function terms use the same variable and frequency, however, then using a common gencost_barfile saves disk space.
Climatologies of
can be formed from the time series of model averages in order to compare with climatologies of
by activating the `clim' option via gencost_preproc and setting the corresponding gencost_preproc_i integer parameter to the number of records (i.e., a # of months, days, or time steps) per climatological cycle. The generic postprocessor (
in Eq. (8.2)) also allows modeldata misfits to be, for example, smoothed in space by setting gencost_posproc to `smooth' and specifying the smoother parameters via gencost_posproc_c and gencost_posproc_i (see table 8.4). Other options associated with the computation of Eq. (8.1) are summarized in table 8.4 and further discussed below. Multiple gencost_preproc / gencost_posproc options may be specified per cost term.
In general the specification of gencost_name is optional, has no impact on the endresult, and only serves to distinguish between cost function terms amongst the model output (STDOUT.0000, STDERR.0000, costfunction000, misfit*.data). Exceptions listed in table 8.6 however activate alternative cost function codes (in place of cost_generic.F) described in section 8.1.3. In this section and in table 8.3 (unlike in other parts of the manual) `zonal' / `meridional' are to be taken literally and these components are centered (i.e., not at the staggered model velocity points). Preparing gridded velocity data sets for use in cost functions thus boils down to interpolating them to XC / YC.
Table:
Parameters in ecco_gencost_nml namelist in data.ecco. All parameters are vectors of length NGENCOST (the # of available cost terms) except for gencost_*proc* are arrays of size NGENPPROC
NGENCOST. Notes: gencost_is3d is automatically reset to true in all 3D cases in table 8.3;
NGENCOST (20) and NGENPPROC (10) can be changed in ecco.h only at compile time.
parameter 
type 
function 
gencost_name 
character(*) 
Name of cost term 
gencost_barfile 
character(*) 
File to receive model counterpart
(see table 8.3) 
gencost_datafile 
character(*) 
File containing observational data

gencost_avgperiod 
character(5) 
Averaging period for
and
(see text) 
gencost_outputlevel 
integer 
Greater than 0 will output misfit fields 
gencost_errfile 
character(*) 
Uncertainty field name (not used in section 8.1.2) 
gencost_mask 
character(*) 
Mask file name root (used only in section 8.1.2) 
mult_gencost 
real 
Multiplier
(default: 1) 
gencost_preproc 
character(*) 
Preprocessor names 
gencost_preproc_c 
character(*) 
Preprocessor character arguments 
gencost_preproc_i 
integer(*) 
Preprocessor integer arguments 
gencost_preproc_r 
real(*) 
Preprocessor real arguments 
gencost_posproc 
character(*) 
Postprocessor names 
gencost_posproc_c 
character(*) 
Postprocessor character arguments 
gencost_posproc_i 
integer(*) 
Postprocessor integer arguments 
gencost_posproc_r 
real(*) 
Postprocessor real arguments 
gencost_spmin 
real 
Data less than this value will be omitted 
gencost_spmax 
real 
Data greater than this value will be omitted 
gencost_spzero 
real 
Data points equal to this value will be omitted 
gencost_startdate1 
integer 
Start date of observations (YYYMMDD) 
gencost_startdate2 
integer 
Start date of observations (HHMMSS) 
gencost_is3d 
logical 
Needs to be true for 3D fields 
gencost_enddate1 
integer 
Not fully implemented (used only in sec. 8.1.3) 
gencost_enddate2 
integer 
Not fully implemented (used only in sec. 8.1.3) 

Table 8.3:
Implemented gencost_barfile options (as of checkpoint 65z) that can be used via cost_generic.F (section 8.1.1). An extension starting with `_' can be appended at the end of the variable name to distinguish between separate cost function terms. Note: the `m_eta' formula depends on the ATMOSPHERIC_LOADING and ALLOW_PSBAR_STERIC compile time options and `useRealFreshWaterFlux' run time parameter.
variable name 
description 
remarks 
m_eta 
sea surface height 
free surface + ice + global steric correction 
m_sst 
sea surface temperature 
first level potential temperature 
m_sss 
sea surface salinity 
first level salinity 
m_bp 
bottom pressure 
phiHydLow 
m_siarea 
seaice area 
from pkg/seaice 
m_siheff 
seaice effective thickness 
from pkg/seaice 
m_sihsnow 
snow effective thickness 
from pkg/seaice 
m_theta 
potential temperature 
threedimensional 
m_salt 
salinity 
threedimensional 
m_UE 
zonal velocity 
threedimensional 
m_VN 
meridional velocity 
threedimensional 
m_ustress 
zonal wind stress 
from pkg/exf 
m_vstress 
meridional wind stress 
from pkg/exf 
m_uwind 
zonal wind 
from pkg/exf 
m_vwind 
meridional wind 
from pkg/exf 
m_atemp 
atmospheric temperature 
from pkg/exf 
m_aqh 
atmospheric specific humidity 
from pkg/exf 
m_precip 
precipitation 
from pkg/exf 
m_swdown 
downward shortwave 
from pkg/exf 
m_lwdown 
downward longwave 
from pkg/exf 
m_wspeed 
wind speed 
from pkg/exf 
m_diffkr 
vertical/diapycnal diffusivity 
threedimensional, constant 
m_kapgm 
GM diffusivity 
threedimensional, constant 
m_kapredi 
isopycnal diffusivity 
threedimensional, constant 
m_geothermalflux 
geothermal heat flux 
constant 
m_bottomdrag 
bottom drag 
constant 

Table 8.4:
gencost_preproc and gencost_posproc options implemented as of checkpoint 65z. Note: the distinction between gencost_preproc and gencost_posproc seems unclear and may be revisited in the future.
name 
description 
specs needed via gencost_preproc_i, _r, or _c 
gencost_preproc 


clim 
Use climatological misfits 
integer: no. of records per climatological cycle 
mean 
Use time mean of misfits 
 
anom 
Use anomalies from time mean 
 
variaweight 
Use timevarying weight

 
nosumsq 
Use linear misfits 
 
factor 
Multiply
by a scaling factor 
real: the scaling factor 
gencost_posproc 


smooth 
Smooth misfits 
character: smoothing scale file 


integer: smoother # of time steps 

Next: 8.1.2 Generic Integral Function
Up: 8.1 ECCO: modeldata comparisons
Previous: 8.1 ECCO: modeldata comparisons
Contents
mitgcmsupport@mitgcm.org
Copyright © 2006
Massachusetts Institute of Technology 
Last update 20180123 

