pyMeteo is an open source Python module for meteorological support. It is developed for Python 3.x but also works in Python 2.7. The module features include:
Skew-T plotting is supported from the module
skewt and from command line scripts. Both thermodynamic sounding and hodographs can be plotted and various values calculated from the data including estimated storm motion, storm and environment relative helicity, CAPE, CIN, and more.
The plots can be plotted directly from numpy arrays, CSV data, WRF output, or CM1 output.
An extensible graphical utility (PyQT5) for algorithmic generation of thermodynamic soundings and wind profiles is provided by the
cm_geninit script. The output files generated from this utility are suitable for input to both the WRF and CM1 weather models.
The thermodynamic sounding provided is the Weisman Klemp (1982) analytic sounding. The sounding parameters can be modified and displayed before the file is written. It is fairly straightforward to implement other analytic soundings and a future tutorial will be provided. I also welcome pull requests if you implement it yourself!
The wind profiles provided are straight, semicircle, quartercircle and "sickle".
These routines are general conversion utilities and calculators. These support the skew-t plotting and can calculate many things. Full documentation of these will be available as pyMeteo approaches version 1.0
Python classes in the
pymeteo.cm1.read_grads modules allow accessing CM1 output data. The
read_grads class reads native CM1 output and the
read_hdf5 module reads re-tiled hdf5 output post-processed by ingest_cm1.
The easiest way to get the latest stable release of pyMeteo is from PyPi with
pip install pymeteo
To get the latest development version of pyMeteo, you can clone the github repository.
git clone https://github.com/cwebster2/pyMeteo.git cd pyMeteo python setup.py install
If you want to make modifications or additions to pyMeteo and contribute back to the project, you can fork the repo on github and submit pull requests. I welcome contributions!
Documentation is a work in progress and targeted for completion for the version 1.0 milestone. Current documentation can be viewed here.