The Rainfall rUnoff Balance Enhanced Model (RUBEM) distributed hydrological model

Documentation Status Contributors GitHub Commit Activity Forks Stargazers Issues LabSid YouTube Channel


Rainfall rUnoff Balance Enhanced Model

RUBEM is a distributed hydrological model to calculate monthly flows with changes in land use over time.
Explore the docs

Support Form

<a href="">Report Bug</a>

<a href="">Request Feature</a>

Table of Contents

  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgements

About The Project

The Rainfall rUnoff Balance Enhanced Model (RUBEM) is a hydrological model for transforming precipitation into surface and subsurface runoff. The model is based on equations that represent the physical processes of the hydrological cycle, with spatial distribution defined by pixel, in distinct vegetated and non-vegetated covers, and has the flexibility to study a wide range of applications, including impacts of changes in climate and land use, has flexible spatial resolution, the inputs are raster-type matrix files obtained from remote sensing data and operates with a reduced number of parameters arranged in a configuration file that facilitates its modification throughout the area.

Main features

The model was developed based on classical concepts of hydrological processes and equations based mainly on SPHY (TERINK et al., 2015), WEAP (YATES et al., 2005), and WetSpass-M (ABDOLLAHI et al. , 2017). The main features of the developed model are:

  • Distributed monthly step model;
  • Hydrological process based on soil water balance in each pixel, and flow total calculated after composition of the resulting accumulated flow, according to Direction drainage network flow established by the digital elevation model (DEM);
  • Calculations for two zones: rootzone and saturated;
  • Evapotranspiration and interception process based on vegetation index: Leaf Area Index (LAI), Photosynthetically Active Radiation Fraction (FPAR) and Normalized Difference Vegetation Index (NDVI); and
  • Sub-pixel level coverage classification, represented by four fractions that represent percentage of total pixel area covered exclusively by: area vegetated, bare soil area, water area and impervious area.

Getting Started

To get a local copy up and running follow these simple steps.


This is an example of how to list things you need to use the software and how to install them.

  • From Miniconda base envionment create a new conda envionment

    conda create --name rubem python=3.7
  • Activate the new environment


    conda activate rubem

    Linux, macOS

    source activate rubem
  • Install GDAL conda package

    conda install -c conda-forge gdal 
  • Install PCRaster conda package

    conda install -c conda-forge pcraster 


  1. Download the latest release zip file from the releases page;
  2. Extract the zip, and copy the extracted root directory into a local directory.


  • Typical usage example
    python --configfile config.ini
  • Help usage example
    python -h

For more examples, please refer to the Documentation.


See the open issues for a list of proposed features (and known issues).


Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated. See for more information.


Distributed under the GPLv3 License. See for more information.


In any of our communication channels please abide by the RUBEM Code of Conduct. In summary, being friendly and patient, considerate, respectful, and careful in your choice of words.


Popular Grid Projects
Popular Remote Sensing Projects
Popular User Interface Components Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Remote Sensing