Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update develop-ref after #2088 and #2093 #2095

Merged
merged 192 commits into from
Mar 10, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
192 commits
Select commit Hold shift + click to select a range
9437447
Per #1906, modify code to pass entire path to make_temp_file_name ins…
jprestop Oct 26, 2021
8c446ff
Feature 1761 percent thresh (#1956)
sethlinden Nov 3, 2021
d60924c
Feature 1905 ens_ctrl (#1955)
JohnHalleyGotway Nov 3, 2021
3b13ce1
Hotfix after merging changing for #1761. Updating the list of expecte…
JohnHalleyGotway Nov 3, 2021
5131042
Per #1905, committing a hotfix directly to the develop branch. Revert…
JohnHalleyGotway Nov 3, 2021
4ff28d1
Feature 1957 ascii2nc_python (#1958)
JohnHalleyGotway Nov 4, 2021
aee6269
Feature 1949 cf netcdf documentaton (#1951)
hsoh-u Nov 15, 2021
867360f
Feature 1968 ens_ctrl (#1969)
JohnHalleyGotway Nov 15, 2021
0990061
Feature 1809 gen prob (#1967)
JohnHalleyGotway Nov 16, 2021
1663bb6
Merge branch 'develop-ref' into develop
JohnHalleyGotway Nov 16, 2021
13996c2
Feature 1970 v10.1.0-beta4 (#1973)
JohnHalleyGotway Nov 16, 2021
dae9db7
Fix tiny typo in plot_data_plane usage statement.
JohnHalleyGotway Nov 17, 2021
9bd9946
Hotfix for the develop branch to get met-10.1.0-beta4 compiling on WC…
JohnHalleyGotway Nov 17, 2021
e0b659d
Updating the beta4 release date from 11/16 to 11/17 since the beta4 r…
JohnHalleyGotway Nov 17, 2021
817d9db
Update the MET PR template to list expected changes up front.
JohnHalleyGotway Nov 19, 2021
4e28ae7
Bugfix 1976 develop cdist (#1979)
JohnHalleyGotway Nov 22, 2021
6d16e23
Merge branch 'develop-ref' into develop
JohnHalleyGotway Nov 23, 2021
39a5233
#1936 Excludes precip3hr, precip6hr, precip12hr, and precip10min from…
Nov 29, 2021
c9434e8
Per #1985, correcting typo found while creating V10.0.1 in the develo…
JohnHalleyGotway Dec 1, 2021
84f8c7f
Per #1985, VERY minor change to fix alignment of titles in Point-Stat…
JohnHalleyGotway Dec 1, 2021
d35190e
#1936 Added an unit test for newer MESONET file
Dec 1, 2021
f81d250
Merge pull request #1984 from dtcenter/feature_1936_madis_nc2
hsoh-u Dec 2, 2021
8c29f09
Feature 1989 sort (#1990)
JohnHalleyGotway Dec 13, 2021
b93f4ea
Feature 1991 VCNT (#1992)
JohnHalleyGotway Dec 13, 2021
49fb555
Feature 1993 grid_mask (#1994)
JohnHalleyGotway Dec 13, 2021
dd0a68b
#1844 Added vx_pointdata_python
Dec 28, 2021
2b61506
#1844 Added vx_pointdata_python to PYTHON_LIBS & make file for vx_poi…
Dec 28, 2021
b4a4e18
#1844 Added vx_pointdata_python to SUBDIRS
Dec 28, 2021
ba9f81e
#1844 Initial release
Dec 28, 2021
abef2b7
#1844 Added met_point_data.cc & met_point_data.h
Dec 28, 2021
6c36d79
#1844 NcHeaderData is renamed to MetPointHeader and moved to met_poin…
Dec 28, 2021
3f0de5e
#1844 NcPointObsData is derived from MetPointObsData. Many methods ar…
Dec 28, 2021
6c50d50
#1844 Moved varianbles and methods to the base class MetPointData
Dec 28, 2021
0d7b731
#1844 override the obs_data pointer to the derived class
Dec 28, 2021
b053f71
#1844 Added pyobject_as_bool & pyobject_as_string_array
Dec 28, 2021
0ecea6e
#1844 Cleanup include statements and addpointdata_python.h if python …
Dec 28, 2021
e397fa1
#18443 Support python embedding
Dec 28, 2021
315d3b4
#1844 Initial release
Dec 28, 2021
95a65ed
#1844 Make buf_size const
Dec 29, 2021
e900334
Add GitHub Actions workflow to trigger METplus testing workflow (#2002)
georgemccabe Jan 5, 2022
1c981f4
changed names of inputs to send to METplus to match changes to METplu…
georgemccabe Jan 5, 2022
0273cf1
#1965 Excludes the duplicated variable names from multiple input files
Jan 7, 2022
ab1199b
#1965 Processed with the raw variable names and update them when the …
Jan 11, 2022
d5cc7b1
#1965 Added unit test ioda2nc_same_input
Jan 11, 2022
e48c5ff
#1965 Processed with the raw variable names and update them when the …
Jan 11, 2022
5617aa2
#1965 Added unit test ioda2nc_same_input
Jan 11, 2022
ee76143
#1965 initialize var_idx
hsoh-u Jan 12, 2022
1e97085
Merge pull request #2006 from dtcenter/feature_1965_ioda2nc_same_input
hsoh-u Jan 12, 2022
acbb7b9
Update the development environment for seneca to add /usr/local/nco/b…
Jan 12, 2022
717dd17
Merge branch 'develop' of https://github.com/dtcenter/MET into develop
JohnHalleyGotway Jan 12, 2022
58988bf
send email address of user who triggered event to METplus workflow as…
georgemccabe Jan 12, 2022
5632c5c
Merge branch 'develop' of github.com:dtcenter/MET into develop
georgemccabe Jan 12, 2022
b267883
Fixup the Rscript diffing logic to support running the nightly build …
JohnHalleyGotway Jan 12, 2022
d7eb8e4
Merge branch 'develop' of https://github.com/dtcenter/MET into develop
JohnHalleyGotway Jan 12, 2022
96536f5
No real changes here. Just formatting
Jan 12, 2022
fa41760
Feature 1974 message_type_group_map (#1999)
hsoh-u Jan 12, 2022
551f92b
Feature 1996 uninitialized variables (#2004)
hsoh-u Jan 12, 2022
39d7e6f
Merge remote-tracking branch 'origin/develop' into feature_1844_pytho…
Jan 12, 2022
dbc7d10
Feature 1695 ensemble single file (gen_ens_prod) (#2001)
georgemccabe Jan 12, 2022
be7910e
Feature 1965 NB faile with time summary by ioda2nc (#2008)
hsoh-u Jan 12, 2022
1e13dea
Feature 1810 shapes (#2005)
JohnHalleyGotway Jan 13, 2022
edd61fd
#1844 Added log message for use_var_id
Jan 13, 2022
6cae6b5
#1844 Get use_var_id for python embedding
Jan 13, 2022
aaa1010
#1844 Initial release
Jan 13, 2022
adf4928
#1844 Added met_point_obs.py and read_met_point_obs.py
Jan 13, 2022
0640d8d
#1844 Added 4 unit test for python embedding of MET point data
Jan 13, 2022
9483487
Merge remote-tracking branch 'origin/develop' into feature_1844_pytho…
Jan 13, 2022
37f4f32
More changes to test_util.R to account for differences between 4.7.0 …
JohnHalleyGotway Jan 13, 2022
36761b6
Fix merge conflict
JohnHalleyGotway Jan 13, 2022
4f57edd
#1844 Added python embedding for point observation data
Jan 13, 2022
27925d8
Merge remote-tracking branch 'origin/develop' into feature_1844_pytho…
Jan 13, 2022
de81526
Feature 1926 gridstat openmp (#1977)
mo-mglover Jan 13, 2022
e96a211
feature 1695 ensemble single file (ensemble_stat) (#2007)
georgemccabe Jan 14, 2022
032456b
Committing directly to the develop branch. Removing many, many instan…
JohnHalleyGotway Jan 14, 2022
ee4a3a4
feature 2011 v10.1.0-beta5 (#2014)
JohnHalleyGotway Jan 15, 2022
18ccf3a
feature 1695 fix issues with ensemble changes (#2012)
georgemccabe Jan 15, 2022
634806e
Merge branch 'develop-ref' into develop
JohnHalleyGotway Jan 15, 2022
e9df2fc
Hotfix for #1695 committed directly to the develop branch. The new En…
JohnHalleyGotway Jan 16, 2022
e75fe46
Merge branch 'develop-ref' into develop
JohnHalleyGotway Jan 17, 2022
65539e1
Adding George to email list for the nightly build.
JohnHalleyGotway Jan 18, 2022
ee621eb
Merge branch 'develop' into feature_1844_python_embedding
JohnHalleyGotway Jan 18, 2022
7c18231
Fix the links for the met-10.1.0-beta5 release notes.
JohnHalleyGotway Jan 20, 2022
3bd3cb3
Merge remote-tracking branch 'origin/develop' into feature_1844_pytho…
Jan 20, 2022
b8e0de3
#1844 Make met_point_obs as abstract class
Jan 21, 2022
29d479f
#1844 correctedb for loop end condition on processing obs bdata
Jan 21, 2022
333419c
Feature 1546 unit_tests (#2021)
JohnHalleyGotway Jan 24, 2022
b177c3b
#2020 Added SonarQube related varibales
Jan 25, 2022
11daa46
#2020 Initial release
Jan 25, 2022
89642fc
#2015 Avoid the repeasted debug message if derived varibales are disa…
Jan 25, 2022
6b9b411
#1996 Initialize right and left
Jan 25, 2022
b606312
#1966 Call clear() instead of reset memory for Header variable
Jan 25, 2022
4142c48
#1966 Make sure the levels from variable does not exceed the maxLevel
Jan 25, 2022
c4f5a1b
#1966 Removed unreachable codes
Jan 25, 2022
4226cbe
#1966 Do not write into NetcDF if empty data
Jan 25, 2022
dd9c46c
Merge branch 'develop' into feature_1844_python_embedding
JohnHalleyGotway Jan 25, 2022
7aaddba
Merge pull request #2010 from dtcenter/feature_1844_python_embedding
hsoh-u Jan 26, 2022
587b936
#2015 Corrected "retained or derived" count
Jan 27, 2022
cfb4759
Merge pull request #2024 from dtcenter/feature_2020_run_sonarqube
hsoh-u Jan 27, 2022
80f79fd
Merge pull request #2026 from dtcenter/feature_2015_pb2nc_debug_message
hsoh-u Jan 27, 2022
3097278
Feature 1546 CI testing (#2029)
georgemccabe Jan 27, 2022
d9447e9
Merge branch 'develop-ref' into develop
JohnHalleyGotway Jan 27, 2022
42ca71a
fixed broken workflow by setting environment variable expected for do…
georgemccabe Jan 27, 2022
5939357
add missing docker tag from push command
georgemccabe Jan 27, 2022
1e7551f
added correct docker tag value
georgemccabe Jan 27, 2022
afe0ad4
fixed incorrect truth data version for updating -ref reference data
georgemccabe Jan 27, 2022
6e1e209
Merge branch 'develop-ref' into develop
georgemccabe Jan 27, 2022
555494b
Updating develop with changes to the unit tests names. Renaming unit_…
JohnHalleyGotway Jan 28, 2022
ece4c3a
fixed directory to copy truth data into -- copy command was copying t…
georgemccabe Jan 28, 2022
afdf9db
git push origin develop0;136;0cMerge branch 'develop-ref' into develop
georgemccabe Jan 28, 2022
82d45a9
Per #1907, added warning about switch from Ensemble-Stat to Gen-Ens-P…
jprestop Jan 31, 2022
5dfcf5b
2028 Check null for header data
Feb 1, 2022
c767e8f
Removed un-reachable code
Feb 1, 2022
310c236
#2028 Check if the pointer (d) is null
Feb 1, 2022
fa5badf
#2015 Changed warning to debug message
Feb 1, 2022
df00576
#2028 Passing two dimensionl cur and dim array
Feb 1, 2022
206f74a
#2028 Set obs_data
Feb 2, 2022
4da5850
Merge pull request #2035 from dtcenter/feature_2028_madis2nc_profiler_qc
hsoh-u Feb 2, 2022
917c300
Feature 2003 briercl (#2034)
JohnHalleyGotway Feb 2, 2022
abdc436
do not run testing workflow if changes are isolated to the met/docs d…
georgemccabe Feb 3, 2022
4a31d4f
Per #2013, changed source and README. ci-run-unit (#2039)
davidalbo Feb 3, 2022
872e2e4
Feature 1055 read rot latlon (#2041)
JohnHalleyGotway Feb 8, 2022
221e148
Merge branch 'develop-ref' into develop
JohnHalleyGotway Feb 8, 2022
6ec6e71
#2044 Renamed obs_prefbufr_map to obs_prepbufr_map (typo)
Feb 9, 2022
b4ec7b8
#1996 Initialize i_point
Feb 9, 2022
fa3896d
#2044 Corrected config key for obs_prefbufr_map and give a warning fo…
Feb 10, 2022
9c45689
CI: output summary of differences in GHA log to easily see results wi…
georgemccabe Feb 10, 2022
b2e7276
#2027 Added a debug message
Feb 10, 2022
c9ba6f1
#2027 ci-run-unit Changed wind thres
Feb 10, 2022
6cd0b12
Merge remote-tracking branch 'origin/develop' into feature_2027_grid_…
Feb 10, 2022
c1b2022
#2027 ci-run-unit Increased the precision to debug message
Feb 10, 2022
47bfef6
print end of script after error summary, ci-run-unit
georgemccabe Feb 10, 2022
348d05e
#2027 Increased the buffer and cheking the status of sprintf
Feb 10, 2022
e9e5a52
Merge branch 'feature_2027_grid_stat_wind_direction' of github.com:dt…
Feb 10, 2022
a79cd9b
Feature 1998 standard sections (#2038)
lisagoodrich Feb 11, 2022
f4e1f7f
#2044 parse_conf_obs_bufr_map is moved to pb2nc_conf_info.c
Feb 11, 2022
3b88ab1
#2044 parse_conf_obs_bufr_map is moved to pb2nc_conf_info.c
Feb 11, 2022
4020d35
#2044 Changed debiug level for PBL
Feb 11, 2022
42aad8a
#2044 ci-run-unit Give warning if bad connfig key is used
Feb 11, 2022
ceacf2a
Update met_stats.cc
hsoh-u Feb 11, 2022
5437e5f
Update met_stats.cc
JohnHalleyGotway Feb 11, 2022
67b484c
Feature 2040 parse timing (#2048)
JohnHalleyGotway Feb 11, 2022
0f25d3c
Merge pull request #2047 from dtcenter/feature_2027_grid_stat_wind_di…
hsoh-u Feb 11, 2022
ae13219
#2033 ci-run-test Initial release
Feb 11, 2022
1d56b26
CI: Add logic to auto update input data (#2046)
georgemccabe Feb 11, 2022
39a50c1
Bugfix 2045 develop hira (#2049)
JohnHalleyGotway Feb 11, 2022
ce3582d
#2044 ci-run-test merge again
Feb 11, 2022
fd95301
Feature 2040 patch (#2053)
JohnHalleyGotway Feb 15, 2022
1852dae
For #2044, fix a typo in PB2NCConfig_G212. A commented out obs_bufr_v…
JohnHalleyGotway Feb 17, 2022
6b2134d
Merge pull request #2050 from dtcenter/feature_2044_pb2nc_config
hsoh-u Feb 17, 2022
418ebe7
print docker build log to GHA log if build fails
georgemccabe Feb 18, 2022
0d04d0d
Feature 1824 pb2nc mlcape (#2057)
hsoh-u Feb 18, 2022
a2a7372
Feature 1583 es hira (#2056)
JohnHalleyGotway Feb 18, 2022
e1160cf
Merge branch 'develop-ref' into develop
JohnHalleyGotway Feb 19, 2022
10ca15c
#1824 ci-run-test Reset itype to 1 for regular CAPE
Feb 19, 2022
fd9e63c
Merge pull request #2060 from dtcenter/feature_1824_pb2nc_MLCAPE2
hsoh-u Feb 20, 2022
6b78a89
SonarQube: check if pd_ptr is null
Feb 22, 2022
1d58705
#1824 Initialize cape_cnt_surface_msgs
Feb 22, 2022
946e4ec
ci-run-test Removed trailing spaces
Feb 22, 2022
f74ac2a
Modified the PR template to add review of the source issue metadata c…
Feb 22, 2022
2c4e4af
feature_2054_helpEmailChanges (#2064)
davidalbo Feb 23, 2022
ba71e4c
Merge pull request #2065 from dtcenter/feature_1824_pb2nc_MLCAPE2
hsoh-u Feb 23, 2022
36bdf26
Feature set job controls (#2066)
jprestop Feb 23, 2022
ab26b48
Feature 1918 std climo (#2061)
JohnHalleyGotway Feb 23, 2022
005da64
Merge branch 'develop-ref' into develop
JohnHalleyGotway Feb 24, 2022
30ad6b6
Feature 2070 obs_prepbufr_map (#2071)
JohnHalleyGotway Feb 24, 2022
eccbb38
#1996 simplify the retrun statement (no effect with tf_left at the se…
Feb 25, 2022
37aef73
#1996 Add null terminator only if the pointer is not NULL
Feb 25, 2022
543370e
#1996 Reduced duplicated for loops
Feb 25, 2022
4471c4a
#1996 Removed IsSet which is defined at the base class
Feb 25, 2022
c5a80d5
#1996 Initialize the variable
Feb 25, 2022
40569ff
#1996 ci-run-test Initialize the variable, nxy
Feb 25, 2022
b55b5c9
Merge branch 'develop' into feature_1996_sonarqube_findings2
JohnHalleyGotway Mar 1, 2022
7d63e0f
Merge pull request #2073 from dtcenter/feature_1996_sonarqube_findings2
hsoh-u Mar 1, 2022
107ac32
Feature 1918 climo_ens_member_id (#2075)
JohnHalleyGotway Mar 2, 2022
2eb1158
Merge branch 'develop-ref' into develop
JohnHalleyGotway Mar 2, 2022
514c0c3
Feature 1259 es_prob_stats (#2067)
JohnHalleyGotway Mar 2, 2022
ddb3a3b
Feature 2078 v10.1.0-beta6 (#2079)
JohnHalleyGotway Mar 2, 2022
591cbd2
Feature 1259 BIN_MEAN OBS_THRESH (#2082)
JohnHalleyGotway Mar 3, 2022
43c7dad
Merge branch 'develop-ref' into develop
JohnHalleyGotway Mar 3, 2022
de2f9b8
Per #1904, fixing a minor copy/paste bug in gen_ens_prod. We were che…
JohnHalleyGotway Mar 7, 2022
ed50ea4
Initialize tc
Mar 7, 2022
4e7b393
#1824 ci-run-test Separated log message for MLCAPE
Mar 7, 2022
bffb7e5
ci-run-test Do not calls set(TcrmwData *)
Mar 7, 2022
ab03051
Initialze obs_data at constructor to avoid warninjg on building
Mar 7, 2022
4605a77
Initialze obs_data at constructor to avoid a warning by compiler
Mar 7, 2022
182f461
#1824 ci-run-test Removed the duplicated code
Mar 7, 2022
04510c3
Feature 1810 expand asciitable (#2086)
JohnHalleyGotway Mar 7, 2022
1b9784e
Merge pull request #2089 from dtcenter/feature_1824_pb2nc_MLCAPE3
hsoh-u Mar 8, 2022
ee0be03
Feature 1583 skip_mean (#2090)
JohnHalleyGotway Mar 8, 2022
ef01628
Feature 1275 MODE Object Count (#2091)
JohnHalleyGotway Mar 9, 2022
db2debf
Feature 1184 dryline (#2088)
JohnHalleyGotway Mar 10, 2022
ce1cd99
Feature 1184 replace_env (#2093)
JohnHalleyGotway Mar 10, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/testing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ jobs:
matrix:
tests:
- 'ascii2nc_indy pb2nc_indy tc_dland tc_pairs tc_stat plot_tc tc_rmw rmw_analysis tc_gen'
- 'met_test_scripts mode_graphics mtd regrid airnow gsi_tools netcdf modis series_analysis gen_ens_prod wwmca_regrid gen_vx_mask grid_weight interp_shape grid_diag grib_tables lidar2nc shift_data_plane trmm2nc aeronet wwmca_plot ioda2nc gaussian'
- 'met_test_scripts mode_multivar mode_graphics mtd regrid airnow gsi_tools netcdf modis series_analysis gen_ens_prod wwmca_regrid gen_vx_mask grid_weight interp_shape grid_diag grib_tables lidar2nc shift_data_plane trmm2nc aeronet wwmca_plot ioda2nc gaussian'
fail-fast: false
steps:
- uses: actions/checkout@v2
Expand Down
2 changes: 2 additions & 0 deletions met/Make-include
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ MET_CPPFLAGS = -I${top_builddir}/src/basic/vx_cal \
-I${top_builddir}/src/libcode/vx_solar \
-I${top_builddir}/src/libcode/vx_statistics \
-I${top_builddir}/src/libcode/vx_stat_out \
-I${top_builddir}/src/libcode/vx_bool_calc \
-I${top_builddir}/src/libcode/vx_summary \
-I${top_builddir}/src/libcode/vx_time_series \
-I${top_builddir}/src/libcode/vx_series_data \
Expand Down Expand Up @@ -73,6 +74,7 @@ MET_LDFLAGS = -L${top_builddir}/src/basic/vx_cal \
-L${top_builddir}/src/libcode/vx_pxm \
-L${top_builddir}/src/libcode/vx_render \
-L${top_builddir}/src/libcode/vx_regrid \
-L${top_builddir}/src/libcode/vx_bool_calc \
-L${top_builddir}/src/libcode/vx_shapedata \
-L${top_builddir}/src/libcode/vx_solar \
-L${top_builddir}/src/libcode/vx_statistics \
Expand Down
1 change: 1 addition & 0 deletions met/configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -1240,6 +1240,7 @@ AC_CONFIG_FILES([Makefile
src/libcode/vx_summary/Makefile
src/libcode/vx_python3_utils/Makefile
src/libcode/vx_data2d_python/Makefile
src/libcode/vx_bool_calc/Makefile
src/libcode/vx_pointdata_python/Makefile
src/tools/Makefile
src/tools/core/Makefile
Expand Down
1 change: 0 additions & 1 deletion met/data/config/MODEConfig_default
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ obtype = "ANALYS";

//
// Verification grid
// May be set separately in each "field" entry
//
regrid = {
to_grid = NONE;
Expand Down
259 changes: 259 additions & 0 deletions met/data/config/MODEMultivarConfig_default
Original file line number Diff line number Diff line change
@@ -0,0 +1,259 @@
////////////////////////////////////////////////////////////////////////////////
//
// MODE configuration file.
//
// For additional information, please see the MET User's Guide.
//
////////////////////////////////////////////////////////////////////////////////

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

//
// Output description to be written
//
desc = "NA";

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

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

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

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

//
// Approximate grid resolution (km)
//
grid_res = 20;

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

//
// Run all permutations of radius and threshold
//
quilt = FALSE;

//
// MODE Multivar boolean combination logic
//
multivar_logic = "#1 && #2 && #3";

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

field = [

{
name = "ALPHA";
level = "(*,*)";
},

{
name = "BETA";
level = "(*,*)";
},

{
name = "GAMMA";
level = "(*,*)";
}

];

conv_radius = 2; // in grid squares
conv_thresh = >=5.0;
vld_thresh = 0.5;
filter_attr_name = [];
filter_attr_thresh = [];
merge_thresh = >=3.5;
merge_flag = NONE;
}
obs = fcst;

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

//
// Handle missing data
//
mask_missing_flag = NONE;

//
// Match objects between the forecast and observation fields
//
match_flag = NONE;

//
// Maximum centroid distance for objects to be compared
//
max_centroid_dist = 800.0/grid_res;

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

//
// Verification masking regions
//
mask = {
grid = "";
grid_flag = NONE; // Apply to NONE, FCST, OBS, or BOTH
poly = "";
poly_flag = NONE; // Apply to NONE, FCST, OBS, or BOTH
}

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

//
// Fuzzy engine weights
//
weight = {
centroid_dist = 2.0;
boundary_dist = 4.0;
convex_hull_dist = 0.0;
angle_diff = 1.0;
aspect_diff = 0.0;
area_ratio = 1.0;
int_area_ratio = 2.0;
curvature_ratio = 0.0;
complexity_ratio = 0.0;
inten_perc_ratio = 0.0;
inten_perc_value = 50;
}

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

//
// Fuzzy engine interest functions
//
interest_function = {

centroid_dist = (
( 0.0, 1.0 )
( 60.0/grid_res, 1.0 )
( 600.0/grid_res, 0.0 )
);

boundary_dist = (
( 0.0, 1.0 )
( 400.0/grid_res, 0.0 )
);

convex_hull_dist = (
( 0.0, 1.0 )
( 400.0/grid_res, 0.0 )
);

angle_diff = (
( 0.0, 1.0 )
( 30.0, 1.0 )
( 90.0, 0.0 )
);

aspect_diff = (
( 0.00, 1.0 )
( 0.10, 1.0 )
( 0.75, 0.0 )
);

corner = 0.8;
ratio_if = (
( 0.0, 0.0 )
( corner, 1.0 )
( 1.0, 1.0 )
);

area_ratio = ratio_if;

int_area_ratio = (
( 0.00, 0.00 )
( 0.10, 0.50 )
( 0.25, 1.00 )
( 1.00, 1.00 )
);

curvature_ratio = ratio_if;

complexity_ratio = ratio_if;

inten_perc_ratio = ratio_if;
}

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

//
// Total interest threshold for determining matches
//
total_interest_thresh = 0.7;

//
// Interest threshold for printing output pair information
//
print_interest_thresh = 0.0;

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

//
// Plotting information
//
met_data_dir = "MET_BASE";

fcst_raw_plot = {
color_table = "MET_BASE/colortables/met_default.ctable";
plot_min = 0.0;
plot_max = 0.0;
}

obs_raw_plot = {
color_table = "MET_BASE/colortables/met_default.ctable";
plot_min = 0.0;
plot_max = 0.0;
}

object_plot = {
color_table = "MET_BASE/colortables/mode_obj.ctable";
}

//
// Boolean for plotting on the region of valid data within the domain
//
plot_valid_flag = FALSE;

//
// Plot polyline edges using great circle arcs instead of straight lines
//
plot_gcarc_flag = FALSE;

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

//
// NetCDF matched pairs, PostScript, and contingency table output files
//
ps_plot_flag = TRUE;
nc_pairs_flag = TRUE;
ct_stats_flag = TRUE;

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

shift_right = 0; // grid squares

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

output_prefix = "";
version = "V10.1.0";

////////////////////////////////////////////////////////////////////////////////
1 change: 1 addition & 0 deletions met/data/config/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ config_DATA = \
Madis2NcConfig_default \
MODEAnalysisConfig_default \
MODEConfig_default \
MODEMultivarConfig_default \
MTDConfig_default \
PB2NCConfig_default \
PointStatConfig_default \
Expand Down
26 changes: 24 additions & 2 deletions met/docs/Users_Guide/mode.rst
Original file line number Diff line number Diff line change
Expand Up @@ -103,10 +103,21 @@ Summary statistics

Once MODE has been run, summary statistics are written to an output file. These files contain information about all single and cluster objects and their attributes. Total interest for object pairs is also output, as are percentiles of intensity inside the objects. The output file is in a simple flat ASCII tabular format (with one header line) and thus should be easily readable by just about any programming language, scripting language, or statistics package. Refer to :numref:`MODE-output` for lists of the statistics included in the MODE output files. Example scripts will be posted on the MET website in the future.

.. _MODE-multivar:

Multi-Variate MODE
------------------

Traditionally, MODE defines objects by smoothing and thresholding data from a single input field. MET version 10.1.0 extends MODE by adding the option to define objects using multiple input fields.

As described in :numref:`MODE-configuration-file`, the **field** entry in the forecast and observation dictionaries define the input data to be processed. If **field** is defined as a dictionary, the traditional method for running MODE is invoked, where objects are defined using a single input field. If **field** is defined as an array of dictionaries, each specifying a different input field, then the multi-variate MODE logic is invoked and requires the **multivar_logic** configuration entry to be set. Traditional MODE is run once for each input field to define objects for that field. Note that the object definition criteria can be defined separately for each field array entry. The objects from each input field are combined into a *super* object for both the forecast and observation data.

The **multivar_logic** configuration entry, described in :numref:`MODE-configuration-file`, defines the boolean logic for combining objects from multiple fields into a *super* object. If this configuration option is set, there must be an equal or greater number of fields defined in an array of dictionaries for it define a *super* object of more than one field. Note that the multi-variate MODE forecast and observation input fields and combination logic do not need to match. The resulting forecast and observation *super* objects are written to NetCDF output files. Users can then configure and run traditional MODE to compare the forecast super object to the observed super object.

Practical information
=====================

This section contains a description of how MODE can be configured and run. The MODE tool is used to perform a features-based verification of gridded model data using gridded observations. The input gridded model and observation datasets must be in one of the MET supported gridded file formats. The requirement of having all gridded fields using the same grid specification has been removed with METv5.1. The Grid-Stat tool performs no interpolation when the input model, observation, and climatology datasets must be on a common grid. MET will interpolate these files to a common grid if one is specified. There is a regrid option in the configuration file that allows the user to define the grid upon which the scores will be computed. The gridded analysis data may be based on observations, such as Stage II or Stage IV data for verifying accumulated precipitation, or a model analysis field may be used. However, users are cautioned that it is generally unwise to verify model output using an analysis field produced by the same model.
This section contains a description of how MODE can be configured and run. The MODE tool is used to perform a features-based verification of gridded model data using gridded observations. The input gridded model and observation datasets must be in one of the MET supported gridded file formats. If the input datasets are not already on a common grid, MODE can interpolate them to a common grid. The regrid option in the configuration file enables the user to specify the grid upon which the scores will be computed. The gridded analysis data may be based on observations, such as Stage II or Stage IV data for verifying accumulated precipitation, or a model analysis field may be used. However, users are cautioned that it is generally unwise to verify model output using an analysis field produced by the same model.

MODE provides the capability to select a single model variable/level from which to derive objects to be analyzed. MODE was developed and tested using accumulated precipitation. However, the code has been generalized to allow the use of any gridded model and observation field. Based on the options specified in the configuration file, MODE will define a set of simple objects in the model and observation fields. It will then compute an interest value for each pair of objects across the fields using a fuzzy engine approach. Those interest values are thresholded, and any pairs of objects above the threshold will be matched/merged. Through the configuration file, MODE offers a wide range of flexibility in how the objects are defined, processed, matched, and merged.

Expand Down Expand Up @@ -198,7 +209,6 @@ _____________________

The configuration options listed above are common to many MET tools and are described in :numref:`config_options`.


_____________________

.. code-block:: none
Expand All @@ -221,6 +231,16 @@ The **quilt** entry indicates whether all permutations of convolution radii and

_____________________

.. code-block:: none

multivar_logic = "#1 && #2 && #3";

The **multivar_logic** entry appears only in the **MODEMultivarConfig_default** file. This option applies to running multi-variate MODE by setting **field** to an array of dictionaries to define multiple input fields. Objects are defined separately for each input field based on the configuration settings specified for each field array entry. The **multivar_logic** entry is a string which defines how objects for each field are combined into a final *super* object. The objects for each field are referred to as '#N' where N is the N-th field array entry. The '&&' and '||' strings define intersection and union logic, respectively. For example, "#1 && #2" is the intersection of the objects from the first and second fields. "(#1 && #2) || #3" is the union of that intersection with the objects from the third field.

The **multivar_logic** entry is parsed separately from the **fcst** and **obs** dictionaries and can be defined differently in each.

_____________________

.. code-block:: none

fcst = {
Expand All @@ -242,6 +262,8 @@ _____________________

The **field** entries in the forecast and observation dictionaries specify the model and observation variables and level to be compared. See a more complete description of them in :numref:`config_options`. In the above example, the forecast settings are copied into the observation dictionary using **obs = fcst;.**

When **field** is set to an array of dictionaries rather than a single one, the multi-variate MODE logic is invoked. Please see :numref:`MODE-multivar` for a description of that logic.

The **censor_thresh** and **censor_val** entries are used to censor the raw data as described in :numref:`config_options`. Their functionality replaces the **raw_thresh** entry, which is deprecated in met-6.1. Prior to defining objects, it is recommended that the raw fields should be made to look similar to each other. For example, if the model only predicts values for a variable above some threshold, the observations should be thresholded at that same level. The censor thresholds can be specified using symbols. By default, no censor thresholding is applied.

The **conv_radius** entry defines the radius of the circular convolution applied to smooth the raw fields. The radii are specified in terms of grid units. The default convolution radii are defined in terms of the previously defined **grid_res** entry. Multiple convolution radii may be specified as an array (e.g. **conv_radius = [ 5, 10, 15 ];**).
Expand Down
Loading