Diese Seite ist nur auf Englisch verfügbar, da die Unterrichtssprache Englisch ist und wir für diesen Studiengang keinen Deutschnachweis fordern.

Modules in Computational Science and Engineering

Required Modules

This table shows the situation for students who have started from winter term 2021/22.

Courses ECTS Module

Section A: Computer Science

Advanced Programming 5 IN1503
Parallel Programming 5 IN2147

Section C: Scientific Computing

Scientific Computing I 5 IN2005
Scientific Computing Lab 6 IN2182
Scientific Computing II 5 IN2141
Advanced Practical Course Computational Science and Engineering (see below) 10 IN2397
CSE Seminar Scientific Computing (see below) 5 IN2183 

Courses ECTS Module

Section A: Computer Science

Advanced Programming 5 IN1503
Parallel Programming 5 IN2147

Section B: Numerical Analysis

Numerical Programming I 8 MA3305
Numerical Programming II 8 MA3306
Parallel Numerics 5 IN2012

Section C: Scientific Computing

Scientific Computing I 5 IN2005
Scientific Computing Lab 6 IN2182
Scientific Computing II 5 IN2141
CSE Seminar Scientific Computing (see below) 5 IN2183 

Section C: Advanced Practical Course CSE

Please note that this module is only available for students who have started in the winter term 2021/22.

The advanced practical course (lab) is a mandatory module, where CSE students choose a lab course with a topic fitting for CSE. Students are then usually working in groups on a larger project. Such a lab course has 10 ECTS and teaches a large portion of practical and soft skills.

Below you will find a list of lab courses that may be used for the module "Advanced Practical Course CSE" (IN2397). Please note that the lab courses listed on this site may not be offered regularly and may be canceled or replaced. As is the case with all courses, you may not know if an internship will be offered until only a few weeks before the start of the semester. The following table is subject to change and only includes labs that have been accepted by the Examination Board for module IN2397.

Please keep in mind that you can only take lab courses offered for master’s students. Lab courses offered for bachelor’s students only cannot be taken as advanced practical courses for CSE.

Registration for practical courses typically follows the matching process. Read more about this under "Course registration".

Lab course Course ID term  
Scientific Computing - Computational Fluid Dynamics IN2186/IN4085 summer  
Modern Wave Propagation - Discontinuous Galerkin & Julia IN4280 summer  
Scientific Computing - High Performance Computing IN4230 winter  
Efficient Programming of Multicore Processors and Supercomputers IN4048 summer  
Experimental Evaluation of modern Computing Systems and Accelerators IN4294 winter/summer

Section C: CSE Seminar Scientific Computing

The seminar is a special type of module that differs from the usual lectures or lab courses. It involves the study of a selected topic under the individual guidance of a TUM researcher. Students are then usually asked to write a scientific report and give a presentation to the other participants in the seminar. The grade is often determined by both the report and the presentation.

Below is a list of seminars that can be used for the module "CSE Seminar Scientific Computing" (IN2183). The following table is subject to change and only includes seminars that have been accepted by the Examination Board for module IN2183. Please note that the seminars listed on this site may not be offered regularly, and that they may be canceled or replaced. As is the case with all courses, you will only find out a few weeks before the start of the semester whether a seminar will be offered or not.

