Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Lectures and Exercises

Lectures

The majority of the courses take place in front of a screen in the form of video conferences, video streaming, wiki-like documentation, or interactive exercises. During pandemic-free times, computers are available to students directly on campus at the University of Stuttgart. To improve independent work capacities, however, it is highly recommended that students learn to set up an efficient work environment on a laptop or desktop computer.

The Software Resources chapter guides through the installation of relevant software for lectures.

Open Access Videos

Some contents of this website are accompanied by public videos hosted on YouTube. Find out more by visiting the @hydroinformatics (Hydro-Morphodynamics) YouTube channel.

Exercises

Exercises are an integral part of this eBook and additional materials are provided on external git repositories, such as:

The link to every exercise’s git repository is provided at the top of each exercise page.

Python programming for Water Resources Engineering and Research

About

This course introduces the version-control system git and the programming language Python 3. Students learn to use programming methods for engineering tasks, data processing including basic statistical evaluations, and geospatial analyses. Practice-oriented exercises with small homework guide through the programmatic solution to typical challenges in water resources engineering and research, such as ecohydraulic and sediment transport analyses. The communication between efficient algorithms and various data types (e.g., JSON or xlsx workbooks) is also part of the lectures and the exercises. The latter part of the course introduces geospatial programming methods and data analyses.

Interactive lectures familiarize students with version control via git, markdown language for documentation, and Python programming. The course is organized by the IWS-LWW department at the University of Stuttgart in winter semesters for the Water Resources Engineering and Management (WAREM) program. The course builds on in-house and external open access materials, which serve as a reference guide and support for independent studies.

Requirements

The paramount requirement is the willingness to regularly invest time in the lectures because this course is about more than just passing an exam: students will acquire new abilities.

Previous programming experience is not necessary and the course also and explicitly addresses students who have not yet made use of programming tools.

Different software solutions work for the course and the section on Integrated Development Environments (IDEs) guides through their installation:

Minimum installation

All students will need a minimum of software to participate in the course. The minimum software involves:

Solution 1: Full-stack Python Anaconda Installation

The installation of Anaconda enables the usage of various IDEs that use so-called conda environments for Python. This is the all-inclusive option in terms of functionality, but it is quite heavy regarding storage and system resource consumption. This full-stack solution requires to install the following:

  • Primarily Anaconda with its Anaconda Navigator and Anaconda Prompt interfaces, which facilitates the installation of IDEs.

  • Either PyCharm (external inteface) or Spyder (directly available in Anaconda )IDE.

  • Optionally JupyterLab for editing and running jupyter notebooks (alternatively, use the Binder buttons that enable running jupyter notebooks online)

Solution 2: Atom

At the core, Atom is a text editor, but it can be easily extended with many capacities for almost all popular programming languages.

Schedule (Winter 2021/22)

Every Wednesday morning on Campus in the WAREM CIP-Pool, starting from October/November 2021, through February 2022.

Learning Objectives

Students acquire basic and advanced skills in Python programming, git version control, data handling and geospatial analyses. The dedicated learner deepens the ability to think logically and translate work processes into structured, object-oriented algorithms. Through the application of open-access software and git, students will be able to effectively support any team in the world and boost any project. The practice-oriented exercises transfer additional knowledge on how to leverage challenges in water resources management.

Integrated River Engineering and Sediment Management

About

This course is divided into two parts:

  1. River Engineering and Sediment Management, and

  2. Integrated Flood Protection Measures.

The materials provided here support the exercises in the Integrated Flood Protection Measures part, which encompasses socio-economic aspects of flood damage, calculation of floodwater depths, technical flood protection measures, and design and operation of retention basins, among other things.

Beyond the descriptions provided in documents along with the exercises, these descriptions are also made available here to facilitate online work that has gained a rapidly increasing importance due to recent events.

Requirements

Make sure to install (or have installed on any accessible computer) the following programs:

Online materials

The provided online material guides through the numerical simulation exercise with the ETH Zurich’s BASEMENT v.3. The guidance describes: