|
|
|
Next: 8.1.2 Generic Integral Function
Up: 8.1 ECCO: model-data comparisons
Previous: 8.1 ECCO: model-data 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 re-read by cost_generic.F to compute the corresponding cost function term. If gencost_outputlevel = 1 and gencost_name=`foo' then cost_generic.F outputs model-data misfit fields (i.e.,
) to a file named `misfit_foo.data' for offline analysis and visualization.
In the current implementation, model-data error covariance matrices
omit non-diagonal terms. Specifying
thus boils down to providing uncertainty fields (
such that
) in a file specified via gencost_errfile. By default
is assumed to be time-invariant 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 post-processor (
in Eq. (8.2)) also allows model-data 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 end-result, 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(*) |
Post-processor names |
gencost_posproc_c |
character(*) |
Post-processor character arguments |
gencost_posproc_i |
integer(*) |
Post-processor integer arguments |
gencost_posproc_r |
real(*) |
Post-processor 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 |
sea-ice area |
from pkg/seaice |
m_siheff |
sea-ice effective thickness |
from pkg/seaice |
m_sihsnow |
snow effective thickness |
from pkg/seaice |
m_theta |
potential temperature |
three-dimensional |
m_salt |
salinity |
three-dimensional |
m_UE |
zonal velocity |
three-dimensional |
m_VN |
meridional velocity |
three-dimensional |
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 |
three-dimensional, constant |
m_kapgm |
GM diffusivity |
three-dimensional, constant |
m_kapredi |
isopycnal diffusivity |
three-dimensional, 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 time-varying 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: model-data comparisons
Previous: 8.1 ECCO: model-data comparisons
Contents
mitgcm-support@mitgcm.org
Copyright © 2006
Massachusetts Institute of Technology |
Last update 2018-01-23 |
|
|