Journal cover Journal topic
Geoscientific Model Development An interactive open-access journal of the European Geosciences Union
https://doi.org/10.5194/gmd-2018-100
© Author(s) 2018. This work is distributed under
the Creative Commons Attribution 4.0 License.
Model description paper
26 Apr 2018
Review status
This discussion paper is a preprint. It is a manuscript under review for the journal Geoscientific Model Development (GMD).
sympl (v. 0.3.2) and climt (v. 0.11.0) – Towards a flexible framework for building model hierarchies in Python
Joy Merwin Monteiro1, Jeremy McGibbon2, and Rodrigo Caballero1 1Department of Meteorology, Stockholm University, SE-106 91 Stockholm, Sweden
2408 Atmospheric Sciences–Geophysics (ATG) Building Box 351640, Seattle, Washington 98195-1640
Abstract. sympl (System for Modelling Planets) and climt (Climate Modelling and diagnostics Toolkit) represent an attempt to rethink climate modelling frameworks from the ground up. The aim is to use expressive data structures available in the scientific Python ecosystem along with best practices in software design to build models that are self-documenting, highly inter-operable and that provide fine grained control over model components and behaviour. We believe that such an approach towards building models is essential to allow scientists to easily and reliably combine model components to represent the climate system at a desired level of complexity, and to enable users to fully understand what the model is doing.

sympl is a framework which formulates the model in terms of a "state" which gets evolved forward in time by TimeStepper and Implicit components, and which can be modified by Diagnostic components. TimeStepper components in turn rely on Prognostic components to compute tendencies. Components contain all the information about the kinds of inputs they expect and outputs that they provide. Components can be used interchangeably, even when they rely on different units or array configurations. sympl provides basic functions and objects which could be used by any type of Earth system model.

climt is an Earth system modelling toolkit that contains scientific components built over the sympl base objects. Components can be written in any language accessible from Python, and Fortran/C libraries are accessed via Cython. climt aims to provide different user APIs which trade-off simplicity of use against flexibility of model building, thus appealing to a wide audience.

Model building, configuration and execution is through a Python script (or Jupyter Notebook), enabling researchers to build an end-to-end Python based pipeline along with popular Python based data analysis tools. Because of the modularity of the individual components, using online data analysis, visualisation or assimilation algorithms and tools with sympl/climt components is extremely simple.

Citation: Monteiro, J. M., McGibbon, J., and Caballero, R.: sympl (v. 0.3.2) and climt (v. 0.11.0) – Towards a flexible framework for building model hierarchies in Python, Geosci. Model Dev. Discuss., https://doi.org/10.5194/gmd-2018-100, in review, 2018.
Joy Merwin Monteiro et al.
Joy Merwin Monteiro et al.
Joy Merwin Monteiro et al.

Viewed

Total article views: 417 (including HTML, PDF, and XML)

HTML PDF XML Total BibTeX EndNote
317 96 4 417 4 4

Views and downloads (calculated since 26 Apr 2018)

Cumulative views and downloads (calculated since 26 Apr 2018)

Viewed (geographical distribution)

Total article views: 417 (including HTML, PDF, and XML)

Thereof 415 with geography defined and 2 with unknown origin.

Country # Views %
  • 1

Saved

Discussed

Latest update: 23 May 2018
Publications Copernicus
Download
Short summary
Like the fruit fly or the yeast cell serve as model systems in biology, climate scientists use a range of computer models to gain a fundamental understanding of our climate system. These models range from extremely simple models that can run on your phone to those that require supercomputers.

Out packages sympl and climt make it easy for climate scientists to build a hierarchy of such models using Python, which facilitates easy to read and self-documenting models.
Like the fruit fly or the yeast cell serve as model systems in biology, climate scientists use a...
Share