Poster Open Access

Introducing pyPI: Tropical Cyclone Potential Intensity Calculations in Python (Poster #1019, AMS 2021 Annual Meeting)

Daniel M. Gilford

Related person(s)
Daniel Rothenberg; Kerry Emanuel

This poster presentation was submitted to the American Meteorological Society (AMS) 101st Annual Meeting on Dec. 18, 2020, and presented on January 15, 2021.


Potential intensity (PI) is the maximum speed limit of a tropical cyclone found by treating the storm as a thermal heat engine. Because there are significant correlations between PI and actual storm wind speeds, PI is a useful diagnostic for evaluating or predicting tropical cyclone intensity climatology and variability. Given a set of atmospheric and oceanographic conditions, one may calculate PI following an algorithm described in Bister and Emanuel (2002). The algorithm was originally hard-coded in FORTRAN and then MATLAB; in 2020 the PI code was translated for Python and carefully documented for the first time. Here I describe and demonstrate the new pyPI package ( The goals of pyPI are to: (1) supply a freely available validated Python potential intensity calculator, (2) carefully document the PI algorithm and its Python implementation, and (3) to demonstrate and encourage the use of potential intensity theory in tropical cyclone analyses. In this presentation I discuss the Python implementation of the PI algorithm and I show examples which use pyPI in studies of climatological tropical cyclone intensity. Using reanalysis data, I demonstrate how pyPI could be helpful in educational contexts, e.g. a tropical meteorology class. I show the speed of the PI calculation, and discuss its viability for operational use. Finally, I consider the potential for future improvements in pyPI and ask for feedback/suggestions from the broader AMS Python community.

Included in this archive are:

The pyPI project is archived at Zenodo and is freely available on GitHub.

A pre-print of the study detailing the pyPI project is found at Geoscientific Model Development and should be cited as:

Gilford, D. M.: pyPI (v1.3): Tropical Cyclone Potential Intensity Calculations in Python, Geosci. Model Dev. Discuss.,, in review, 2020.

With any comments or questions, please email Daniel Gilford (

Files (32.2 MB)
Name Size
29.7 MB Download
2.4 MB Download
87.2 kB Download
  • Bister, M., and Emanuel, K. A., Low frequency variability of tropical cyclone potential intensity, 1, Interannual to interdecadal variability, J. Geophys. Res., 107( D24), 4801, doi:10.1029/2001JD000776, 2002.

  • Gilford, D. M.: pyPI (v1.3): Tropical Cyclone Potential Intensity Calculations in Python, Geosci. Model Dev. Discuss.,, in review, 2020.

All versions This version
Views 6060
Downloads 2929
Data volume 92.8 MB92.8 MB
Unique views 5656
Unique downloads 2525


Cite as