# # # Distribution Statement A. Approved for public release. Distribution unlimited.# # ## # # Author:# # # Naval Research Laboratory, Marine Meteorology Division# # ## # # This program is free software: you can redistribute it and/or modify it under# # # the terms of the NRLMMD License included with this program. This program is# # # distributed WITHOUT ANY WARRANTY; without even the implied warranty of# # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the included license# # # for more details. If you did not receive the license, for more information see:
Version 1.4.0 (2022-01-10)#
v1.4.0: 2022-01-10, add modular metadata output support, causing some internal interface changes
All interface changes due to this update are isolated to internal functions, required to support modular metadata filename and output format specifications. These changes will not impact any user/developer interfaces.
Breaking Interface Changes#
Removed “overlay” procflow - functionality completely covered by config_based procflow.
remove_duplicates:
Now takes dictionary of filenames with associated format information, rather than list of filenames
No longer takes separate “filename_format” argument that must apply to all files
single_source.plot_data
Takes in output_dict rather than separate output file names and output format
Returns dictionary of output file names with associated filename formats, rather than list of filenames
- Takes in variable for kwargs rather than **kwargs
(so it is explicit which kwargs should be applied to which module)
single_source.plot_sectored_data_output (ie, sectored, unregistered outputs)
Takes in output_dict rather than individual filename/output formats
Add area_def argument
Returns dictionary of output file names with associated filename formats, rather than list of filenames
single_source.process_xarray_dict_to_output_format (ie, unsectored, unregistered outputs)
Takes in output_dict rather than individual filename/output formats
Add area_def argument
Returns dictionary of output file names with associated filename formats, rather than list of filenames
single_source.get_filename
- (alg_xarray, area_def, filename_format, product_name)
- -> (filename_format, product_name=None, alg_xarray=None, area_def=None,
output_dict=None, suppored_filenamer_type=None)
Consolidated to support
metadata outputs
sectored/unsectored outputs
registered outputs
Remove center coverage check from 89H-Physical product
For consistency with other products, request at the command line / output config level
Add center coverage product_params_override to direct command line amsr2.sh test call
Refactor#
- Pass “output_dict” to all filename and output modules, for consistent application of options
(allows specifying arguments via single_source command line or output YAML config dict)
kwarg to all product modular interface functions
- Optional kwarg to all filename and output modules (if it is not included as a kwarg, it is filtered
out from within single_source and not attempted to be passed in)
tc_clean_fname - for including coverage function information in filename
tc_fname - for including coverage function information in filename
single_source.output_all_metadata
Returns dictionary of output filenames and formats
single_source.get_output_filenames
Returns dictionary of output_filenames and metadata_filenames with associated formats
- Separate test_all.sh (includes test scripts that do not have bundled test data) and test_base_install.sh
(only includes test scripts with bundled test data)
Move “get_bg_xarray” from overlay procflow to config_based procflow
Major New Functionality#
Updated “product” modular interface
Add “list_products_by_source” and “list_products_by_products”
Available functionality documentation page - includes readers and products, with examples
Readers
AMSU-B
HY2
SAR
SMOS
Products
183-3H
NRCS
sectored text winds
unsectored text winds
- Sample test scripts with explicit command line call examples - input dataset NOT included, but
all sector information and output comparison files are available directly within geoips
AMSR2 89H-Physical, using bdeck bio012020.dat
AMSU-B 183-3H, using bdeck bwp022021.dat
SAR windspeed, using bdeck bwp312018.dat
SMOS sectored, using bdeck bsh162020.dat
Sectored and Unsectored text wind outputs
SAR
Support user-defineable metadata output formats, command line args and YAML output config fields
metadata_filename_format (default None)
metadata_filename_format_kwargs (default {})
metadata_output_format (default None)
metadata_output_format_kwargs (default {})
Support user-defineable modifications to product parameters, via command line or output config fields
product_params_override (default {})
- Add “standard_metadata” filename and output format types (to match version previously used automatically for
all TC sectors - will continue to use “standard_metadata” for testing purposes to avoid changing all test repo outputs)
Add “output_config” interface module to pull parameters from output config dictionaries
output_config_dict: full dictionary referring to complete YAML output config file
- output_dict: dictionary referring to a single set of output parameters for a single output type
(subset of output_config_dict - matches “command_line_args” in single_source procflow)
Improvements#
Moved documentation imagery into subdirectories
available_functionality
geoips_overview
command_line_examples
More informative log statement at the end of single_source and config_based procflows
During output comparisons, name diff directory “diff_test_output_dir” and files “diff_test_output”