Skip to main content


AGU 2020 Fall meeting session invitation

The AGU 2020 Fall meeting is likely a virtual meeting, but we will keep the science up.
The submission should be open soon, tune in for more details.
Link to the session:

Recent posts

Algorithm design for the streaming burning based on MPAS mesh

To generate a stream network that is realistic with the NHD flow line, we need to recondition the DEM, or the so-called "stream burning" into the DEM.
In the classical hydrologic model, streaming burning and depression filling are separate steps. Sometimes iterative operations are also required because either step will modify the DEM.
In the MPAS mesh, these two algorithms must be rewritten. So the new question is: can we achieve depression filling and streaming burning in one single step? What is the implication behind that? Can we design a scenario that this will make a difference?
If there is a difference, does merging them into one single step will resolve this issue?
If the above assumptions are true, then we need to consider the following challenges.
The existing depression filling algorithm starts with boundary/edge, so the stream burning must follow the same strategy;The stream grid flag must be burned into the MPAS mesh in advance, fortunately this requirement is met by …

Why we need a unified mesh for Earth system model

In many of my early posts, I shared some aspects that why I decided to develop the hexagon based watershed model, HexWatershed. But the real motivation lies beyond watershed and I'd like to share some personal motivation why I started this project.
For decades, since human invented computers and hydrologists invented hydrologic models, we rely on computational techniques to simulate hydrologic processes. And these techniques mostly use the structured mesh/matrix to describe the real world. Nearly all of us are familiar with the so-called X-Y-Z 3D domain.
We stand on the shoulder of giants but we seldom question them.  It is true in earlier days that most of our research activities focus on a catchment scale or plot scale. We have to admit this is important because we need to understand the fine-scale process before we can extrapolate to a larger domain.
We never look at hydrology on a global scale using a global method. Most of us are simply trying to copy the watershed scale method t…

Hybrid modeling for Earth system model

Recently I have been thinking about some philosophy in how model the real world.
For many of us working on the Earth system model, we spent great efforts trying to understand the physical world. For example, we now have a reasonably good idea about how water flows within the system.  
Based on our understanding of the physical laws, we built quite a few of process-based models to model and predict different types of systems.
On the other hand, there are also processes that are not "simply" governed by physics. For example, human activities, or some stochastic processes like wildfire. 
For some processes, it would be more beneficial to use agent-based modeling (ABM) approach. For example, how an individual tree interacts with its surrounding environment, fighting for water and nutrients, should be possible to be implemented using the ABM.
Other processes, such as animal behavior models, are also similar to ABM.
The new question is: how can we merge the process-based model, or equat…

Depression filling on a sphere

One of my interests and projects is about flow routing on a global scale or a sphere.
This work has several major challenges awaiting to be resolved. Here I will explain a few of them.

I want to provide some background, we are not using traditional square mesh to cover the sphere. Instead, we will be using DGGS grid, and most grids will be hexagons, you can take a look at my previous posts.

On a sphere, land/continents are not continuous, a landmass may be broken into several islands. Because of the unique structure of hexagon mesh, parallel computing becomes difficult. It is not straightforward to decompose the global mesh into regular tiles similar to square grid mesh. DEM remap/resamaple method needs to be improved. Current DEM dataset is still in the square grid format, a rigorous remap method is needed to assign elevation to new hexagon grids.

Watershed Delineation On A Hexagonal Mesh Grid: Part B

This is the second part of a study, the first part can be accessed from Here.
So we decided to use the ISEA alike grid, a hexagon mesh grid to address these issues.

(The figures are high resolution, you might need to zoom in to view.)

What follows is something I should have learned if my major was hydrology. Even though we have been using ArcSWAT, ArcHydro many times, we seldom really looked into the algorithms because they are mostly straight forward.

But when we decided to try this on a different mesh grid, a lot of details start to emerge, and through which we also learned a lot.
The overall workflow is pretty simple: But because the grid is different, we made several improvements. First,  we need a new index system, and we need to rebuild the neighbor information.

We also need to do the depression filling, here we used the priority flooding method. This method is pretty impressive in this application. Without getting into details, this is how it works:

After this, we are able to c…

Watershed Delineation On A Hexagonal Mesh Grid: Part A

One of our recent publications is "Watershed Delineation On A Hexagonal Mesh Grid" published on Environmental Modeling and Software (link).
Here I want to provide some behind the scene details of this study.

(The figures are high resolution, you might need to zoom in to view.)

First, I'd like to introduce the motivation of this work. Many of us including me have done lots of watershed/catchment hydrology modeling. For example, one of my recent publications is a three-dimensional carbon-water cycle modeling work (link), which uses lots of watershed hydrology algorithms.
In principle, watershed hydrology should be applied to large spatial domain, even global scale. But why no one is doing it?  I will use the popular USDA SWAT model as an example. Why no one is setting up a SWAT model globally? 
There are several reasons we cannot use SWAT at global scale: We cannot produce a global DEM with a desired map projection. SWAT model relies on stream network, which depends on DEM.…