Appendix

A1 Postprocessing software for cmorization and easy use of unstructured mesh data for analysis

The atmospheric model data was cmorized with an approach developed by the German Climate Computing Centre (DKRZ). All the FESOM ocean data was also cmorized in a CDO-compatible manner. During the cmorization of sea-ice and ocean data, the user is notified of any incompatibilities between the model output and the designated data request tables. In the conversion process, the most time consuming step would be changes to the bulk variable data itself, but metadata can generally be applied quickly and independent of the data amount in one file. The time and resources required for changes in the variable data on the other hand will theoretically increase linearly with the size of the mesh and the output frequency of the data. Therefore we had to avoid all steps and utilities which can not alter data in-place, e.g. where no auxiliary file or memory allocation is required.
The overall requirements for a complete CMIP6 formatted file set can be somewhat overwhelming due to its complexity (data request (DR), naming conventions, controlled vocabularies, Earth System Grid Federation (ESGF) requirements, model details). Therefore our CMIP6 CMOR setup has been realized via a compact and human-readable setup with a domain-specific language (DSL). This setup can be executed shared-memory-parallel per conversion task on a HPC system right where the data is stored.
The following steps are necessary, and their processing times scale with the grid size and are limited by the I/O speed of the filesystem (i.e. changes of the bulk data):
A necessary requirement for using the model data for scientific research is the availability of tools that are able to perform basic pre- and post-processing operations on model output. For ocean models on structured grids, a wide selection of tools is available; for the new generation of global ocean models formulated in unstructured meshes, however, no existing off-the-shelf packages exist. Therefore, we have created a set of python-based analysis and visualization tools for FESOM - pyfesom (https://github.com/FESOM/pyfesom). The pyfesom repository contains a python library and command line tools that allow it to perform basic data analysis and visualisation of FESOM data, and provide ways to interpolate FESOM data onto a regular grid. There is also a documentation with description of the command line tools and a set of Jupyter Notebooks with examples of library usage. Moreover, we have developed the R package spheRlab (https://github.com/FESOM/spheRlab) which facilitates the analysis and visualization of unstructured-mesh data, including functions for the generation of grid description files that enable full compatibility of FESOM data with the more widely used Climate Data Operators (CDO;https://code.mpimet.mpg.de/projects/cdo).
Furthermore, the unstructured mesh files can be further processed with simple cdo commands. To give an example, a typical file is the unstructured potential ocean temperature inthetao_Omon_AWI-CM-1-1-MR_historical_r1i1p1f1_gn_185001-185012.nc . A horizontal conservative remapping of this file to a 1°x1° regular grid (“r360x180”) from the command line is a one-liner and as simple as