-
Notifications
You must be signed in to change notification settings - Fork 26
Description
Describe the Enhancement
As of MET-12.0.0, the tc_rmw
, rmw_analysis
, and tc_diag
tools write range/azimuth data to NetCDF output files. Issue #3064 enhanced the MET tools to read data from these NetCDF files and store the spatial information in a range/azimuth grid (RngAziGrid
). However, several additional desired range/azimuth enhancements were beyond the scope of #3064.
For example, while pcp_combine
can read range/azimuth data from a tc_rmw
output file, it exits when attempting to write it to an output file for the range/azimuth grid:
pcp_combine -add tc_rmw_hwrf_gonzalo.nc 'name="RH"; level="(0,0,*,*)";' add.nc
...
ERROR : range_azimuth_grid_output() -> support for writing NetCDF range/azimuth files is currently limited to the tc_rmw, rmw_analysis, and tc_diag tools!
This issue is to more fully support range/azimuth grids across all of the MET tools with the following enhancements:
- Provide a method for defining range/azimuth grids using a grid specification string, as described in Appendix B.
- Testing Enhance the MET statistics tools to read and process range/azimuth data from the TC-RMW and RMW-Analysis tools #3064 functionality to support reading range/azimuth grids from
tc_rmw
,rmw_analysis
, andtc_diag
to confirm that all are supported. Suspect issues withtc_diag
where thetime
dimension is used instead of thetrack_point
and the center lat/lon location is inTrackLat
/TrackLon
instead ofFullTrackLat
/FullTrackLon
. Update the logic to handle these diffs.- Fix
vx_data2d_nc_met
library to handle both TC-RMW and TC-Diag time and location conventions. - Add ability to set grid for RMW-Analysis output.
- Fix
- Enhance the
vx_nc_util
andvx_tc_util
libraries to support writing range/azimuth NetCDF output files (e.g.pcp_combine
andgrid_stat
matched pairs). - Enhance
tc_rmw
andrmw_analysis
to write the standard global attributes forFileOrigins
,MET_version
, andMET_tool
(and could includeProjection: Range Azimuth
) that is noticeably missing. - Reconfigure existing unit tests for range/azimuth inputs to enable optional NetCDF output files (e.g. turn on Grid-Stat NetCDF matched pairs).
- Add unit test for
series_analysis
run on range/azimuth inputs. - Consider refining the
tc_rmw
,rmw_analysis
, andtc_diag
tools to make better use of common library functionality invx_nc_util
and/orvx_tc_util
. - Consider enhancing the
vx_data2d_nc_met
library to support convenience data lookup with the@
notation, like supportlevel = "(@20141013_12,@850,*,*)";
instead of just integer dimension indiceslevel = "(0,0,*,*)";
- Adding full support for this, or restructuring the vx_data2d_nc_met and vx_data2d_nc_cf libraries to provide it, is beyond the scope of this issue. But I did add the following warning message in case
@value
notation is used:
- Adding full support for this, or restructuring the vx_data2d_nc_met and vx_data2d_nc_cf libraries to provide it, is beyond the scope of this issue. But I did add the following warning message in case
WARNING:
WARNING: VarInfoNcMet::set_magic() -> problem parsing "RH(4,@500,*,*)" for the vx_data2d_nc_met library.
WARNING: NetCDF dimensions must be specified as 0-based integer indices rather than using the NetCDF dimension "@value" notation.
WARNING:
Time Estimate
Approx 1 week
Sub-Issues
Consider breaking the enhancement down into sub-issues.
- Add a checkbox for each sub-issue here.
Relevant Deadlines
List relevant project deadlines here or state NONE.
Funding Source
NOAA R2O HAFS 2783604 (PRJ013282)
Up to 40 hours in FY25 Q3.
Define the Metadata
Assignee
- Select engineer(s) or no engineer required
- Select scientist(s) or no scientist required
Labels
- Review default alert labels
- Select component(s)
- Select priority
- Select requestor(s)
Milestone and Projects
- Select Milestone as a MET-X.Y.Z version, Consider for Next Release, or Backlog of Development Ideas
- For a MET-X.Y.Z version, select the MET-X.Y.Z Development project
Define Related Issue(s)
Consider the impact to the other METplus components.
Enhancement Checklist
See the METplus Workflow for details.
- Complete the issue definition above, including the Time Estimate and Funding Source.
- Fork this repository or create a branch of develop.
Branch name:feature_<Issue Number>_<Description>
- Complete the development and test your changes.
- Add/update log messages for easier debugging.
- Add/update unit tests.
- Add/update documentation.
- Push local changes to GitHub.
- Submit a pull request to merge into develop.
Pull request:feature <Issue Number> <Description>
- Define the pull request metadata, as permissions allow.
Select: Reviewer(s) and Development issue
Select: Milestone as the next official version
Select: MET-X.Y.Z Development project for development toward the next official release - Iterate until the reviewer(s) accept and merge your changes.
- Delete your fork or branch.
- Close this issue.