Abstract

We present a Python interface for the Dutch Atmospheric Large Eddy Simulation (DALES), an existing Fortran code for high-resolution, turbulence-resolving simulation of atmospheric physics. The interface is based on an infrastructure for remote and parallel function calls and makes it possible to use and control the DALES weather simulations from a Python context. The interface is designed within the OMUSE framework, and allows the user to set up and control the simulation, apply perturbations and forcings, collect and analyse data in real time without exposing the user to the details of setting up and running the parallel Fortran DALES code. Another significant possibility is coupling the DALES simulation to other models, for example larger scale numerical weather prediction (NWP) models that can supply realistic lateral boundary conditions. Finally, the Python interface to DALES can serve as an educational tool for exploring weather dynamics, which we demonstrate with an example Jupyter notebook.

Highlights

  • Multiple high-resolution Dutch Atmospheric Large Eddy Simulation (DALES) instances are coupled to grid columns of OpenIFS, and are used to explicitly simulate cloud and convection processes which are otherwise parametrized in the global model

  • We do stress that our software does not expose the physical processes and partial tendencies of DALES as separate Python ’building blocks’ such as one finds in [8, 9]; rather we provide a lightweight wrapper around the entire model, which perhaps in a future effort may be decomposed at the process level

  • The function calls on the Dales object in Python are serialized by OMUSE over message passing interface (MPI), and mapped to Fortran routine calls in the remote worker processes

Read more

Summary

Motivation and significance

Since the advent of numerical weather prediction, many computational models have emerged within the realm of atmospheric sciences. Together with the interface for retrieving the state of the model, this makes it possible to couple DALES to an external agent One such proven use case [2], and our initial reason for constructing the Python interface to DALES, is the so-called superparameterization [3] of the global model OpenIFS [4]. In this scheme, multiple high-resolution DALES instances are coupled to grid columns of OpenIFS, and are used to explicitly simulate cloud and convection processes which are otherwise parametrized in the global model. We do stress that our software does not expose the physical processes and partial tendencies of DALES as separate Python ’building blocks’ such as one finds in [8, 9]; rather we provide a lightweight wrapper around the entire model, which perhaps in a future effort may be decomposed at the process level

The DALES model
Software architecture
Software functionalities
Example
Impact
Conclusions

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.