This course introduces numerical methods and modeling techniques used to solve practical problems within several engineering disciplines. The course provides insights and practical skills in algorithmic thinking and programming techniques.
Course description for study year 2023-2024. Please note that changes may occur.
In this course you will learn how to model complex problems. We use models to understand phenomena and then make better decisions, for example measures to reduce global warming, the spread of infectious diseases. Modeling essentially consists of three steps i) formulating the observed phenomenon in the form of a mathematical model ii) solving the model using appropriate techniques iii) comparing the solution of the model with measured data to check whether you have understood the processes. In the course, we will work with applied problems from various engineering disciplines. Examples of methods and models that can be lectured: numerical derivative, numerical integration, Monte Carlo and boot strapping methods, inverse methods, numerical solution of ordinary and partial differential equations, simulated annealing, lattice Boltzmann models, random walk models, box (compartment) models.
The course is based on the programming language Python. You will work in groups of up to three students, but you can also choose to work alone. The assignments will focus on teaching you how we can simplify observed phenomena, and then formulate the phenomena mathematically. You will examine the strengths and weaknesses of the model by comparing the solution of the models with observed data and with analytical solutions in special cases. We will teach you how to code efficiently in Python, both by creating functions and classes. You will also learn how to present the results in a report. After completing the course, you will have good prerequisites for carrying out a larger project assignment, such as a master's thesis.
Advanced knowledge of algorithms and algorithmic thinking, and apply it to formulate and solve discrete and continuous problems
Advanced knowledge in numerical analysis, in order to evaluate the constraints associated with the chosen solution method, including approximation errors
In depth knowledge of the basic numerical methods
Develop models of physical systems from biology, chemistry, flow in porous media, and geology
Test models against experimental data, and use data to constrain the model
Apply appropriate numerical methods to solve mathematical models
Develop own programs written in the program language Python
To write scientific reports
Visualize and presentation of results from numerical simulations
The use of computers to work more efficiently with large amounts of data
Portfolio assessment:The folder consists of four projects, the first is pass/fail and the last three count 1/3 of the total grade. There is no written or oral examination. If a student fails or wants to improve the grade, he or she has to take course again.
Students must have approved at least two mandatory assignments in order to get an assessment in the course.
There must be an early dialogue between the course coordinator, the student representative and the students. The purpose is feedback from the students for changes and adjustments in the course for the current semester.In addition, a digital course evaluation must be carried out at least every three years. Its purpose is to gather the students experiences with the course.