815344 Computing seminar on hydraulics and rural water management

Exercise course
Semester hours
Lecturer (assistant)
Offered in
Wintersemester 2022/23
Languages of instruction


The course focuses on the use of the programming language, Python, to interpret transport processes in soil. After some brief theoretical lectures about vadose zone hydrology and soil physics, most of the course will be centered on hand-on computer sessions about the use of Python.
-In the first part, the syntax of the programming language will be explained. In particular: 1) how to create arrays, lists, dictionaries, functions, etc, by using also libraries such as numpy and scipy 2) how to run for loops, create conditions, and populate array, 3) how to plot results with Matplotlib 4) how to create Dataframes with the library Pandas and visualize results. Finally, objected-oriented programming will be explained, and few examples will be used to show the potential of class and methods.
- In the second part, an object-oriented code will be prepared to describe unsaturated soil hydraulic properties (e.g., van Genuchten-Mualem), and fit them to measured data.
- In the final part, a numerical solver will be implemented to solve the 1D Richards equation using the Finite Volume method. The model will be then used to perform numerical simulations and assess results.

Previous knowledge expected

Previous knowledge about soil physics, hydrology, and programming is beneficial but not mandatory.

Objective (expected results of study and acquired competences)

Students will learn the basics of the programming language, Python, and how it can be applied to solve major problems in soil physical modeling and vadose zone hydrology.
By the end of the course, students should be able to independently write basic Python codes, implement a numerical description of major vadose zone hydrological processes, and perform numerical simulations with their own code.
Acquired skills about programming will be extremely beneficial for the student both in terms on concepts and practical competence.
You can find more details like the schedule or information about exams on the course-page in BOKUonline.