Hydrological Modeling Software and Related Tools The toolbox of groundwater modeling

The toolbox of groundwater modeling

The toolbox was developed in python environment. It consists of the box model and additional pre- and postprocessing modules of parametres and input data. The toolbox does not have graphical user interface yet. The main data entry, initilization and visualized results of the toolbox can seen in figure 1.

On the left side of the figure 1, monthly variations of groundwater heads for Kabul is illustrated. The toolbox was run for 20 years horizon to see the groundwater level change in a long term period. The tool works for any location with in the Kabul River basin. In the following stages of the project, spatially distributed versions will be added. Simple usage example of the toolbox is demonstrated in the following paragraph.

2 Instructions

The toolbox is written in pure python programming language, thus it is very flexible to change and adapt for any purpose. the model is written in object oriented programming paradigm. So, it is highly modular and easy to manipulate. Below is the example usage of the toolbox:


Location class is the initalization class and parametres can be changed depending the purpose. The generated object of the location class will be used as input parameter for all other modules. Below are the all possible arguments which can be taken by the initialization class:

  • system type parameter can take these arguments:

- "recharge"

- "agriculture"

- "mixed"

  • resolution parameter can take these arguments:

- "point"

- "spatial"

  • crop type parameter can take these arguments:

- "winter wheat"

- "barley"

- "rice"

- "maize"

  • irrigation type parameter can take these arguments:

- "flood"

- "surface"

- "sprinkler"

- "drip"

- "subsurface"

The time horizon parameter can be changed from 1 to 100 years. As crop planting date any date within a year can be entered. The results of simulation is saved as an attribute the input parameter. Thus, each scenario is a separate object and they do not overwrite aech other and they are completely independent entities.