Fork me on GitHub

ESMValTool Core

ESMValTool Core: core functionalities and driver for ESMValTool, a community diagnostic and performance metrics tool for routine evaluation of Earth System Models in CMIP.

4
contributors
6913 commits | Last update: August 16, 2019

What ESMValTool Core can do for you

  • Finding data in a directory structure typically used for CMIP data
  • ESMValTool preprocessor functions based on iris for e.g. regridding, vertical interpolation, statistics, correcting (meta)data errors, extracting a time range, etcetera.
  • Broad documentation: user guide (Eyring et al., 2015); SPHINX; a log-file is written containing all the information of a specific call of the main script: creation date of running the script, version number, analyzed data (models and observations), applied diagnostics and variables, and corresponding references. This helps to increase the traceability and reproducibility of the results.
  • High flexibility: new diagnostics and more observational data can be easily added.
  • Multi-language support: Python, NCL, R... other open-source languages are possible.
  • CF/CMOR compliant: data from many different projects can be handled (CMIP, obs4mips, ana4mips, CCMI, CCMVal, AEROCOM, etc.). Routines are provided to CMOR-ize non-compliant data.
  • Integration in modeling workflows: for EMAC, NOAA-GFDL and NEMO, can be easily extended.

ESMValTool Core contains functions to read CMOR tables and check model and observational data, it can also fix some minor errors and does some data homogeneization. The ESMValTool Core preprocessor can be used to perform a broad range of operations on the input data before diagnostics or metrics are applied. The preprocessor performs these operations in a centralized, documented and efficient way, thus reducing the data processing load on the diagnostics side.

Read more
Tags
  • Big data
  • Workflow technologies
  • Visualization
Programming Language
  • Python
License
  • Apache-2.0
Source code

Participating organizations

Contributors

  • Bouwe Andela
    Netherlands eScience Center
  • Niels Drost
    Netherlands eScience Center
  • Faruk Diblen
    Netherlands eScience Center
  • Jaro Camphuijsen
    Netherlands eScience Center