90 likes | 95 Views
A modern, Python-based tool for evaluating earth system models. Features include customization, easy installation and execution, fast processing, provenance capture, and more.
E N D
E3SM Diagnostics Package Updates (e3sm_diags) Chengzhu (Jill) Zhang, ZeshawnShaheen and Chris Golaz LLNL March 19, 2019
Overview • A modern, Python-based tool for evaluating earth system models. • Modeled after NCAR’s AMWG diagnostics package: current version is used to compare seasonal and annual mean climatology in model vs model and model vs obs. cases. • Features: • Highly customizable: Flexible to add new data/ modify figures • Easy installation, configuration, and execution. • Runs fast using multi-processing . • Provenance captures: save configuration files, environment and exact command line for reproducing a figure. • Maintain an updated observational data repository. • A community tool: it can accommodate CMIP convention via Derived variable dictionary Example output on Nersc
Version 1.6.0 release (Feb 2019) • E3sm_diags now supports time series input (monthly data of multiple years saved in one file per each variable) to have climatology computed during runtime. • Users are able to specify the time slices for model vs model and model vs obs diagnostics runs. • Both NCO-generated E3SM time series files and archived CMIP-compliant time series files can be used as input files. • New quick start guide for NERSC Cori. • Major code refactor for reading in data and getting variables. • Scripts added for creating the time series and climatology files for the observational data. • User-facing instances of "acme" are replaced with "e3sm".
Running E3SM Diagnostics • Running via containers (beginning v1.5.0): Containerization technology allows a process and its dependencies to run in isolation. • Simplify installation process; Avoid unexpected installation failure; Easier to distribute the software across machines. • Run with a container on NERSC Edison/Cori: • Download the container and auxiliary script. • Run using: e3sm_diags_container.py --shifter -p params.py *Docker, and Shifter (NERSC) supported. Singularity (ALCF and others) working, awaiting documentation and release. • Installing via Anaconda: Works on any machine with Anaconda installed. • wget https://raw.githubusercontent.com/E3SM-Project/e3sm_diags/master/conda/e3sm_diags_env.yml • condaenvcreate -fe3sm_diags_env.yml • e3sm_diags -p params.py • Available from e3sm_unified environment and processflow tool
Example Use Cases • Documentation website (https://e3sm-project.github.io/acme_diags) • Example with climatology file as input: • Model vs Obs • Model vs Model • Example with time-series files as input: • Model vs Model • Model vs Obs Works for E3SM output monthly time series (processed using NCO) or any CMIP style model monthly time series (Input data requirement)
Data sets Adding to the list: CORE_v2, ERS for surface wind stress Data to be Updated: CRU_IPCC for surface air temperature, cloud simulators related[COSP]
New development: regional mean time series • Surface air temperature trend • analysis over specified regions • (Historical DECK simulation) • Multiple reference data sets • Useful for precipitation, • TOA radiation fluxes, clouds, etc.
New development: vector fields for wind • Include both lat-lon and polar • Better quality arrows • Include both CORE v2 and ERS • data sets for wind stress
Path forward • Keep track with feature requests from simulation groups: • A set of simple metrics water cycle (water availability, SST…) (water cycle group) • New BGC variables with suggested analysis data (BGC) • Diagnostics focus on south ocean (Cryosphere) • Phenomenon-based, process-oriented diagnostics for convection (NGD Atmosphere) • Developer’s Guide for entraining developers. • Precipitation extremes and ENSO teleconnection from Salil • Infrastructure tasks: • Reconstruct viewer • Consolidate analysis data • User support and maitanance