METv5.2 includes several enhancements to existing tools, including improved GRIB1/2 table support, grid box area weighting, and usability features. Additional details on these changes are listed below.
Enhancements to Existing Tools
Problem: The center number in the ECMWF GRIB1 table in MET was incorrectly listed as 7.
Solution: Correct the center number value to be 98.
Update: met-5.2/data/table_files/grib1_ecmwf_128_98.txt
Problem: Passing a MADIS file to MADIS2NC which lacks some of the expected observation variables leads to a runtime error.
Solution: Improve the error checking of MADIS2NC to skip the processing of variables which are not present.
Update: met-5.2/src/tools/other/madis2nc/madis2nc.cc
Problem: Series-Analysis was not processing climatology data correctly leading to a runtime error.
Solution: Fix Series-Analysis to parse the climo.field settings properly.
Update: met-5.2/src/tools/core/series_analysis/series_analysis.cc
Problem: TC-Pairs inspects the ATCF track data and computes the time steps between track points. The most common time step is used in additional processing. This logic breaks down with very short and irregularly spaced tracks. Solution: For BEST tracks, assume the time step to fixed as 6 hours.
Update: met-5.2/src/tools/tc_utils/tc_pairs/tc_pairs.h
Update: met-5.2/src/tools/tc_utils/tc_pairs/tc_pairs.cc
Problem: MET was unable to parse the grid information from a valid CF-compliant NetCDF file because it failed to examine enough variables.
Solution: The fix is to update the MET library code to continue searching variables for the grid definition.
Update: met-5.2/src/libcode/vx_data2d_nccf/nccf_file.cc
Problem: Users reported very slow performance from Grid-Stat when computing continuous statistics on high resolution grids. Debugging revealed very inefficient memory allocation logic in the MET statistics libraries. Many small memory allocations and reallocations slowed down the code considerably.
Solution: The fix is to update the MET library and application code to allocate the expected amount of required memory in one big chunk. Updating this logic caused the runtime of one test case to improve from 36 minutes to 18 seconds.
Update: met-5.2/src/libcode/vx_statistics/pair_base.h
Update: met-5.2/src/libcode/vx_statistics/pair_base.cc
Update: met-5.2/src/libcode/vx_statistics/pair_data_point.h
Update: met-5.2/src/libcode/vx_statistics/pair_data_point.cc
Update: met-5.2/src/libcode/vx_statistics/pair_data_ensemble.h
Update: met-5.2/src/libcode/vx_statistics/pair_data_ensemble.cc
Update: met-5.2/src/libcode/vx_statistics/met_stats.cc
Update: met-5.2/src/basic/vx_util/data_plane_util.cc
Update: met-5.2/src/basic/vx_cal/time_array.h
Update: met-5.2/src/basic/vx_util/num_array.h
Update: met-5.2/src/tools/core/grid_stat/grid_stat.cc
Update: met-5.2/src/tools/core/ensemble_stat/ensemble_stat.cc
Problem: There are two problems here. The MET code which parses GRIB table files fails to read the last line of files which lack a trailing newline. Also, eight GRIB table files contain one or more minor problems.
Solution: Update the parsing code to handle GRIB table files with or without a trailing newline and correct the problematic GRIB table files.
Update: met-5.2/src/basic/vx_log/concat_string.cc
Update: met-5.2/src/libcode/vx_data2d/table_lookup.cc
Update: met-5.2/data/table_files/grib1_dwd_201_146.txt
Update: met-5.2/data/table_files/grib1_dwd_201_78.txt
Update: met-5.2/data/table_files/grib1_ecmwf_130_98.txt
Update: met-5.2/data/table_files/grib1_ecmwf_151_98.txt
Update: met-5.2/data/table_files/grib1_ecmwf_172_98.txt
Update: met-5.2/data/table_files/grib1_ecmwf_190_98.txt
Update: met-5.2/data/table_files/grib1_ncep_129_7.txt
Update: met-5.2/data/table_files/grib1_ncep_141_7.txt
Problem: The conventional diagnostic files produced by GSI versions 3.3 and 3.4 use a record header that is larger than in previous versions which causes a runtime error for the MET GSI tools.
Solution: The fix is to allow GSI diagnostic record headers to be 19 (previous size) or 23 (new size) bytes in length.
Update: met-5.2/src/tools/other/gsi_tools/conv_record.cc
Problem: The 5.2 release added support for defining multiple convolution radii and thresholds. However, support for multiple merge thresholds was not added, making the use of double threshold merging problematic.
Solution: The fix is to correct the MODE logic to support multiple merge thresholds. The number of merge thresholds must match the number of convolution thresholds.
Update: met-5.2/src/libcode/vx_shapedata/mode_conf_info.h
Update: met-5.2/src/libcode/vx_shapedata/mode_conf_info.cc
Update: met-5.2/src/tools/core/mode/mode.cc
Update: met-5.2/src/tools/core/mode/mode_exec.cc
Problem: The -mask_poly option for STAT-Analysis and -out_init_mask and -out_valid_mask options for TC-Stat specify lat/lon polyline masking regions for filtering the input data. Those options are not working because of the sign of the longitude. While all MET input and output files define degrees east longitude as positive, the internal MET grid library assumes degrees west to be positive. Therefore, the longitude values need to be toggled in certain places.
Solution: The fix is to correct the sign of the longitudes in STAT-Analysis and TC-Stat.
Update: met-5.2/src/libcode/vx_analysis_util/stat_job.cc
Update: met-5.2/src/tools/core/stat_analysis/aggr_stat_line.cc
Update: met-5.2/src/tools/tc_utils/tc_stat/tc_stat_job.cc
Retrieve all of the recommended updates for METv5.2 in a tarfile:
Copyright © 2024. All rights reserved.