********
Overview
********
Purpose and organization of the User's Guide
============================================
The goal of this User's Guide is to equip users with the information
needed to use the Model Evaluation Tools (MET) and its companion
package METplus Wrappers. MET is a set of verification tools developed
and supported to community via the Developmental Testbed Center (DTC)
for use by the numerical weather prediction community. METplus Wrappers
is a suite of Python wrappers and ancillary scripts to enhance the
user's ability to quickly set-up and run MET. Over the next few years,
METplus Wrappers will become the authoritative repository for
verification of the Unified Forecast System.
The METplus Wrappers User's Guide is organized as follows. An overview of
METplus Wrappers can be found below. :ref:`install` contains basic
information about how to get started with METplus
Wrappers - including system requirements, required software, and how to
download METplus Wrappers. :ref:`sysconf` provides
information about configuring your environment and METplus Wrappers
installation.
The Developmental Testbed Center (DTC)
======================================
METplus Wrappers has been developed, and will be maintained and
enhanced, by the Developmental Testbed Center (DTC;
http://www.dtcenter.org/ ). The main goal of the DTC is to serve as a
bridge between operations and research and to facilitate the activities of
these two important components of the numerical weather prediction (NWP)
community. The DTC provides an environment that is functionally
equivalent to the operational environment in which the research
community can test model enhancements; the operational community
benefits from DTC testing and evaluation of models before new models are
implemented operationally. METplus Wrappers serves both the research and
operational communities in this way - offering capabilities for
researchers to test their own enhancements to models and providing a
capability for the DTC to evaluate the strengths and weaknesses of
advances in NWP prior to operational implementation.
METplus Wrappers will also be available to DTC visitors and the NOAA Unified Forecast System (UFS) and NCAR System for Integrated Modeling of the Atmosphere (SIMA) modeling communities for testing and evaluation of new model capabilities,
applications in new environments, and so on. The METplus Wrappers
release schedule is coincident with the MET release schedule and the
METplus Wrappers major release number is six less than the MET major
release number (e.g. MET 8.X is released with METplus Wrappers 2.X).
METplus Wrappers goals and design philosophy
============================================
METplus Wrappers is a Python scripting infrastructure for the MET tools.
The primary goal of METplus Wrappers development is to provide MET users
with a highly configurable and simple means to perform model
verification using the MET tools. Prior to the availability of METplus
Wrappers, users who had more complex verifications that required the use
of more than one MET tool were faced with setting up multiple MET config
files and creating some automation scripts to perform the verification.
METplus Wrappers provides the user with the infrastructure to modularly
create the necessary steps to perform such verifications.
METplus Wrappers has been designed to be modular and adaptable. This is
accomplished through wrapping the MET tools with Python and the use of
hierarchical configuration files to enable users to readily customize
their verification environments. Wrappers can be run individually, or as
a group of wrappers that represent a sequence of MET processes. New
wrappers can readily be added to the METplus Wrappers package due to
this modular design. Currently, METplus Wrappers can easily be applied
by any user on their own computer platform that supports Python 3.8. We have deprecated support to Python 2.7.
The METplus Wrappers code and documentation is maintained by the DTC in
Boulder, Colorado. METplus Wrappers is freely available to the modeling,
verification, and operational communities, including universities,
governments, the private sector, and operational modeling and prediction
centers through a publicly accessible GitHub repository. Refer to
:ref:`getcode` for simple examples of obtaining METplus Wrappers.
METplus Wrappers Components
===========================
The major components of the METplus Wrappers package are METplus Python
wrappers to the MET tools, MET configuration files and a hierarchy of
METplus Wrappers configuration files. Some Python wrappers do not
correspond to a particular MET tool, but wrap utilities to extend
METplus functionality.
.. _python_requirements_table:
METplus Components Python Requirements
======================================
.. Number of characters per line:
Name - no more that 13 characters
Version - no more than 6 characters
METplus component - no more than 17 characters
Source - no more than 8 characters
Description - no more than 22 (was 20) characters
Use Cases - no more than 17 (was 10) characters
.. role:: raw-html(raw)
:format: html
.. list-table:: METplus Components Python Requirements
:widths: auto
:header-rows: 1
* - Name
- Version
- METplus Component
- Source
- Description
- Use Cases (only applicable for METplus wrappers component)(followed by
python package name)
* - Python 3.10.4+
-
- METplus wrappers, :raw-html:`
`
METcalcpy, :raw-html:`
`
METplotpy, :raw-html:`
`
METdataio
-
-
-
* - cartopy
- >=0.21.1
- METplus wrappers, :raw-html:`
`
METcalcpy, :raw-html:`
`
METplotpy
- https://scitools.org.uk/cartopy/docs/latest/
- Designed for :raw-html:`
`
geospatial data :raw-html:`
`
processing in :raw-html:`
`
order to produce :raw-html:`
`
maps and other :raw-html:`
`
geospatial data :raw-html:`
`
analyses
- `TCGen: Genesis Density Function (GDF)
and Track Density Function (TDF)
(cartopy)
<../generated/model_applications/s2s/TCGen_fcstGFSO_obsBDECKS_GDF_TDF.html>`_ :raw-html:`
`
`CyclonePlotter: Extra-TC Tracker
and Plotting Capabilities
(cartopy)
<../generated/model_applications/tc_and_extra_tc/CyclonePlotter_fcstGFS_obsGFS_UserScript_ExtraTC.html>`_
* - cfgrib
-
- METplus wrappers
- https://pypi.org/project/cfgrib/
- map GRIB files :raw-html:`
`
to the NetCDF :raw-html:`
`
Common Data Model :raw-html:`
`
following the :raw-html:`
`
CF Convention :raw-html:`
`
using ecCodes
- `Multi_Tool:
Feature Relative by Lead using
Multiple User-Defined Fields
(cfgrib)
<../generated/model_applications/medium_range/TCStat_SeriesAnalysis_fcstGFS_obsGFS_FeatureRelative_SeriesByLead_PyEmbed_Multiple_Diagnostics.html>`_
* - cmocean
-
- METcalcpy, :raw-html:`
`
METplotpy
- https://pypi.org/project/cmocean/
- contains colormaps :raw-html:`
`
for commonly-used :raw-html:`
`
oceanographic variables
-
* - dateutil
- >=2.8.2
- METplus wrappers
- https://github.com/dateutil/dateutil/releases
- provides powerful :raw-html:`
`
extensions to the :raw-html:`
`
standard datetime :raw-html:`
`
module
- Most
* - eofs
-
- METplus wrappers, :raw-html:`
`
METcalcpy, :raw-html:`
`
METplotpy
- https://pypi.org/project/eofs/
- empirical orthogonal :raw-html:`
`
functions analysis of :raw-html:`
`
spatial-temporal data
- `WeatherRegime Calculation:
RegridDataPlane,
PcpCombine,
and WeatherRegime python code
(eofs)
<../generated/model_applications/s2s/UserScript_obsERA_obsOnly_WeatherRegime.html>`_ :raw-html:`
`
`WeatherRegime Calculation:
GFS and ERA RegridDataPlane,
PcpCombine, and
WeatherRegime python code
(eofs)
<../generated/model_applications/s2s/UserScript_fcstGFS_obsERA_WeatherRegime.html>`_
* - h5py
-
- METplus wrappers
- https://github.com/h5py/h5py
- Pythonic interface :raw-html:`
`
to the HDF5 :raw-html:`
`
binary data format
- `PCPCombine:
Python Embedding Use Case
(h5py)
<../generated/met_tool_wrapper/PCPCombine/PCPCombine_python_embedding.html>`_
* - imutils
- >=0.5.4
- METplotpy :raw-html:`
`
- https://pypi.org/project/imutils/
- A series of convenience :raw-html:`
`
functions to make basic :raw-html:`
`
image processing :raw-html:`
`
functions such as :raw-html:`
`
translation, rotation, :raw-html:`
`
resizing, skeletonization, :raw-html:`
`
displaying Matplotlib :raw-html:`
`
images, sorting contours, :raw-html:`
`
detecting edges, :raw-html:`
`
and much more easier
-
* - imageio
-
- METcalcpy, :raw-html:`
`
METplotpy
- https://pypi.org/project/imageio/
- provides an easy :raw-html:`
`
interface to read :raw-html:`
`
and write a wide :raw-html:`
`
range of image data, :raw-html:`
`
including animated :raw-html:`
`
images, volumetric data, :raw-html:`
`
and scientific formats
-
* - lxml
- >=4.9.1
- METcalcpy, :raw-html:`
`
METplotpy, :raw-html:`
`
METdataio
- https://pypi.org/project/lxml/
- a Pythonic binding for :raw-html:`
`
the C libraries :raw-html:`
`
libxml2 and libxslt
-
* - matplotlib
- >=3.6.3
- METplus wrappers, :raw-html:`
`
METcalcpy, :raw-html:`
`
METplotpy
- https://matplotlib.org/stable/users/installing/index.html
- a comprehensive library :raw-html:`
`
for creating static, :raw-html:`
`
animated, and :raw-html:`
`
interactive visualizations
- `UserScript:
Make OMI plot from
calculated MJO indices (obs only)
(matplotlib)
<../generated/model_applications/s2s/UserScript_obsERA_obsOnly_OMI.html>`_ :raw-html:`
`
`TCGen:
Genesis Density Function (GDF)
and Track Density Function (TDF)
(matplotlib)
<../generated/model_applications/s2s/TCGen_fcstGFSO_obsBDECKS_GDF_TDF.html>`_ :raw-html:`
`
`UserScript:
Make a Phase Diagram plot
from input RMM or OMI
(matplotlib)
<../generated/model_applications/s2s/UserScript_obsERA_obsOnly_PhaseDiagram.html>`_ :raw-html:`
`
`UserScript:
Make OMI plot from
calculated MJO indices
(matplotlib)
<../generated/model_applications/s2s/UserScript_fcstGFS_obsERA_OMI.html>`_ :raw-html:`
`
`UserScript:
Make RMM plots from
calculated MJO indices
(matplotlib)
<../generated/model_applications/s2s/UserScript_obsERA_obsOnly_RMM.html>`_ :raw-html:`
`
`CyclonePlotter:
Extra-TC Tracker and
Plotting Capabilities
(matplotlib)
<../generated/model_applications/tc_and_extra_tc/CyclonePlotter_fcstGFS_obsGFS_UserScript_ExtraTC.html>`_ :raw-html:`
`
* - metcalcpy
-
- METplus wrappers, :raw-html:`
`
METcalcpy, :raw-html:`
`
METplotpy
- https://github.com/dtcenter/METcalcpy/releases
- a Python version of the :raw-html:`
`
statistics calculation :raw-html:`
`
functionality of :raw-html:`
`
METviewer, METexpress, :raw-html:`
`
plotting packages in :raw-html:`
`
METplotpy and is a :raw-html:`
`
stand-alone package for :raw-html:`
`
any other application
- `UserScript:
Make a Hovmoeller plot
(metcalcpy)
<../generated/model_applications/s2s/UserScript_obsPrecip_obsOnly_Hovmoeller.html>`_ :raw-html:`
`
`UserScript:
Make a Cross Spectra plot
(metcalcpy)
<../generated/model_applications/s2s/TCGen_fcstGFSO_obsBDECKS_GDF_TDF.html>`_ :raw-html:`
`
`Grid-Stat:
Verification of TC forecasts
against merged TDR data
(metcalcpy)
<../generated/model_applications/s2s/UserScript_obsPrecip_obsOnly_CrossSpectraPlot.html>`_ :raw-html:`
`
`UserScript:
Calculate the Difficulty Index
(metcalcpy)
<../generated/model_applications/medium_range/UserScript_fcstGEFS_Difficulty_Index.html>`_ :raw-html:`
`
`UserScript:
Make zonal and meridonial means
(metcalcpy)
<../generated/model_applications/s2s/UserScript_obsERA_obsOnly_Stratosphere.html>`_ :raw-html:`
`
* - metplotpy
-
- METplus wrappers
- https://github.com/dtcenter/METplotpy/releases
- contains packages for :raw-html:`
`
plotting in METplus as :raw-html:`
`
stand-alone, or part of :raw-html:`
`
METplus use case, :raw-html:`
`
METplus wrappers, :raw-html:`
`
METexpress, :raw-html:`
`
or METviewer
- `UserScript:
Make a Hovmoeller plot
(metplotpy)
<../generated/model_applications/s2s/UserScript_obsPrecip_obsOnly_Hovmoeller.html>`_ :raw-html:`
`
`UserScript:
Make a Cross Spectra plot
(metplotpy)
<../generated/model_applications/s2s/UserScript_obsPrecip_obsOnly_CrossSpectraPlot.html>`_ :raw-html:`
`
`UserScript:
Calculate the Difficulty Index
(metplotpy)
<../generated/model_applications/medium_range/UserScript_fcstGEFS_Difficulty_Index.html>`_ :raw-html:`
`
`TCGen:
Genesis Density Function (GDF)
and Track Density Function (TDF)
(metplotpy)
<../generated/model_applications/s2s/TCGen_fcstGFSO_obsBDECKS_GDF_TDF.html>`_
* - metpy
- >=1.4.0
- METplus wrappers
- https://www.unidata.ucar.edu/software/metpy/
- a collection of tools :raw-html:`
`
in Python for reading, :raw-html:`
`
visualizing, and :raw-html:`
`
performing calculations :raw-html:`
`
with weather data
- `Multi_Tool:
Feature Relative by Lead using
Multiple User-Defined Fields
(metpy)
<../generated/model_applications/medium_range/TCStat_SeriesAnalysis_fcstGFS_obsGFS_FeatureRelative_SeriesByLead_PyEmbed_Multiple_Diagnostics.html>`_
* - nc-time-axis
- 1.4
- METplotpy :raw-html:`
`
stratosphere_diagnostics
- https://github.com/SciTools/nc-time-axis
- extension to cftime :raw-html:`
`
\**REQUIRES Python 3.7
-
* - netCDF4
- >=1.6.2
- METplus wrappers, :raw-html:`
`
METcalcpy, :raw-html:`
`
METplotpy
- https://unidata.github.io/netcdf4-python/
- a Python interface to :raw-html:`
`
the netCDF C library
- For using MET Python embedding functionality in use cases
* - numpy
- >=1.24.2
- METplus wrappers, :raw-html:`
`
METcalcpy, :raw-html:`
`
METplotpy, :raw-html:`
`
METdataio
- https://numpy.org/
- NumPy offers :raw-html:`
`
comprehensive :raw-html:`
`
mathematical functions, :raw-html:`
`
random number generators, :raw-html:`
`
linear algebra routines, :raw-html:`
`
Fourier transforms, and more.
- For using MET Python embedding functionality in use cases
* - pandas
- >=1.5.2
- METplus wrappers, :raw-html:`
`
METcalcpy, :raw-html:`
`
METplotpy, :raw-html:`
`
METdataio
- https://pypi.org/project/pandas
- a fast, powerful, :raw-html:`
`
flexible and easy to use :raw-html:`
`
open source data analysis :raw-html:`
`
and manipulation tool, :raw-html:`
`
built on top of the :raw-html:`
`
Python programming :raw-html:`
`
language
- For using MET Python embedding functionality in use cases
* - pint
- >=0.20.1
- METcalcpy
- https://github.com/hgrecco/pint
- Python package to define, :raw-html:`
`
operate and manipulate :raw-html:`
`
physical quantities
-
* - plotly
- >=5.13.0
- METcalcpy, :raw-html:`
`
METplotpy
- https://github.com/plotly/plotly.py
- makes interactive, :raw-html:`
`
publication-quality graphs
-
* - pygrib
-
- METplus wrappers
- https://github.com/jswhit/pygrib
- for reading/writing :raw-html:`
`
GRIB files
- `Multi_Tool:
Feature Relative by Lead
using Multiple User-Defined Fields
(pygrib)
<../generated/model_applications/medium_range/TCStat_SeriesAnalysis_fcstGFS_obsGFS_FeatureRelative_SeriesByLead_PyEmbed_Multiple_Diagnostics.html>`_
* - pylab
-
- METplus wrappers
- https://pypi.org/project/matplotlib/
- a convenience module :raw-html:`
`
that bulk imports :raw-html:`
`
matplotlib.pyplot (for :raw-html:`
`
plotting) and NumPy (for :raw-html:`
`
Mathematics and working :raw-html:`
`
with arrays) in a :raw-html:`
`
single name space
- `WeatherRegime Calculation:
RegridDataPlane, PcpCombine,
and WeatherRegime python code
(pylab)
<../generated/model_applications/s2s/UserScript_obsERA_obsOnly_WeatherRegime.html>`_ :raw-html:`
`
`WeatherRegime Calculation:
GFS and ERA RegridDataPlane,
PcpCombine, and WeatherRegime
python code
(pylab)
<../generated/model_applications/s2s/UserScript_fcstGFS_obsERA_WeatherRegime.html>`_
* - pymysql
- >=1.0.2
- METcalcpy, :raw-html:`
`
METplotpy, :raw-html:`
`
METdataio
- https://pypi.org/project/psutil/
- a pure-Python MySQL :raw-html:`
`
client library, :raw-html:`
`
based on PEP 249
-
* - pyproj
- >=2.3.1
- METplus wrappers
- https://github.com/pyproj4/pyproj/archive/v2.3.1rel.tar.gz
- Python interface to PROJ :raw-html:`
`
(cartographic projections and :raw-html:`
`
coordinate transformations library)
- `GridStat:
Python Embedding to read
and process ice cover
(pyproj)
<../generated/model_applications/marine_and_cryosphere/GridStat_fcstRTOFS_obsOSTIA_iceCover.html>`_
* - pyresample
-
- METplus wrappers
- https://github.com/pytroll/pyresample
- for resampling geospatial :raw-html:`
`
image data
- `GridStat:
Python Embedding to read and
process SST
(pyresample)
<../generated/model_applications/marine_and_cryosphere/GridStat_fcstRTOFS_obsGHRSST_climWOA_sst.html>`_ :raw-html:`
`
`GridStat:
Python Embedding to read and
process ice cover
(pyresample)
<../generated/model_applications/marine_and_cryosphere/GridStat_fcstRTOFS_obsOSTIA_iceCover.html>`_ :raw-html:`
`
`GridStat:
Python Embedding for sea surface salinity
using level 3, 1 day composite obs
(pyresample)
<../generated/model_applications/marine_and_cryosphere/GridStat_fcstRTOFS_obsSMOS_climWOA_sss.html>`_ :raw-html:`
`
`GridStat:
Python Embedding for sea surface salinity
using level 3, 8 day mean obs
(pyresample)
<../generated/model_applications/marine_and_cryosphere/GridStat_fcstRTOFS_obsSMAP_climWOA_sss.html>`_
* - pytest
- >=7.2.1
- METcalcpy, :raw-html:`
`
METplotpy, :raw-html:`
`
METdataio
- https://github.com/pytest-dev/pytest/archive/5.2.1.tar.gz
- a mature full-featured :raw-html:`
`
Python testing tool that :raw-html:`
`
helps you write better :raw-html:`
`
programs
-
* - python-kaleido
- >=0.2.1
- METcalcpy, :raw-html:`
`
METplotpy
- https://pypi.org/project/kaleido/
- provides a low-level :raw-html:`
`
Python API that is :raw-html:`
`
designed to be used by :raw-html:`
`
high-level plotting :raw-html:`
`
libraries like Plotly
-
* - pyyaml
- >=6.0
- METcalcpy, :raw-html:`
`
METplotpy, :raw-html:`
`
METdataio
- https://github.com/yaml/pyyaml
- a full-featured YAML :raw-html:`
`
framework for the Python :raw-html:`
`
programming language
-
* - scikit-image
- >=0.19.3
- METcalcpy, :raw-html:`
`
METplotpy
- https://scikit-image.org
- a collection of :raw-html:`
`
algorithms for image :raw-html:`
`
processing
-
* - scikit-learn
- >=1.2.2
- METplus wrappers, :raw-html:`
`
METcalcpy, :raw-html:`
`
METplotpy
- https://github.com/scikit-learn/scikit-learn/releases
- Open Source library for :raw-html:`
`
Machine Learning in Python
- `GridStat:
Python Embedding to read and process SST
(scikit-learn)
<../generated/model_applications/marine_and_cryosphere/GridStat_fcstRTOFS_obsGHRSST_climWOA_sst.html>`_ :raw-html:`
`
`GridStat:
Python Embedding to read and process ice cover
(scikit-learn) <../generated/model_applications/marine_and_cryosphere/GridStat_fcstRTOFS_obsOSTIA_iceCover.html>`_ :raw-html:`
`
`GridStat:
Python Embedding for sea surface salinity using level 3,
1 day composite obs
(scikit-learn)
<../generated/model_applications/marine_and_cryosphere/GridStat_fcstRTOFS_obsSMOS_climWOA_sss.html>`_ :raw-html:`
`
`GridStat:
Python Embedding for sea surface salinity using level 3,
8 day mean obs
(scikit-learn)
<../generated/model_applications/marine_and_cryosphere/GridStat_fcstRTOFS_obsSMAP_climWOA_sss.html>`_
* - scipy
- >=1.9.3
- METplus wrappers, :raw-html:`
`
METcalcpy, :raw-html:`
`
METplotpy
- https://www.scipy.org/
- wraps highly-optimized :raw-html:`
`
implementations written :raw-html:`
`
in low-level languages :raw-html:`
`
like Fortran, C, and C++
- `Blocking Calculation:
ERA RegridDataPlane,
PcpCombine, and
Blocking python code
(scipy)
<../generated/model_applications/s2s/UserScript_obsERA_obsOnly_Blocking.html>`_ :raw-html:`
`
`WeatherRegime Calculation:
RegridDataPlane, PcpCombine, and WeatherRegime python code
(scipy)
<../generated/model_applications/s2s/UserScript_obsERA_obsOnly_WeatherRegime.html>`_ :raw-html:`
`
`UserScript:
Make OMI plot from calculated MJO indices
(obs only) (scipy)
<../generated/model_applications/s2s/UserScript_obsERA_obsOnly_OMI.html>`_ :raw-html:`
`
`WeatherRegime Calculation:
GFS and ERA RegridDataPlane,
PcpCombine, and
WeatherRegime python code
(scipy)
<../generated/model_applications/s2s/UserScript_fcstGFS_obsERA_WeatherRegime.html>`_ :raw-html:`
`
`Blocking Calculation:
GFS and ERA RegridDataPlane,
PcpCombine, and
Blocking python code
(scipy)
<../generated/model_applications/s2s/UserScript_fcstGFS_obsERA_Blocking.html>`_ :raw-html:`
`
`UserScript:
Make a Phase Diagram plot from input RMM or OMI
(scipy)
<../generated/model_applications/s2s/UserScript_obsERA_obsOnly_PhaseDiagram.html>`_ :raw-html:`
`
`UserScript:
Make OMI plot from calculated MJO indices
(scipy)
<../generated/model_applications/s2s/UserScript_fcstGFS_obsERA_OMI.html>`_ :raw-html:`
`
`UserScript:
Make RMM plots from calculated MJO indices
(scipy)
<../generated/model_applications/s2s/UserScript_obsERA_obsOnly_RMM.html>`_
* - sklearn
-
- METplus wrappers
- https://www.kite.com/python/docs/sklearn
- Simple and efficient :raw-html:`
`
tools for predictive :raw-html:`
`
data analysis
- `WeatherRegime Calculation:
RegridDataPlane, PcpCombine, and WeatherRegime python code
(sklearn)
<../generated/model_applications/s2s/UserScript_obsERA_obsOnly_WeatherRegime.html>`_ :raw-html:`
`
`WeatherRegime Calculation:
GFS and ERA RegridDataPlane, PcpCombine, and WeatherRegime python code
(sklearn)
<../generated/model_applications/s2s/UserScript_fcstGFS_obsERA_WeatherRegime.html>`_
* - xarray
- >=2023.1.0
- METplus wrappers, :raw-html:`
`
METcalcpy, :raw-html:`
`
METplotpy
- https://xarray.pydata.org/en/v0.17.0/
- makes working with :raw-html:`
`
labelled :raw-html:`
`
multi-dimensional arrays :raw-html:`
`
simple, efficient, :raw-html:`
`
and fun
- For using MET Python embedding functionality in use cases
* - xesmf
-
- METplus wrappers
- NOTE: The xesmf package :raw-html:`
`
will not be installed :raw-html:`
`
on WCOSS2 and there is :raw-html:`
`
an open GitHub issue to :raw-html:`
`
replace the package in :raw-html:`
`
the use case that uses it: :raw-html:`
`
https://github.com/dtcenter/METplus/issues/1314
- for regridding
- `PlotDataPlane:
Python Embedding of
tripolar coordinate file
(xesmf)
<../generated/model_applications/marine_and_cryosphere/PlotDataPlane_obsHYCOM_coordTripolar.html>`_
* - yaml
-
- METcalcpy, :raw-html:`
`
METplotpy
- https://pypi.org/project/PyYAML/
- to load, read, and write :raw-html:`
`
YAML files with PyYAML
-
Future development plans
========================
METplus Wrappers is an evolving application. New capabilities are
planned in controlled, successive version releases that are synchronized
with MET releases. Software bugs and user-identified problems will be
documented using GitHub issues and fixed either in the next bugfix or
official release. Future METplus Wrappers development plans are based
on several contributing factors, including the needs of both the
operational and research community. Issues that are in the development
queue detailed in the "Issues" section of the GitHub repository.
Please create a post in the
`METplus GitHub Discussions Forum `_
with any questions.
Code support
============
Support for METplus Wrappers is provided through the
`METplus GitHub Discussions Forum `_.
We will endeavor to respond to requests for
help in a timely fashion. In addition, information about METplus
Wrappers and tools that can be used with MET are provided on the
`MET Users web page `_.
We welcome comments and suggestions for improvements to METplus
Wrappers, especially information regarding errors. Comments may be
submitted using the MET Feedback form available on the MET website. In
addition, comments on this document would be greatly appreciated. While
we cannot promise to incorporate all suggested changes, we will
certainly take all suggestions into consideration.
METplus Wrappers is a "living" set of wrappers and configuration files.
Our goal is to continually enhance it and add to its capabilities.
Because our time, resources, and talents can at times be limited, we welcome
contributed code for future versions of METplus. These contributions may
represent new use cases or new plotting functions. For more information
on contributing code to METplus Wrappers, please create a post in the
`METplus GitHub Discussions Forum `_.