About Us Projects Metadata Developers Users Impacts

ESMF/OpenMI Coupling for Hydrological Applications

Participants

Kathy Saint/ESMF Core Team, Sylvia Murphy/ESMF Core Team, Cecelia DeLuca/ESMF Core Team, Jon Goodall/University of South Carolina, Ricky Rood/University of Michigan, Laura Briley/University of Michigan

For questions on this project, please contact curator_hydro@list.woc.noaa.gov.

Motivation

Projections of the Earth's climate by models provide the primary information for anticipating climate change impacts and evaluating policy decisions. Changes in the water cycle are expected to have impacts on, for example, public health, agriculture, energy generation, and ecosystem services [IPCC, 2007]. The integration of information from climate model projections with the tools used by practitioners of water management is a core interest of those developing strategies for adaptation to climate change. Often a hydrological model that is formally separated from a climate model is used in these applications [Graham et al., 2007]. Both intuitively and theoretically, we expect hydrological models to perform better when they are coupled in some way to a global or regional climate model [Zeng et al., 2003; Yong et al., 2009].

There are multiple strategies for the coupling of climate and hydrology models. The traditional method is to provide the atmospheric parameters that serve as the inputs for the hydrology model from the archived output of climate models [Graham et al., 2007]. The second paradigm is to couple hydrological models with global climate systems so that two-way communication is possible. A continuum of coupling options spans these two paradigms.

The scientific and software development challenges of either form of coupling are great. The multiple temporal and spatial scales provide an intrinsic challenge. For a hydrological model used in agricultural decision-making, intrinsic scales include the drainage of the streams, the specifics of the land and vegetation in the watershed, surface topography at accuracies of less than a meter, and the surface type of the built environment. Even with the highest resolution climate models likely be viable in the next five years, grid cells on the order of 100 km^2, there are several orders of magnitude difference in the spatial scales. Transference of information in a physically meaningful way across these scales, large-to-small and small-to-large, is neither scientifically nor algorithmically established.

The work described here is looking forward several years and represents research and development that is anticipatory. We describe our effort to couple a climate model and a hydrological model with two-way communication between the models. This type of coupling might be viewed as a logical ideal end state of linking climate models to real-world applications. With the full realization that from an Earth science perspective that the current shortcomings of the climate model might not justify the coupling at this time, we pose that there are scientific, algorithmic, and work-flow challenges that are worth addressing. Rather than waiting until the climate models are at some undefined state of readiness to start the coupling, then starting to develop the coupling strategies, we are co-developing the coupling with the model. This will help to define both the scientific foundation of the coupling and evolve the algorithms in concert with the scientific investigation.

Coupling Standards

This project seeks to utilize the Earth System Modeling Framework (ESMF) and OpenMI to couple an atmospheric model with a hydrological model. Both systems will be controlled by an overarching driver and the data from both systems will be archived and described on a common science gateway.

Earth System Modeling Framework

ESMF is a high-performance, flexible software infrastructure that increases the ease of use, performance portability, interoperability, and reuse of Earth science applications. ESMF provides an architecture for composing complex, coupled modeling systems and includes data structures (Arrays, Fields, and States) as well as utilities for developing individual models. The software includes tools to describe and organize models and the ability to interface with model components via web services.

OpenMI

OpenMI is a software library that provides the hydrological community with a standardized interface that focuses on time dependent data transfer. It is primarily designed to work with systems that run simultaneously, but in a single-threaded environment. Regridding and temporal interpolation are also part of the package.

System Architecture

Below is a diagram of the system architecture. At the highest level, this coupled system is comprised of three main components: a hydrological model, an atmospheric model, and a driver application. The hydrological model and the atmospheric model chosen are representative for their domains. The specific models may change as the project evolves. The atmospheric model is implemented as an ESMF component and is wrapped with an OpenMI interface, which facilitates the communication with the OpenMI-compliant hydrological model. The hydrological model, driver, and the two OpenMI wrappers physically exist on a personal computer running Windows. The ESMF component itself exists on a multi-threaded Linux computer. An ESMF web services interface is used to bridge the two computer platforms.

diagram of the OpenMI/ESMF hydrology architecture

Soil Water Assessment Tool (SWAT)

The hydrological model chosen for this project is the Soil Water Assessment Tool (SWAT). It is a river basin scale model developed to quantify the impact of land management practices in large, complex watersheds. It was chosen for this project because it is widely used, is open source, and runs on a Windows platform. The OpenMI version that has been made into a LinkableComponent, was downloaded with permission from the United Nations Educational, Scientific and Cultural Organization- Institute for Water Education (UNESCO-IHE). Inputs to SWAT include maximum and minimum temperatures, daily precipitation, relative humidity, solar radiation data, and wind speed data.

Community Atmospheric Model (CAM)

CAM is part of the Community Climate System Model (CCSM). It is an atmospheric model that runs on a high-performance computing (HPC) Unix-based platforms. In order to interface CAM with SWAT, an OpenMI interface will be implemented on the Windows platform that will include a wrapper class that implements the OpenMI interface on the front-end, and remotely accesses CAM on the backend. Access on the backend will be handled using ESMF's web services protocol that interfaces with the model via an ESMF Component.

Documentation by Release

Links to Project Trackers

Release 0.1 (July 2009)

This release swapped out the ESMF stub components that were used in an earlier developmental phase with live CAM. Data transfer between CAM and SWAT is via an external netCDF file.

Configuration Summary:

Validation: The system successfully ran with the data being transferred from CAM to SWAT via an external file. This was observed directly within the SWAT configuration editor. Note that this version of system was not tested for physical realism in either SWAT or CAM.

Publications:

Presentations:

Source Code: The code for release 0.1 and instructions to reproduce our results is publicly available on SourceForge at: esmfcontrib/Hydro/Release_0.1

Release 0.2 (April 2011)

This release will move the system to two public computers at NOAA. SWAT will use calibrated initial condition files and CAM will use an updated configuration. One of the key tasks in Release 0.2 is the exploration of the scales involved in when the size of the domain modeled is varied. This analysis, which is looking at the time to completion, data volumes transferred, and other technical parameters, will help to guide the scientific problems chosen for study.

Standalone Tests:

Configuration Summary:

Validation: The system ran to completion. The data was streamed across the internet from CAM to SWAT using ESMF web services. Prior to streaming, the data was extracted from a file by the web services. The data transfer was observed directly within the SWAT configuration editor. Note that this version of system was not tested for physical realism in either SWAT or CAM.

SWAT documentation:

Parameter Tables:

Source Code: The code for release 0.2 and instructions to reproduce our results is publicly available on SourceForge at: esmfcontrib/Hydro/Release_0.2