Skip to content

Commit

Permalink
Per #2412 add unit test.
Browse files Browse the repository at this point in the history
  • Loading branch information
JohnHalleyGotway committed Jan 24, 2023
1 parent 428a9c9 commit 51c2757
Show file tree
Hide file tree
Showing 2 changed files with 297 additions and 0 deletions.
266 changes: 266 additions & 0 deletions internal/test_unit/config/GridStatConfig_climo_wrap_year
Original file line number Diff line number Diff line change
@@ -0,0 +1,266 @@
////////////////////////////////////////////////////////////////////////////////
//
// Grid-Stat configuration file.
//
// For additional information, please see the MET User's Guide.
//
////////////////////////////////////////////////////////////////////////////////

//
// Output model name to be written
//
model = "GFSANL";

//
// Output description to be written
// May be set separately in each "obs.field" entry
//
desc = "NA";

//
// Output observation type to be written
//
obtype = "GFSANL";

////////////////////////////////////////////////////////////////////////////////

//
// Verification grid
//
regrid = {
to_grid = NONE;
method = NEAREST;
width = 1;
vld_thresh = 0.5;
shape = SQUARE;
}

////////////////////////////////////////////////////////////////////////////////

//
// May be set separately in each "field" entry
//
censor_thresh = [];
censor_val = [];
mpr_column = [];
mpr_thresh = [];
cat_thresh = [];
cnt_thresh = [ NA ];
cnt_logic = UNION;
wind_thresh = [ NA ];
wind_logic = UNION;
eclv_points = 0.05;
nc_pairs_var_name = "";
nc_pairs_var_suffix = "";
hss_ec_value = NA;
rank_corr_flag = FALSE;

//
// Forecast and observation fields to be verified
//
fcst = {

name = "TMP";
level = "P500";

field = [
{ set_attr_init = "20201225_12"; set_attr_valid = "20201225_12"; nc_pairs_var_suffix = "20201225_12"; },
{ set_attr_init = "20210105_12"; set_attr_valid = "20210105_12"; nc_pairs_var_suffix = "20210105_12"; },
{ set_attr_init = "20201225_03"; set_attr_valid = "20201225_03"; nc_pairs_var_suffix = "20201225_03"; },
{ set_attr_init = "20201225_21"; set_attr_valid = "20201225_21"; nc_pairs_var_suffix = "20201225_21"; }
];
}
obs = fcst;

////////////////////////////////////////////////////////////////////////////////

//
// Climatology data
//
climo_mean = {

field = [
{ name = "TMP"; level = "P500"; },
{ name = "TMP"; level = "P500"; },
{ name = "TMP"; level = "P500"; },
{ name = "TMP"; level = "P500"; }
];

file_name = [ ${CLIMO_MEAN_FILE_LIST} ];

regrid = {
method = BILIN;
width = 2;
vld_thresh = 0.5;
}

time_interp_method = DW_MEAN;
day_interval = ${DAY_INTERVAL};
hour_interval = ${HOUR_INTERVAL};
}

climo_stdev = climo_mean;
climo_stdev = {
file_name = [ ${CLIMO_STDEV_FILE_LIST} ];
}

//
// May be set separately in each "obs.field" entry
//
climo_cdf = {
cdf_bins = 1;
center_bins = TRUE;
write_bins = FALSE;
direct_prob = FALSE;
}

////////////////////////////////////////////////////////////////////////////////

//
// Verification masking regions
//
mask = {
grid = [ "FULL" ];
poly = [];
}

////////////////////////////////////////////////////////////////////////////////

//
// Confidence interval settings
//
ci_alpha = [ 0.05 ];

boot = {
interval = PCTILE;
rep_prop = 1.0;
n_rep = 0;
rng = "mt19937";
seed = "";
}

////////////////////////////////////////////////////////////////////////////////

//
// Data smoothing methods
//
interp = {
field = BOTH;
vld_thresh = 1.0;
shape = SQUARE;

type = [
{
method = NEAREST;
width = 1;
}
];
}

////////////////////////////////////////////////////////////////////////////////

//
// Neighborhood methods
//
nbrhd = {
width = [ 1 ];
cov_thresh = [ >=0.5 ];
vld_thresh = 1.0;
shape = SQUARE;
}

////////////////////////////////////////////////////////////////////////////////

