Published May 18, 2025 | Version 1

Differentiable Parameter Learning (dPL) + HBV Hydrologic Model with Reservoir Module

  • 1. ROR icon Indian Institute of Technology Roorkee

Description

This software is based on the original implementation of the Differentiable Parameter Learning (dPL) + HBV hydrologic model, as published by Feng et al. (2022) and hosted on Zenodo: https://doi.org/10.5281/zenodo.7091334.

In this version, we have extended the model by incorporating a reservoir module, enabling simulation of regulated catchments. This enhancement allows the model to better represent flow dynamics influenced by reservoir operations.

Credit and Attribution:
Full credit for the original model goes to Feng et al. (2022). Our contribution is limited to the addition of the reservoir module and related functionality.

Modifications Summary:

  • Added reservoir module and operation logic

  • Modified state-update structure to accommodate reservoir storage

 

If you find this code is useful for your research, please cite the below papers.

Mangukiya, N. K., & Sharma, A. (2025). Integrating Reservoir Dynamics into Differentiable Process-based Hydrological Model for Enhanced Streamflow Estimation. Water Resources Research, 61(7), e2025WR040268. https://doi.org/10.1029/2025WR040268

Feng, D., Liu, J., Lawson, K., & Shen, C. (2022). Differentiable, learnable, regionalized process-based models with multiphysical outputs can approach state-of-the-art hydrologic prediction accuracy. Water Resources Research, 58(10), e2022WR032404. https://doi.org/10.1029/2022WR032404

Feng, D., Beck, H., Lawson, K., & Shen, C. (2023). The suitability of differentiable, physics-informed machine learning hydrologic models for ungauged regions and climate change impact assessment. Hydrology and Earth System Sciences, 27(12), 2357-2373. https://doi.org/10.5194/hess-27-2357-2023

Files

dPLHBVRes.zip

Files (20.6 kB)

Name Size Download all
md5:0c44d7e6dda199c1511dd7a3561d9690
20.6 kB Preview Download

Additional details

Software

Programming language
Python