This repository is an archive of a project conducted as part of Google's Summer of Code in 2011 under the supervision of the Climate Code Foundation. We aimed to re-implement the "Pairwise Homogenization Algorithm" (Menne and Williams, 2009) used to quality-control the US Historical Climatology Network (version 2) by detecting and correcting undocumented shifts and breaks in station temperature and precipitation data.
The code herein works; that is, it will (for the most part) reproduce the original Fortran implementation of the PHA on small networks of real or synthetic station data. It's written entirely in Python 2.7, without leaning on any numerical libraries like NumPy, SciPy, or pandas - in fact, it was written before pandas was debuted to the broader scientific Python community!
I don't maintain this code and it's unlicensed - I'm not certain what license is suitable here, but if you are interested in using this code for any reason, please contact me and we can look into the appropriate details.
Links for More Information
- Climate Code Foundation blog articles from GSoC 2011
- GHCN-M v3.1.0 - Showing the value of engaging with software engineers
- Lessons from Deploying the USHCN Pairwise Homogenization Algorithm in Python - Talk at the 92nd AMS Annual Meeting (New Orleans, 2012)