//
// Fourier decomposition
//
fourier = {
wave_1d_beg = [];
wave_1d_end = [];
}

////////////////////////////////////////////////////////////////////////////////

//
// Gradient statistics
// May be set separately in each "obs.field" entry
//
gradient = {
dx = [ 1, 2, 5 ];
dy = [ 1, 3, 5 ];
}

////////////////////////////////////////////////////////////////////////////////

//
// Distance Map statistics
// May be set separately in each "obs.field" entry
//
distance_map = {
baddeley_p = 2;
baddeley_max_dist = NA;
fom_alpha = 0.1;
zhu_weight = 0.5;
beta_value(n) = n * n / 2.0;
}

////////////////////////////////////////////////////////////////////////////////

//
// Statistical output types
//
output_flag = {
fho = NONE;
ctc = NONE;
cts = NONE;
mctc = NONE;
mcts = NONE;
cnt = NONE;
sl1l2 = STAT;
sal1l2 = STAT;
vl1l2 = NONE;
val1l2 = NONE;
vcnt = NONE;
pct = NONE;
pstd = NONE;
pjc = NONE;
prc = NONE;
eclv = NONE;
nbrctc = NONE;
nbrcts = NONE;
nbrcnt = NONE;
grad = NONE;
dmap = NONE;
seeps = NONE;
}

//
// NetCDF matched pairs output file
//
nc_pairs_flag = {
latlon = TRUE;
raw = FALSE;
diff = FALSE;
climo = TRUE;
climo_cdp = FALSE;
weight = FALSE;
nbrhd = FALSE;
fourier = FALSE;
gradient = FALSE;
distance_map = FALSE;
apply_mask = FALSE;
}

////////////////////////////////////////////////////////////////////////////////
// Threshold for SEEPS p1 (Probability of being dry)

seeps_p1_thresh = NA;

////////////////////////////////////////////////////////////////////////////////

grid_weight_flag = NONE;
tmp_dir = "/tmp";
output_prefix = "${OUTPUT_PREFIX}";
version = "V11.0.0";

////////////////////////////////////////////////////////////////////////////////
31 changes: 31 additions & 0 deletions internal/test_unit/xml/unit_climatology_2.5deg.xml
Original file line number Diff line number Diff line change
Expand Up @@ -50,4 +50,35 @@
</output>
</test>

<!-- MET#2412: Test interpolation of monthly climo between December 15 and January 15 -->

<test name="climatology_GRID_STAT_WRAP_YEAR_2.5DEG">
<exec>&MET_BIN;/grid_stat</exec>
<env>
<pair><name>OUTPUT_PREFIX</name> <value>YEAR_WRAP_CLIMO_2.5DEG</value></pair>
<pair><name>DAY_INTERVAL</name> <value>31</value></pair>
<pair><name>HOUR_INTERVAL</name> <value>6</value></pair>
<pair><name>CLIMO_MEAN_FILE_LIST</name>
<value>"&DATA_DIR_CLIMO;/NCEP_2.5deg/pgba_mean.19591215",
"&DATA_DIR_CLIMO;/NCEP_2.5deg/pgba_mean.19590115"
</value>
</pair>
<pair><name>CLIMO_STDEV_FILE_LIST</name>
<value>"&DATA_DIR_CLIMO;/NCEP_2.5deg/pgba_stdv.19591215",
"&DATA_DIR_CLIMO;/NCEP_2.5deg/pgba_stdv.19590115"
</value>
</pair>
</env>
<param> \
&DATA_DIR_MODEL;/grib2/gfsanl/gfsanl_4_20120409_1200_000.grb2 \
&DATA_DIR_MODEL;/grib2/gfsanl/gfsanl_4_20120409_1200_000.grb2 \
&CONFIG_DIR;/GridStatConfig_climo_wrap_year \
-outdir &OUTPUT_DIR;/climatology_2.5deg -v 3
</param>
<output>
<stat>&OUTPUT_DIR;/climatology_2.5deg/grid_stat_WRAP_YEAR_CLIMO_2.5DEG_000000L_20201225_120000V.stat</stat>
<grid_nc>&OUTPUT_DIR;/climatology_2.5deg/grid_stat_WRAP_YEAR_CLIMO_2.5DEG_000000L_20201225_120000V_pairs.nc</grid_nc>
</output>
</test>

</met_test>

0 comments on commit 51c2757

Please sign in to comment.