The Atmosphere Model Working Group Diagnostics Framework (ADF)
During development, the Community Atmosphere Model (CAM) was previously evaluated using the AMWG Diagnostics Package. That package generated annual and seasonal plots to describe the mean climate spatially with maps and zonal averages, tables of global and regional averages, and specialized plots like Taylor diagrams. A shell script orchestrated running NCL scripts, and results were compiled in a static web site. The AMWG Diagnostics was widely used for over 20 years, but over time both the shell script and the NCL code evolved and became difficult to maintain and modify. With NCL no longer actively developed, it was determined that a new diagnostics package was required to assist in the development of the next version of CAM.
In this presentation, the AMWG Diagnostics Framework (ADF) is presented. The ADF is a python-based framework that has been developed in parallel with CAM. It is a compact codebase designed to be easy to understand and modify. It uses a small number of popular python libraries to make it portable. The ADF uses a YAML configuration file to drive a workflow that takes model output files and generates single-variable time series and climatology files, and those are accessed by supported diagnostics scripts to produce similar plots and tables as the old package. New diagnostics can be added using the same API as the supported scripts. The ADF is much more flexible than the old AMWG diagnostics: pre-computed time series and/or climatology files can be used, multiple test cases can be supplied, and any model outputs can be included or excluded as needed by editing the configuration file. Extensions to ADF also allow users to run the Climate Variability Diagnostics Package and NOAA’s Model Diagnostic Task Force (MDTF) diagnostics by modifying the configuration file. Development is ongoing with an eye toward increasing the flexibility of the package, supporting unstructured grids more easily, and improving performance for high resolution simulations