To find out whether a particular seminar is offered in a particular semester, please check the website of the respective chair (for example, for the chair of scientific computing I05, see https://www.cs.cit.tum.de/sccs/lehre/)

Please keep in mind that you can only take seminars offered to master’s students. Seminars offered for bachelor’s students only (e.g. "Proseminar") cannot be taken as CSE seminars. Make sure to check the corresponding entry since some seminars might occasionally be offered for Bachelor students in a specific semester depending on the demands for that particular semester.

Registration for seminar courses (with INxxxx course IDs) typically follow the matching process. Read more about this under "Course registration". For the other seminars, please inquire with the respective lecturer. Please also read the general information on seminars.

Seminar Course ID term
Advanced Topics in Quantum Computing IN2183 winter/summer
Case Studies: Scientific Computing MA4306 winter/summer
Code Generation and Innovative Programming Models IN4590 winter
Computational Aspects of Machine Learning IN2183 winter
Computational Imaging (not in SS23) IN4988 winter/summer
Computational Photonics and Nanoelectronics EI7775 winter/summer
Data Analytics and Intelligent Systems in Energy Informatics IN4725 winter/summer
Deep Learning for Medical Application IN4860 winter/summer
Deep Learning in Computer Graphics IN4858 winter
Deep Learning in Physics (not in SS23) IN4939 winter/summer
Efficient Inference and Large-Scale Machine Learning (not in SS23) IN4874 summer
Fundamentals of Wave Simulation - Solving Hyperbolic Systems of PDEs IN2183 winter
Modern Trends in High Performance Computing IN2183 summer
High Dimensional Methods in Scientific Computing IN2183 summer
Parallelisation of Physics Calculations on GPUs with CUDA PH1351 summer
Partitioned Fluid-Structure Interaction IN2183 winter
(Performance) Portable Programming of HPC Applications IN4472 summer
Recent Advances in 3D Computer Vision IN4780 winter/summer
Recent Trends in 3D Computer Vision and Deep Learning IN4826 summer

Shape Analysis and Applications in Computer Vision (not in SS23)

IN4848

winter/summer

Elective Modules Overview

To complete the CSE program, you must attend 49 ECTS of elective courses. The area of elective modules is split into 4 parts:

  • Computer Science (section A)
  • Applied Mathematics (section B)
  • Application areas of CSE (D catalogs)
  • Further electives (E catalogs)

At least 10 ECTS have to be earned from the section of computer science. From applied mathematics, you have to acquire at least 16 ECTS, and from the Application areas, at least 8 ECTS from a single catalog have to be achieved. The remaining (up to 15) ECTS can be filled with elective modules from any catalog.

In summary:

  • You must earn at least 49 ECTS in total from the electives following the rules below.
  • You must earn at least 10 ECTS from the section A electives.
  • You must earn at least 16 ECTS from the section B electives.
  • You must earn at least 8 ECTS from one D catalog.
  • Remaining ECTS can be earned from any section or catalog.

Please refer to the examples at the bottom of this website, if you are still unsure about these rules.

Section A: Elective Modules in Computer Science

In addition to the mandatory courses in Section A: Computer Science, some other computer science related courses must be completed. Depending on their personal focus, each student can choose the modules that interest them. All modules listed below are offered only in the winter semester. The year in the last column of the table below is just a recommendation, the modules can be taken at any time during the CSE studies.

From the modules in the following table, 10 ECTS have to be earned.

Courses ECTS Module Term Year

Computer Architecture and Networks
     OR
Advanced Computer Architecture

5
OR
6

IN2189 
     OR
IN2076
winter 1
Fundamental Algorithms 5 IN2157 winter 1/2
Patterns in Software Engineering 5 IN2081 winter 2
Visual Data Analytics 5 IN2026 winter 1/2

From the modules in the following table, 15 ECTS have to be earned.

Courses ECTS Module Term Year
Computer Architecture and Networks 5 IN2189 winter 1
Fundamental Algorithms 5 IN2157 winter 1/2
Patterns in Software Engineering 5 IN2081 winter 2
Visual Data Analytics 5 IN2026 winter 1/2
Programming of Supercomputers 5 IN2190 winter 2

Section B: Elective Modules in Applied Mathematics

Please note that this choice is only available for students who started from the winter term 2021/22 onwards. Students who started before this (i.e. until winter semester 2020/21), have to take all three lectures of applied mathematics (Numerical Programming 1&2 and Parallel Numerics).

All courses in applied mathematics are electives. Three courses are offered and two out of these courses must be taken, but all three courses can also be taken. Depending on their personal background and focus, each student can choose the modules that interest them. All modules take place once a year. The year in the last column of the table below is only a recommendation; modules may be taken at any point in the CSE program.

From the modules in the following table 16 ECTS have to be earned.

Courses ECTS Module Term Year
Numerical Programming 1 8 MA3305 winter 1
Numerical Programming 2 8 MA3306 summer 1
Numerical Algorithms for High Performance Computing 8 IN2398 winter 2

D and E catalogs

The available catalogs are listed in the drop-down menus below. D-catalogs typically correspond to specific applications of CSE. E-catalogs are typically focused on methods and techniques in CSE. At the bottom of this page you can find an example of a selection of electives.

New courses can be added to the catalogs upon request to the Examination Board (via coordinators@cse.tum.de). It is not possible to use seminars as elective courses. New elective courses must be worth at least 5 credits.

The following tables list all courses that have been approved by the Examination Board for the corresponding catalogs. Please note that some of the courses listed on this site may not be offered regularly, or they may be cancelled or replaced. Moreover, courses in the catalogs may be offered with slightly different hours/week or titles. We try to keep this list as up-to-date as possible.

Note that the "term" column indicates whether the particular course is usually offered in the summer and/or winter term.

Please also read our information on course registration.

The following catalogs (D1 to D6) are currently offered as D-catalogs. At least one (at most two) D-catalogs have to be chosen.

Course ECTS Module Term

D1 Computational Mechanics

Computational Contact and Interface Mechanics 3 MW2335 winter
Computational Material Modeling 1 6 BV330009 winter
Computational Mechanics for Car Body Design 3 BGU33011 winter
Explicit Finite Element Methods and Transient Analysis 3 BV330008 winter
Multi-Body simulation 3 MW0866 summer
Multidisciplinary Design Optimization 5 MW0085 summer
Multiscale Modeling 5 MW2359 summer
Optimization 6 BV320017 winter
Structural Dynamics 6 BV430008 summer
Structural Dynamics Computer Lab 4 MW2296 winter
The Finite Element Method for Fluid-Structure Interaction with Open-Source Software 5 BGU32024 summer (July)
Theory of Plates and Shells 6 BGU32021T2 winter/summer

D2 Computational Fluid Mechanics

An Introduction to Microfluidic Simulations 3 MW0642 summer
Biofluid Mechanics 5 MW0376 summer
Computational Fluid Dynamics (CFD) 6 BGU41028 summer
Computational Thermo-Fluid Dynamics 4 MW2134 winter
Finite Elements in Fluid Mechanics 3 MW2452 summer
Lattice Boltzmann Method 9 CIT4130009 summer
Numerical Methods for Conservation Laws 3 MW2337 winter
Particle-Simulation methods for Fluid Dynamics 3 MW0696 winter
The Finite Element Method for Fluid-Structure Interaction with Open-Source Software 5 BGU32024 summer (July)
Turbulent Flow Simulation on HPC-Systems 5 IN2311 winter

D3 Mathematics in Bioscience

Applications of Mathematical Biology 9 MA3602 summer
Case Studies Life Science Mathematics 7 MA5616 summer
Computational Neuroscience: A Lecture Series from Models to Applications 3 EI7646 summer
Mathematical Models in Biology 9 MA3601 winter
Protein Prediction I for Computer Scientists 8 IN2322 summer

D4 Computational Physics

Analysis, Modeling and Simulation of Communication Networks 6 EI7450 summer
Computational Astrophysics 5 PH2077 winter
Computational Materials Physics 5 PH2289 winter
Computational and Analytical Methods in Electromagnetics 6 EI73181 winter
Computational Methods in Many-Body Physics 10 PH2264 summer
Computational Plasma Physics 5 MA4304 summer
Computational Physics 2 5 PH2090 summer
Geometric Methods for Physics of Magnetized Plasmas 5 MA5333 winter
Image Processing in Physics 5 PH2181 winter/summer
Mathematical Introduction to Quantum Information Processing 9 MA5057 summer
Molecular Dynamics Simulations 5 PH2019 summer
QST Theory: Quantum Information 10 PH1010 winter

D5 Computational Electronics

Computational Methods in Nanoelectronics 5 EI7319 winter
Computational and Analytical Methods in Electromagnetics 6 EI73181 winter
Computational Photonics Lab 5 EI7469 winter
Laboratory on "Simulation and Characterization of Microdevices" 6 EI7202 winter/summer
Nanoelectric Devices Lab 5 EI72731 winter/summer
Nano-Optoelectronic Joint Simulation/Experimental Lab 6 EI7482 summer
Practical Course Design and Simulation of Nanodevices 5 EI7274 winter/summer
Scientific Computing in Circuit Simulation 5 IN2306 summer
Simulation of Quantum Devices 5 EI70760 summer
Quantum Computers and Quantum Secure Communications 5 EI71073 summer

D6 Computational Chemistry

Advanced Electronic Structure 5 CH3333 winter
Molecular Dynamics Simulations 5 PH2019 summer

The following courses are offered within the E section. The division into catalogs (E1 to E6) is only relevant for students who started before the winter semester 2021/22.

Course ECTS Module Term

E1 Algorithms in Scientific Computing

Algorithms for Scientific Computing 1 8 IN2001 summer
Algorithmic Game Theory 5 IN2239 summer
Introduction to Quantum Computing 5 IN2381 winter
Quantum Entrepreneurship Laboratory 6 PH8128 winter/summer

E2 Finite Elements

Advanced Finite Element Methods 3 BV010010 summer
Advanced Finite Element Methods 5 MA4303 winter/summer
Boundary Element Method 3 BV020007 winter
Discontinuous Galerkin Methods for Numerical Simulation 3 MW2453 summer
Finite Elements 5 MW0612 winter
Finite Element Method (FEM) in Aerospace Structures 4 MW1268 winter/summer
Finite Element Methods 1 6 BV320016 winter
Finite Elements Practical Course 4 MW0286 summer
Introduction to Functional Analysis 5 MA9304 winter
Isogeometric Elements 6 BV440005 summer
Isogeometric Structural Analysis and Design 3 BV320007 summer
Nonlinear Finite Element Methods 6 BV320009 summer
Numerical Methods for Partial Differential Equations 9 MA3303 winter

E3 Parallel and Distributed Computing, High Performance Computing

Advanced Computer Architecture 6 IN2076 winter
Advanced Parallel Computing and Solvers for Large Problems in Engineering 5 MW1746 summer
Advanced Seminar Course Code Generation Techniques and Innovative Programming Models 5 IN4590 winter
Cloud Computing 4 IN2073 winter
Distributed Systems 5 IN2259 summer
High Performance Computing - Algorithms and Applications IN2252 winter
Parallel Program Engineering 5 IN2310 winter
Parallel Programming Systems 3 IN2365 winter

E4 Vision and Visualization

Augmented Reality 6 IN2018 summer
Basic Mathematical Methods for Imaging and Visualization 5 IN2124 winter
Computer Aided Medical Procedures 6 IN2021 winter
Computer Aided Medical Procedures 2 5 IN2022 summer
Computer Vision I: Variational Methods 8 IN2246 winter
Convex Optimization for Computer Vision 6 IN2330 summer
Geometry Processing 6 IN2297 summer
Image Processing in Physics 5 PH2181 winter
Image Synthesis 5 IN2015 winter
Probabilistic Graphical Models in Computer Vision 5 IN2329 summer

E5 Probabilistic Methods in Computational Science and Engineering

Algorithms of Uncertainty Quantification 5 IN2345 summer
Applied Regression 5 MA4401 winter
Computational Statistics 5 MA3402 summer
Generalized Linear Models 9 MA3403 winter

E6 Data Driven Simulation and Computing

Advanced Deep Learning for Physics 6 IN2298 summer
Data Mining Lab Course 10 IN4176 winter
Information Retrieval in High Dimensional Data 6 EI7223 winter
Introduction to Deep Learning 6 IN2346 summer
Machine Learning 8 IN2064 winter
Machine Learning for Graphs and Sequential Data 5 IN2323 summer
Machine Learning in Crowd Modeling & Simulation 10 IN4267 winter/summer
Probabilistic Techniques and Algorithms in Data Analysis 6 MA4803 winter
TUM Data Innovation Lab 10 MA8113 winter/summer

Example for electives calculations

This page shows the situation for students who started from the winter term 2021/22 onwards.

Please note: As a TUM student you can attend as many TUM courses as you want. However, only the credits (and grades) from the electives complying with CSE regulations will count for your CSE curriculum.

Assume you attend the following courses and pass the respective exams: 

Section/Catalog Course Credits
A Computer Architecture and Networks 5
B Numerical Programming 1 8
B Numerical Programming 2 8
B Numerical Algorithms for High Performance Computing 8
D4 Computational Physics 2 5
D4 Computational Plasma Physics 5
D5 Computational Methods in Nanoelectronics 5
E4 Image Synthesis 5
E5 Advanced Mathematical Biology 9
E6 Data Mining Lab Course 10


This selection of elective courses has 68 ECTS (>= 49) but it is not complete, as there are still credits from Section A missing (there is only one course in the example). Once another Section A course is completed (e.g., Visual Data Analytics), the Section B requirement can be fulfilled with any two of the three courses (e.g., Numerical Programming 1 & 2). As for Section D, only the selection from D4 (Computational Physics 2 + Computational Plasma Physics) is valid, as there are not enough ECTS in D5. Any selection of the rest of the courses can be used to fill in: the remaining B course, the D5 course, or any of the E courses. For example, Numerical Algorithms for High Performance Computing and Advanced Mathematical Biology could be included, such that the the D5, E4, and E6 courses appear in your transcript only as free subjects and the grades will not be reflected on your GPA.

Please note that you have to obtain at least 8 ECTS in a single D catalog in your transcript. Once you meet this criterion, you can choose subjects from other catalogs for the remaining (up to 15) ECTS. Some examples, assuming the 26 ECTS from Sections A and B are completed (23 ECTS are missing):

  • the combination D4 (5+5 >= 8), E4 (5), and E6 (10) is valid.
  • the combination B (8), D4 (5+5 >= 8), and E4 (5) is valid.
  • the combination B (8), D4 (5+5 >= 8), and D5 (5) is valid. (Obs: E courses can be completely avoided!)
  • the combination D4 (5), D5 (5), E4 (5) and E5 (9 >= 8) is not valid. You have to obtain 8 ECTS in a single D catalog.
  • the combination E4 (5), E5(9 >= 8) and E6 (10) is not valid. You have to obtain 8 ECTS in a single D catalog.
  • the combination D4 (5+5 >= 8), E4 (5), E5 (9) and E10 (10) is not valid. You cannot add further courses as soon as you have reached the 23 ECTS limit (at least one course needs to be removed).