SIParCS 2024 - Andy McKeen
Expanding GeoCAT's Climatology Resources to Support the Transition from NCL to Python
For decades, the NCAR Command Language (NCL) has been widely used for data analysis and visualization in the geosciences. However, in 2019 NSF NCAR made the decision to pivot development to Python, leveraging the established open-source scientific Python ecosystem. The Geoscience Community Analysis Toolkit (GeoCAT) team at NSF NCAR is dedicated to supporting the transition from NCL to Python and fostering open science through collaborative efforts. The newest component of that effort is GeoCAT Applications. Inspired by the NCL Applications page, GeoCAT Applications is designed to be a quick reference demonstrating capabilities within the scientific Python ecosystem. This project added climatology and date/time resources to GeoCAT Applications. I began the summer by examining the day of week function from NCL. While investigating the differences between NCL and Python, I found an interesting difference in the calendars they support and the way they handle the year zero. I also developed both climatology Python content and content that investigates the differences between climatology functionality available in NCL and the scientific Python ecosystem. I primarily used Xarray and a subset of the CESM2 / CMIP6 historical simulation data to demonstrate the functionality. I developed Python demonstration content and NCL to Python transition resources for several NCL climatology functions, including for calculating anomalies, climatologies, and removing the annual cycle. Throughout the summer I also helped shape the design and structure of the GeoCAT Applications page as it grew from a concept to a reality.
Mentors: Anissa Zacharias, Katelyn FitzGerald
Slides and poster