Modeling and Computational Engineering (MOD510)
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 2024-2025
Course code
MOD510
Version
1
Credits (ECTS)
10
Semester tution start
Autumn
Number of semesters
1
Exam semester
Autumn
Language of instruction
English
Content
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.
Learning outcome
Knowledge:
- 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
Skills:
- 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
General Competence:
- 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
Required prerequisite knowledge
Recommended prerequisites
Exam
Form of assessment | Weight | Duration | Marks | Aid |
---|---|---|---|---|
Folder evaluation | 1/1 | 1 Semesters | Letter grades |
The portfolio consists of four project reports. The first project report count for 1/10 of the grade, and the following three project reports count for 3/10 of the grade. The portfolio is not graded until all work has been submitted and the portfolio as a whole is graded.Resit options are not offered on the portfolio. Students who fail can complete portfolio assessment the next time the course is regular teaching.
Course teacher(s)
Course coordinator:
Aksel HiorthHead of Department:
Alejandro Escalona VarelaMethod of work
4 hours of teaching per week
8 hours of lab exercises per week (not compulsory)
8-16 hours of self-study
Course participation is strongly recommended as training in computer skills is required