EGU General Assembly 2023
© Author(s) 2023. This work is distributed under
the Creative Commons Attribution 4.0 License.

EDCHM: A c++ based R package for flexible semi-distributed conceptual hydrological modeling

Kan Lei, Diana Spieler, and Niels Schütze
Kan Lei et al.
  • Institute of Hydrology and Meteorology, TU Dresden, Dresden, Germany

Modular hydrological modeling has been around for some time, with early examples such as the Modular Modeling System (MMS) developed in 1996. In 2011,Fenicia et al. introduced the SUPERFLEX modeling framework, refined by Molin et al. (2021) as the Python package SurperflexPy. A framework with an even larger library of processes is the Raven modeling framework introduced by Craig et al. (2020).

This work introduces a c++ based R package prioritizing convenience while still offering flexibility for semi-distributed hydrological modelling. The EDCHM framework defines five basic layers: atmosphere, snow pack, land, soil, and ground, with the soil and ground layers able to be further divided into sublayers. Each layer has its own characteristics and state variables such as capacity and water volume. EDCHM defines 12 basic processes, including 10 hydrological and 2 meteorological processes such as evapotranspiration and infiltration. Each process has a single flux output, and it can occur within a single layer or between layers. The input requirements are flexible and depend on the specific method used. A process with a specific method is referred to as a module in EDCHM. EDCHM also includes 34 predefined model structures with fixed connections between processes and layers, ranging from 6 to 15 processes. The key feature of EDCHM is the model builder, which allows users to easily generate the model function just by selecting the process methods, the input data list, and the parameter list with ranges will also be created. This makes it fast and efficient for users to build and calibrate models. EDCHM is implemented in c++ and supports vectorization and parallelization through R-Package Rcpp and furrr. Users can easily build new models with their own ideas or ideas from literature.

EDCHM has been tested on 34 east-german catchments, with over 60 models calibrated in lumped form and 6 catchments calibrated with 3 and 5 sub-catchments or more than 50 HRUs. Our results show that EDCHM is highly effective in the application of hydrological modeling, with a key feature being its efficiency.


Craig et al. (2020).

Fenicia et al. (2011).


How to cite: Lei, K., Spieler, D., and Schütze, N.: EDCHM: A c++ based R package for flexible semi-distributed conceptual hydrological modeling, EGU General Assembly 2023, Vienna, Austria, 24–28 Apr 2023, EGU23-15217,, 2023.